#ifndef TEGRA_HUB_H
#define TEGRA_HUB_H …
#include <drm/drm_plane.h>
#include "plane.h"
struct tegra_dc;
struct tegra_windowgroup { … };
struct tegra_shared_plane { … };
static inline struct tegra_shared_plane *
to_tegra_shared_plane(struct drm_plane *plane)
{ … }
struct tegra_display_hub_soc { … };
struct tegra_display_hub { … };
static inline struct tegra_display_hub *
to_tegra_display_hub(struct host1x_client *client)
{ … }
struct tegra_display_hub_state { … };
static inline struct tegra_display_hub_state *
to_tegra_display_hub_state(struct drm_private_state *priv)
{ … }
struct tegra_plane;
int tegra_display_hub_prepare(struct tegra_display_hub *hub);
void tegra_display_hub_cleanup(struct tegra_display_hub *hub);
struct drm_plane *tegra_shared_plane_create(struct drm_device *drm,
struct tegra_dc *dc,
unsigned int wgrp,
unsigned int index);
int tegra_display_hub_atomic_check(struct drm_device *drm,
struct drm_atomic_state *state);
void tegra_display_hub_atomic_commit(struct drm_device *drm,
struct drm_atomic_state *state);
#define DC_CMD_IHUB_COMMON_MISC_CTL …
#define LATENCY_EVENT …
#define DC_DISP_IHUB_COMMON_DISPLAY_FETCH_METER …
#define CURS_SLOTS(x) …
#define WGRP_SLOTS(x) …
#endif