122851890Sopenharmony_ci/* 222851890Sopenharmony_ci * This header was generated from the Linux kernel headers by update_headers.py, 322851890Sopenharmony_ci * to provide necessary information from kernel to userspace, such as constants, 422851890Sopenharmony_ci * structures, and macros, and thus, contains no copyrightable information. 522851890Sopenharmony_ci */ 622851890Sopenharmony_ci#ifndef _UAPI_LINUX_SISFB_H_ 722851890Sopenharmony_ci#define _UAPI_LINUX_SISFB_H_ 822851890Sopenharmony_ci#include <linux/types.h> 922851890Sopenharmony_ci#include <asm/ioctl.h> 1022851890Sopenharmony_ci#define CRT2_DEFAULT 0x00000001 1122851890Sopenharmony_ci#define CRT2_LCD 0x00000002 1222851890Sopenharmony_ci#define CRT2_TV 0x00000004 1322851890Sopenharmony_ci#define CRT2_VGA 0x00000008 1422851890Sopenharmony_ci#define TV_NTSC 0x00000010 1522851890Sopenharmony_ci#define TV_PAL 0x00000020 1622851890Sopenharmony_ci#define TV_HIVISION 0x00000040 1722851890Sopenharmony_ci#define TV_YPBPR 0x00000080 1822851890Sopenharmony_ci#define TV_AVIDEO 0x00000100 1922851890Sopenharmony_ci#define TV_SVIDEO 0x00000200 2022851890Sopenharmony_ci#define TV_SCART 0x00000400 2122851890Sopenharmony_ci#define TV_PALM 0x00001000 2222851890Sopenharmony_ci#define TV_PALN 0x00002000 2322851890Sopenharmony_ci#define TV_NTSCJ 0x00001000 2422851890Sopenharmony_ci#define TV_CHSCART 0x00008000 2522851890Sopenharmony_ci#define TV_CHYPBPR525I 0x00010000 2622851890Sopenharmony_ci#define CRT1_VGA 0x00000000 2722851890Sopenharmony_ci#define CRT1_LCDA 0x00020000 2822851890Sopenharmony_ci#define VGA2_CONNECTED 0x00040000 2922851890Sopenharmony_ci#define VB_DISPTYPE_CRT1 0x00080000 3022851890Sopenharmony_ci#define VB_SINGLE_MODE 0x20000000 3122851890Sopenharmony_ci#define VB_MIRROR_MODE 0x40000000 3222851890Sopenharmony_ci#define VB_DUALVIEW_MODE 0x80000000 3322851890Sopenharmony_ci#define CRT2_ENABLE (CRT2_LCD | CRT2_TV | CRT2_VGA) 3422851890Sopenharmony_ci#define TV_STANDARD (TV_NTSC | TV_PAL | TV_PALM | TV_PALN | TV_NTSCJ) 3522851890Sopenharmony_ci#define TV_INTERFACE (TV_AVIDEO|TV_SVIDEO|TV_SCART|TV_HIVISION|TV_YPBPR|TV_CHSCART|TV_CHYPBPR525I) 3622851890Sopenharmony_ci#define TV_YPBPR525I TV_NTSC 3722851890Sopenharmony_ci#define TV_YPBPR525P TV_PAL 3822851890Sopenharmony_ci#define TV_YPBPR750P TV_PALM 3922851890Sopenharmony_ci#define TV_YPBPR1080I TV_PALN 4022851890Sopenharmony_ci#define TV_YPBPRALL (TV_YPBPR525I | TV_YPBPR525P | TV_YPBPR750P | TV_YPBPR1080I) 4122851890Sopenharmony_ci#define VB_DISPTYPE_DISP2 CRT2_ENABLE 4222851890Sopenharmony_ci#define VB_DISPTYPE_CRT2 CRT2_ENABLE 4322851890Sopenharmony_ci#define VB_DISPTYPE_DISP1 VB_DISPTYPE_CRT1 4422851890Sopenharmony_ci#define VB_DISPMODE_SINGLE VB_SINGLE_MODE 4522851890Sopenharmony_ci#define VB_DISPMODE_MIRROR VB_MIRROR_MODE 4622851890Sopenharmony_ci#define VB_DISPMODE_DUAL VB_DUALVIEW_MODE 4722851890Sopenharmony_ci#define VB_DISPLAY_MODE (SINGLE_MODE | MIRROR_MODE | DUALVIEW_MODE) 4822851890Sopenharmony_cistruct sisfb_info { 4922851890Sopenharmony_ci __u32 sisfb_id; 5022851890Sopenharmony_ci#ifndef SISFB_ID 5122851890Sopenharmony_ci#define SISFB_ID 0x53495346 5222851890Sopenharmony_ci#endif 5322851890Sopenharmony_ci __u32 chip_id; 5422851890Sopenharmony_ci __u32 memory; 5522851890Sopenharmony_ci __u32 heapstart; 5622851890Sopenharmony_ci __u8 fbvidmode; 5722851890Sopenharmony_ci __u8 sisfb_version; 5822851890Sopenharmony_ci __u8 sisfb_revision; 5922851890Sopenharmony_ci __u8 sisfb_patchlevel; 6022851890Sopenharmony_ci __u8 sisfb_caps; 6122851890Sopenharmony_ci __u32 sisfb_tqlen; 6222851890Sopenharmony_ci __u32 sisfb_pcibus; 6322851890Sopenharmony_ci __u32 sisfb_pcislot; 6422851890Sopenharmony_ci __u32 sisfb_pcifunc; 6522851890Sopenharmony_ci __u8 sisfb_lcdpdc; 6622851890Sopenharmony_ci __u8 sisfb_lcda; 6722851890Sopenharmony_ci __u32 sisfb_vbflags; 6822851890Sopenharmony_ci __u32 sisfb_currentvbflags; 6922851890Sopenharmony_ci __u32 sisfb_scalelcd; 7022851890Sopenharmony_ci __u32 sisfb_specialtiming; 7122851890Sopenharmony_ci __u8 sisfb_haveemi; 7222851890Sopenharmony_ci __u8 sisfb_emi30,sisfb_emi31,sisfb_emi32,sisfb_emi33; 7322851890Sopenharmony_ci __u8 sisfb_haveemilcd; 7422851890Sopenharmony_ci __u8 sisfb_lcdpdca; 7522851890Sopenharmony_ci __u16 sisfb_tvxpos, sisfb_tvypos; 7622851890Sopenharmony_ci __u32 sisfb_heapsize; 7722851890Sopenharmony_ci __u32 sisfb_videooffset; 7822851890Sopenharmony_ci __u32 sisfb_curfstn; 7922851890Sopenharmony_ci __u32 sisfb_curdstn; 8022851890Sopenharmony_ci __u16 sisfb_pci_vendor; 8122851890Sopenharmony_ci __u32 sisfb_vbflags2; 8222851890Sopenharmony_ci __u8 sisfb_can_post; 8322851890Sopenharmony_ci __u8 sisfb_card_posted; 8422851890Sopenharmony_ci __u8 sisfb_was_boot_device; 8522851890Sopenharmony_ci __u8 reserved[183]; 8622851890Sopenharmony_ci}; 8722851890Sopenharmony_ci#define SISFB_CMD_GETVBFLAGS 0x55AA0001 8822851890Sopenharmony_ci#define SISFB_CMD_SWITCHCRT1 0x55AA0010 8922851890Sopenharmony_ci#define SISFB_CMD_ERR_OK 0x80000000 9022851890Sopenharmony_ci#define SISFB_CMD_ERR_LOCKED 0x80000001 9122851890Sopenharmony_ci#define SISFB_CMD_ERR_EARLY 0x80000002 9222851890Sopenharmony_ci#define SISFB_CMD_ERR_NOVB 0x80000003 9322851890Sopenharmony_ci#define SISFB_CMD_ERR_NOCRT2 0x80000004 9422851890Sopenharmony_ci#define SISFB_CMD_ERR_UNKNOWN 0x8000ffff 9522851890Sopenharmony_ci#define SISFB_CMD_ERR_OTHER 0x80010000 9622851890Sopenharmony_cistruct sisfb_cmd { 9722851890Sopenharmony_ci __u32 sisfb_cmd; 9822851890Sopenharmony_ci __u32 sisfb_arg[16]; 9922851890Sopenharmony_ci __u32 sisfb_result[4]; 10022851890Sopenharmony_ci}; 10122851890Sopenharmony_ci#define SISFB_GET_INFO_SIZE _IOR(0xF3,0x00,__u32) 10222851890Sopenharmony_ci#define SISFB_GET_INFO _IOR(0xF3,0x01,struct sisfb_info) 10322851890Sopenharmony_ci#define SISFB_GET_VBRSTATUS _IOR(0xF3,0x02,__u32) 10422851890Sopenharmony_ci#define SISFB_GET_AUTOMAXIMIZE _IOR(0xF3,0x03,__u32) 10522851890Sopenharmony_ci#define SISFB_SET_AUTOMAXIMIZE _IOW(0xF3,0x03,__u32) 10622851890Sopenharmony_ci#define SISFB_GET_TVPOSOFFSET _IOR(0xF3,0x04,__u32) 10722851890Sopenharmony_ci#define SISFB_SET_TVPOSOFFSET _IOW(0xF3,0x04,__u32) 10822851890Sopenharmony_ci#define SISFB_COMMAND _IOWR(0xF3,0x05,struct sisfb_cmd) 10922851890Sopenharmony_ci#define SISFB_SET_LOCK _IOW(0xF3,0x06,__u32) 11022851890Sopenharmony_ci#define SISFB_GET_INFO_OLD _IOR('n',0xF8,__u32) 11122851890Sopenharmony_ci#define SISFB_GET_VBRSTATUS_OLD _IOR('n',0xF9,__u32) 11222851890Sopenharmony_ci#define SISFB_GET_AUTOMAXIMIZE_OLD _IOR('n',0xFA,__u32) 11322851890Sopenharmony_ci#define SISFB_SET_AUTOMAXIMIZE_OLD _IOW('n',0xFA,__u32) 11422851890Sopenharmony_cistruct sis_memreq { 11522851890Sopenharmony_ci __u32 offset; 11622851890Sopenharmony_ci __u32 size; 11722851890Sopenharmony_ci}; 11822851890Sopenharmony_ci#endif 119