80 lines · c
1/*2 * linux/drivers/video/kyro/kryo.h3 *4 * Copyright (C) 2002 STMicroelectronics5 * Copyright (C) 2004 Paul Mundt6 *7 * This file is subject to the terms and conditions of the GNU General Public8 * License. See the file COPYING in the main directory of this archive9 * for more details.10 */11 12#ifndef _KYRO_H13#define _KYRO_H14 15struct kyrofb_info {16 void __iomem *regbase;17 18 u32 palette[16];19 u32 HTot; /* Hor Total Time */20 u32 HFP; /* Hor Front Porch */21 u32 HST; /* Hor Sync Time */22 u32 HBP; /* Hor Back Porch */23 s32 HSP; /* Hor Sync Polarity */24 u32 VTot; /* Ver Total Time */25 u32 VFP; /* Ver Front Porch */26 u32 VST; /* Ver Sync Time */27 u32 VBP; /* Ver Back Porch */28 s32 VSP; /* Ver Sync Polarity */29 u32 XRES; /* X Resolution */30 u32 YRES; /* Y Resolution */31 u32 VFREQ; /* Ver Frequency */32 u32 PIXCLK; /* Pixel Clock */33 u32 HCLK; /* Hor Clock */34 35 /* Useful to hold depth here for Linux */36 u8 PIXDEPTH;37 38 int wc_cookie;39};40 41/*42 * benedict.gaster@superh.com43 * Added the follow IOCTLS for the creation of overlay services...44 */45#define KYRO_IOC_MAGIC 'k'46 47#define KYRO_IOCTL_OVERLAY_CREATE _IO(KYRO_IOC_MAGIC, 0)48#define KYRO_IOCTL_OVERLAY_VIEWPORT_SET _IO(KYRO_IOC_MAGIC, 1)49#define KYRO_IOCTL_SET_VIDEO_MODE _IO(KYRO_IOC_MAGIC, 2)50#define KYRO_IOCTL_UVSTRIDE _IO(KYRO_IOC_MAGIC, 3)51#define KYRO_IOCTL_OVERLAY_OFFSET _IO(KYRO_IOC_MAGIC, 4)52#define KYRO_IOCTL_STRIDE _IO(KYRO_IOC_MAGIC, 5)53 54/*55 * The follow 3 structures are used to pass data from user space into the kernel56 * for the creation of overlay surfaces and setting the video mode.57 */58typedef struct _OVERLAY_CREATE {59 u32 ulWidth;60 u32 ulHeight;61 int bLinear;62} overlay_create;63 64typedef struct _OVERLAY_VIEWPORT_SET {65 u32 xOrgin;66 u32 yOrgin;67 u32 xSize;68 u32 ySize;69} overlay_viewport_set;70 71typedef struct _SET_VIDEO_MODE {72 u32 ulWidth;73 u32 ulHeight;74 u32 ulScan;75 u8 displayDepth;76 int bLinear;77} set_video_mode;78 79#endif /* _KYRO_H */80