ddk750_dvi.h (1968B)
1/* SPDX-License-Identifier: GPL-2.0 */ 2#ifndef DDK750_DVI_H__ 3#define DDK750_DVI_H__ 4 5/* dvi chip stuffs structros */ 6 7typedef long (*PFN_DVICTRL_INIT)(unsigned char edge_select, 8 unsigned char bus_select, 9 unsigned char dual_edge_clk_select, 10 unsigned char hsync_enable, 11 unsigned char vsync_enable, 12 unsigned char deskew_enable, 13 unsigned char deskew_setting, 14 unsigned char continuous_sync_enable, 15 unsigned char pll_filter_enable, 16 unsigned char pll_filter_value); 17 18typedef void (*PFN_DVICTRL_RESETCHIP)(void); 19typedef char* (*PFN_DVICTRL_GETCHIPSTRING)(void); 20typedef unsigned short (*PFN_DVICTRL_GETVENDORID)(void); 21typedef unsigned short (*PFN_DVICTRL_GETDEVICEID)(void); 22typedef void (*PFN_DVICTRL_SETPOWER)(unsigned char power_up); 23typedef void (*PFN_DVICTRL_HOTPLUGDETECTION)(unsigned char enable_hot_plug); 24typedef unsigned char (*PFN_DVICTRL_ISCONNECTED)(void); 25typedef unsigned char (*PFN_DVICTRL_CHECKINTERRUPT)(void); 26typedef void (*PFN_DVICTRL_CLEARINTERRUPT)(void); 27 28/* Structure to hold all the function pointer to the DVI Controller. */ 29struct dvi_ctrl_device { 30 PFN_DVICTRL_INIT init; 31 PFN_DVICTRL_RESETCHIP reset_chip; 32 PFN_DVICTRL_GETCHIPSTRING get_chip_string; 33 PFN_DVICTRL_GETVENDORID get_vendor_id; 34 PFN_DVICTRL_GETDEVICEID get_device_id; 35 PFN_DVICTRL_SETPOWER set_power; 36 PFN_DVICTRL_HOTPLUGDETECTION enable_hot_plug_detection; 37 PFN_DVICTRL_ISCONNECTED is_connected; 38 PFN_DVICTRL_CHECKINTERRUPT check_interrupt; 39 PFN_DVICTRL_CLEARINTERRUPT clear_interrupt; 40}; 41 42#define DVI_CTRL_SII164 43 44/* dvi functions prototype */ 45int dvi_init(unsigned char edge_select, 46 unsigned char bus_select, 47 unsigned char dual_edge_clk_select, 48 unsigned char hsync_enable, 49 unsigned char vsync_enable, 50 unsigned char deskew_enable, 51 unsigned char deskew_setting, 52 unsigned char continuous_sync_enable, 53 unsigned char pll_filter_enable, 54 unsigned char pll_filter_value); 55 56#endif 57