181dee67eSSudip Mukherjee #ifndef DDK750_DVI_H__ 281dee67eSSudip Mukherjee #define DDK750_DVI_H__ 381dee67eSSudip Mukherjee 481dee67eSSudip Mukherjee /* dvi chip stuffs structros */ 581dee67eSSudip Mukherjee 681dee67eSSudip Mukherjee typedef long (*PFN_DVICTRL_INIT)( 781dee67eSSudip Mukherjee unsigned char edgeSelect, 881dee67eSSudip Mukherjee unsigned char busSelect, 981dee67eSSudip Mukherjee unsigned char dualEdgeClkSelect, 1081dee67eSSudip Mukherjee unsigned char hsyncEnable, 1181dee67eSSudip Mukherjee unsigned char vsyncEnable, 1281dee67eSSudip Mukherjee unsigned char deskewEnable, 1381dee67eSSudip Mukherjee unsigned char deskewSetting, 1481dee67eSSudip Mukherjee unsigned char continuousSyncEnable, 1581dee67eSSudip Mukherjee unsigned char pllFilterEnable, 1681dee67eSSudip Mukherjee unsigned char pllFilterValue); 17658373e5SNiranjan Dighe 1881dee67eSSudip Mukherjee typedef void (*PFN_DVICTRL_RESETCHIP)(void); 1981dee67eSSudip Mukherjee typedef char* (*PFN_DVICTRL_GETCHIPSTRING)(void); 2081dee67eSSudip Mukherjee typedef unsigned short (*PFN_DVICTRL_GETVENDORID)(void); 2181dee67eSSudip Mukherjee typedef unsigned short (*PFN_DVICTRL_GETDEVICEID)(void); 2281dee67eSSudip Mukherjee typedef void (*PFN_DVICTRL_SETPOWER)(unsigned char powerUp); 2381dee67eSSudip Mukherjee typedef void (*PFN_DVICTRL_HOTPLUGDETECTION)(unsigned char enableHotPlug); 2481dee67eSSudip Mukherjee typedef unsigned char (*PFN_DVICTRL_ISCONNECTED)(void); 2581dee67eSSudip Mukherjee typedef unsigned char (*PFN_DVICTRL_CHECKINTERRUPT)(void); 2681dee67eSSudip Mukherjee typedef void (*PFN_DVICTRL_CLEARINTERRUPT)(void); 2781dee67eSSudip Mukherjee 2881dee67eSSudip Mukherjee /* Structure to hold all the function pointer to the DVI Controller. */ 2981dee67eSSudip Mukherjee typedef struct _dvi_ctrl_device_t 3081dee67eSSudip Mukherjee { 3181dee67eSSudip Mukherjee PFN_DVICTRL_INIT pfnInit; 3281dee67eSSudip Mukherjee PFN_DVICTRL_RESETCHIP pfnResetChip; 3381dee67eSSudip Mukherjee PFN_DVICTRL_GETCHIPSTRING pfnGetChipString; 3481dee67eSSudip Mukherjee PFN_DVICTRL_GETVENDORID pfnGetVendorId; 3581dee67eSSudip Mukherjee PFN_DVICTRL_GETDEVICEID pfnGetDeviceId; 3681dee67eSSudip Mukherjee PFN_DVICTRL_SETPOWER pfnSetPower; 3781dee67eSSudip Mukherjee PFN_DVICTRL_HOTPLUGDETECTION pfnEnableHotPlugDetection; 3881dee67eSSudip Mukherjee PFN_DVICTRL_ISCONNECTED pfnIsConnected; 3981dee67eSSudip Mukherjee PFN_DVICTRL_CHECKINTERRUPT pfnCheckInterrupt; 4081dee67eSSudip Mukherjee PFN_DVICTRL_CLEARINTERRUPT pfnClearInterrupt; 4181dee67eSSudip Mukherjee } dvi_ctrl_device_t; 42658373e5SNiranjan Dighe 4381dee67eSSudip Mukherjee #define DVI_CTRL_SII164 4481dee67eSSudip Mukherjee 4581dee67eSSudip Mukherjee /* dvi functions prototype */ 4681dee67eSSudip Mukherjee int dviInit( 4781dee67eSSudip Mukherjee unsigned char edgeSelect, 4881dee67eSSudip Mukherjee unsigned char busSelect, 4981dee67eSSudip Mukherjee unsigned char dualEdgeClkSelect, 5081dee67eSSudip Mukherjee unsigned char hsyncEnable, 5181dee67eSSudip Mukherjee unsigned char vsyncEnable, 5281dee67eSSudip Mukherjee unsigned char deskewEnable, 5381dee67eSSudip Mukherjee unsigned char deskewSetting, 5481dee67eSSudip Mukherjee unsigned char continuousSyncEnable, 5581dee67eSSudip Mukherjee unsigned char pllFilterEnable, 5681dee67eSSudip Mukherjee unsigned char pllFilterValue 5781dee67eSSudip Mukherjee ); 5881dee67eSSudip Mukherjee 5981dee67eSSudip Mukherjee unsigned short dviGetVendorID(void); 6081dee67eSSudip Mukherjee unsigned short dviGetDeviceID(void); 6181dee67eSSudip Mukherjee 6281dee67eSSudip Mukherjee #endif 6381dee67eSSudip Mukherjee 64