xref: /haiku/src/add-ons/accelerants/nvidia/engine/nv_globals.h (revision a65f6a2308b75ed6e9f178e13442f00fa81f4098)
16f1ef82cSshatty extern int fd;
26f1ef82cSshatty extern shared_info *si;
36f1ef82cSshatty extern area_id shared_info_area;
48e02d400SRudolf Cornelissen extern area_id dma_cmd_buf_area;
56f1ef82cSshatty extern area_id regs_area;
66f1ef82cSshatty extern vuint32 *regs;
76f1ef82cSshatty extern display_mode *my_mode_list;
86f1ef82cSshatty extern area_id my_mode_list_area;
96f1ef82cSshatty extern int accelerantIsClone;
106f1ef82cSshatty 
116f1ef82cSshatty extern nv_get_set_pci nv_pci_access;
12abbf0913SRudolf Cornelissen extern nv_in_out_isa nv_isa_access;
130669fe20SRudolf Cornelissen 
14155a2ad0SRudolf Cornelissen typedef status_t (*crtc_interrupt_enable)(bool);
15155a2ad0SRudolf Cornelissen typedef status_t (*crtc_update_fifo)(void);
160669fe20SRudolf Cornelissen typedef status_t (*crtc_validate_timing)(uint16*, uint16*, uint16*, uint16*, uint16*, uint16*, uint16*, uint16*);
170669fe20SRudolf Cornelissen typedef status_t (*crtc_set_timing)(display_mode);
180669fe20SRudolf Cornelissen typedef status_t (*crtc_depth)(int);
194022652cSRudolf Cornelissen typedef status_t (*crtc_dpms)(bool, bool, bool, bool);
200669fe20SRudolf Cornelissen typedef status_t (*crtc_set_display_pitch)(void);
210669fe20SRudolf Cornelissen typedef status_t (*crtc_set_display_start)(uint32, uint8);
220669fe20SRudolf Cornelissen typedef status_t (*crtc_cursor_init)(void);
230669fe20SRudolf Cornelissen typedef status_t (*crtc_cursor_show)(void);
240669fe20SRudolf Cornelissen typedef status_t (*crtc_cursor_hide)(void);
250669fe20SRudolf Cornelissen typedef status_t (*crtc_cursor_define)(uint8*, uint8*);
260669fe20SRudolf Cornelissen typedef status_t (*crtc_cursor_position)(uint16, uint16);
27c0ebc619SRudolf Cornelissen typedef status_t (*crtc_stop_tvout)(void);
28c0ebc619SRudolf Cornelissen typedef status_t (*crtc_start_tvout)(void);
290669fe20SRudolf Cornelissen 
3030f76422SRudolf Cornelissen typedef status_t (*dac_mode)(int, float);
3130f76422SRudolf Cornelissen typedef status_t (*dac_palette)(uint8[256], uint8[256], uint8[256]);
3230f76422SRudolf Cornelissen typedef status_t (*dac_set_pix_pll)(display_mode);
3330f76422SRudolf Cornelissen typedef status_t (*dac_pix_pll_find)(display_mode, float*, uint8*, uint8*, uint8*, uint8);
3430f76422SRudolf Cornelissen 
35*a65f6a23SMurai Takashi extern crtc_interrupt_enable	head1_interrupt_enable;
36*a65f6a23SMurai Takashi extern crtc_update_fifo		head1_update_fifo;
37*a65f6a23SMurai Takashi extern crtc_validate_timing 	head1_validate_timing;
38*a65f6a23SMurai Takashi extern crtc_set_timing 		head1_set_timing;
39*a65f6a23SMurai Takashi extern crtc_depth				head1_depth;
40*a65f6a23SMurai Takashi extern crtc_dpms				head1_dpms;
41*a65f6a23SMurai Takashi extern crtc_set_display_pitch	head1_set_display_pitch;
42*a65f6a23SMurai Takashi extern crtc_set_display_start	head1_set_display_start;
43*a65f6a23SMurai Takashi extern crtc_cursor_init		head1_cursor_init;
44*a65f6a23SMurai Takashi extern crtc_cursor_show		head1_cursor_show;
45*a65f6a23SMurai Takashi extern crtc_cursor_hide		head1_cursor_hide;
46*a65f6a23SMurai Takashi extern crtc_cursor_define		head1_cursor_define;
47*a65f6a23SMurai Takashi extern crtc_cursor_position	head1_cursor_position;
48*a65f6a23SMurai Takashi extern crtc_stop_tvout			head1_stop_tvout;
49*a65f6a23SMurai Takashi extern crtc_start_tvout		head1_start_tvout;
500669fe20SRudolf Cornelissen 
51*a65f6a23SMurai Takashi extern crtc_interrupt_enable	head2_interrupt_enable;
52*a65f6a23SMurai Takashi extern crtc_update_fifo		head2_update_fifo;
53*a65f6a23SMurai Takashi extern crtc_validate_timing	head2_validate_timing;
54*a65f6a23SMurai Takashi extern crtc_set_timing			head2_set_timing;
55*a65f6a23SMurai Takashi extern crtc_depth				head2_depth;
56*a65f6a23SMurai Takashi extern crtc_dpms				head2_dpms;
57*a65f6a23SMurai Takashi extern crtc_set_display_pitch	head2_set_display_pitch;
58*a65f6a23SMurai Takashi extern crtc_set_display_start	head2_set_display_start;
59*a65f6a23SMurai Takashi extern crtc_cursor_init		head2_cursor_init;
60*a65f6a23SMurai Takashi extern crtc_cursor_show		head2_cursor_show;
61*a65f6a23SMurai Takashi extern crtc_cursor_hide		head2_cursor_hide;
62*a65f6a23SMurai Takashi extern crtc_cursor_define		head2_cursor_define;
63*a65f6a23SMurai Takashi extern crtc_cursor_position	head2_cursor_position;
64*a65f6a23SMurai Takashi extern crtc_stop_tvout			head2_stop_tvout;
65*a65f6a23SMurai Takashi extern crtc_start_tvout		head2_start_tvout;
6630f76422SRudolf Cornelissen 
67*a65f6a23SMurai Takashi extern dac_mode				head1_mode;
68*a65f6a23SMurai Takashi extern dac_palette				head1_palette;
69*a65f6a23SMurai Takashi extern dac_set_pix_pll			head1_set_pix_pll;
70*a65f6a23SMurai Takashi extern dac_pix_pll_find		head1_pix_pll_find;
7130f76422SRudolf Cornelissen 
72*a65f6a23SMurai Takashi extern dac_mode				head2_mode;
73*a65f6a23SMurai Takashi extern dac_palette				head2_palette;
74*a65f6a23SMurai Takashi extern dac_set_pix_pll			head2_set_pix_pll;
75*a65f6a23SMurai Takashi extern dac_pix_pll_find		head2_pix_pll_find;
76