Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
[pandora-kernel.git] / include / video / mbxfb.h
index 20b9002..ea18961 100644 (file)
@@ -29,18 +29,18 @@ struct mbxfb_platform_data {
 };
 
 /* planar */
-#define MBXFB_FMT_YUV12                0
+#define MBXFB_FMT_YUV16                0
+#define MBXFB_FMT_YUV12                1
 
 /* packed */
-#define MBXFB_FMT_UY0VY1       1
-#define MBXFB_FMT_VY0UY1       2
-#define MBXFB_FMT_Y0UY1V       3
-#define MBXFB_FMT_Y0VY1U       4
+#define MBXFB_FMT_UY0VY1       2
+#define MBXFB_FMT_VY0UY1       3
+#define MBXFB_FMT_Y0UY1V       4
+#define MBXFB_FMT_Y0VY1U       5
 struct mbxfb_overlaySetup {
        __u32 enable;
        __u32 x, y;
        __u32 width, height;
-       __u32 alpha;
        __u32 fmt;
        __u32 mem_offset;
        __u32 scaled_width;
@@ -54,6 +54,45 @@ struct mbxfb_overlaySetup {
        __u16 UV_stride;
 };
 
-#define MBXFB_IOCX_OVERLAY     _IOWR(0xF4, 0x00,struct mbxfb_overlaySetup)
+#define MBXFB_ALPHABLEND_NONE          0
+#define MBXFB_ALPHABLEND_GLOBAL                1
+#define MBXFB_ALPHABLEND_PIXEL         2
+
+#define MBXFB_COLORKEY_DISABLED                0
+#define MBXFB_COLORKEY_PREVIOUS                1
+#define MBXFB_COLORKEY_CURRENT         2
+struct mbxfb_alphaCtl {
+       __u8 overlay_blend_mode;
+       __u8 overlay_colorkey_mode;
+       __u8 overlay_global_alpha;
+       __u32 overlay_colorkey;
+       __u32 overlay_colorkey_mask;
+
+       __u8 graphics_blend_mode;
+       __u8 graphics_colorkey_mode;
+       __u8 graphics_global_alpha;
+       __u32 graphics_colorkey;
+       __u32 graphics_colorkey_mask;
+};
+
+#define MBXFB_PLANE_GRAPHICS   0
+#define MBXFB_PLANE_VIDEO      1
+struct mbxfb_planeorder {
+       __u8 bottom;
+       __u8 top;
+};
+
+struct mbxfb_reg {
+       __u32 addr;     /* offset from 0x03fe 0000 */
+       __u32 val;              /* value */
+       __u32 mask;             /* which bits to touch (for write) */
+};
+
+#define MBXFB_IOCX_OVERLAY             _IOWR(0xF4, 0x00,struct mbxfb_overlaySetup)
+#define MBXFB_IOCG_ALPHA               _IOR(0xF4, 0x01,struct mbxfb_alphaCtl)
+#define MBXFB_IOCS_ALPHA               _IOW(0xF4, 0x02,struct mbxfb_alphaCtl)
+#define MBXFB_IOCS_PLANEORDER  _IOR(0xF4, 0x03,struct mbxfb_planeorder)
+#define MBXFB_IOCS_REG                 _IOW(0xF4, 0x04,struct mbxfb_reg)
+#define MBXFB_IOCX_REG                 _IOWR(0xF4, 0x05,struct mbxfb_reg)
 
 #endif /* __MBX_FB_H */