]> rtime.felk.cvut.cz Git - sojka/nv-tegra/linux-3.10.git/blobdiff - drivers/video/tegra/dc/dc_priv_defs.h
video: tegra: dc: track cursor state
[sojka/nv-tegra/linux-3.10.git] / drivers / video / tegra / dc / dc_priv_defs.h
index d11457b886a8e05f4bb17b55c11a29d614a61d3f..83eb84d549d2e066e4817d3a9096c86091144935 100644 (file)
@@ -124,6 +124,19 @@ struct tegra_dc_shift_clk_div {
 
 struct tegra_dc_nvsr_data;
 
+enum tegra_dc_cursor_size {
+       TEGRA_DC_CURSOR_SIZE_32X32 = 0,
+       TEGRA_DC_CURSOR_SIZE_64X64 = 1,
+       TEGRA_DC_CURSOR_SIZE_128X128 = 2,
+       TEGRA_DC_CURSOR_SIZE_256X256 = 3,
+};
+
+enum tegra_dc_cursor_format {
+       TEGRA_DC_CURSOR_FORMAT_2BIT_LEGACY = 0,
+       TEGRA_DC_CURSOR_FORMAT_RGBA_NON_PREMULT_ALPHA = 1,
+       TEGRA_DC_CURSOR_FORMAT_RGBA_PREMULT_ALPHA = 3,
+};
+
 struct tegra_dc {
        struct platform_device          *ndev;
        struct tegra_dc_platform_data   *pdata;
@@ -249,19 +262,18 @@ struct tegra_dc {
        struct tegra_dc_nvsr_data *nvsr;
 
        bool    disp_active_dirty;
-};
 
-enum tegra_dc_cursor_size {
-       TEGRA_DC_CURSOR_SIZE_32X32 = 0,
-       TEGRA_DC_CURSOR_SIZE_64X64 = 1,
-       TEGRA_DC_CURSOR_SIZE_128X128 = 2,
-       TEGRA_DC_CURSOR_SIZE_256X256 = 3,
+       struct tegra_dc_cursor {
+               bool dirty;
+               bool enabled;
+               dma_addr_t phys_addr;
+               u32 fg;
+               u32 bg;
+               unsigned clip_win;
+               int x;
+               int y;
+               enum tegra_dc_cursor_size size;
+               enum tegra_dc_cursor_format format;
+       } cursor;
 };
-
-enum tegra_dc_cursor_format {
-       TEGRA_DC_CURSOR_FORMAT_2BIT_LEGACY = 0,
-       TEGRA_DC_CURSOR_FORMAT_RGBA_NON_PREMULT_ALPHA = 1,
-       TEGRA_DC_CURSOR_FORMAT_RGBA_PREMULT_ALPHA = 3,
-};
-
 #endif