7069
|
1 #ifndef __GTF_H
|
|
2 #define __GTF_H
|
|
3
|
9380
|
4 #include "osdep/vbelib.h"
|
7069
|
5
|
|
6 #define GTF_VF 0
|
|
7 #define GTF_HF 1
|
|
8 #define GTF_PF 2
|
|
9
|
|
10
|
|
11 typedef struct {
|
|
12 double Vsync_need; /* Number of lines for vert sync (default 3) */
|
|
13 double min_Vsync_BP; /* Minimum vertical sync + back porch (us) (default 550)*/
|
|
14 double min_front_porch; /* Minimum front porch in lines (default 1) */
|
|
15 double char_cell_granularity; /* Character cell granularity in pixels (default 8) */
|
|
16 double margin_width; /* Top/ bottom MARGIN size as % of height (%) (default 1.8) */
|
|
17 double sync_width; /* Sync width percent of line period ( default 8) */
|
|
18 double c; /* Blanking formula offset (default 40)*/
|
|
19 double j; /* Blanking formula scaling factor weight (default 20)*/
|
|
20 double k; /* Blanking formula scaling factor (default 128)*/
|
|
21 double m; /* Blanking formula gradient (default 600)*/
|
|
22 } GTF_constants;
|
|
23
|
|
24 //#ifndef __VESA_VBELIB_INCLUDED__
|
|
25 // struct VesaCRTCInfoBlock {
|
|
26 // unsigned short hTotal; /* Horizontal total in pixels */
|
|
27 // unsigned short hSyncStart; /* Horizontal sync start in pixels */
|
|
28 // unsigned short hSyncEnd; /* Horizontal sync end in pixels */
|
|
29 // unsigned short vTotal; /* Vertical total in lines */
|
|
30 // unsigned short vSyncStart; /* Vertical sync start in lines */
|
|
31 // unsigned short vSyncEnd; /* Vertical sync end in lines */
|
|
32 // unsigned char Flags; /* Flags (Interlaced, Double Scan etc) */
|
|
33 // unsigned long PixelClock; /* Pixel clock in units of Hz */
|
|
34 // unsigned short RefreshRate;/* Refresh rate in units of 0.01 Hz*/
|
|
35 // unsigned char Reserved[40];/* remainder of CRTCInfoBlock*/
|
|
36 //}__attribute__ ((packed));
|
|
37
|
|
38 //#define VESA_CRTC_DOUBLESCAN 0x01
|
|
39 //#define VESA_CRTC_INTERLACED 0x02
|
|
40 //#define VESA_CRTC_HSYNC_NEG 0x04
|
|
41 //#define VESA_CRTC_VSYNC_NEG 0x08
|
|
42
|
|
43 //#endif
|
|
44
|
|
45 void GTF_calcTimings(double X,double Y,double freq, int type,
|
|
46 int want_margins, int want_interlace,struct VesaCRTCInfoBlock *result);
|
|
47
|
|
48 #endif
|