xref: /aosp_15_r20/external/coreboot/src/include/pc80/vga_io.h (revision b9411a12aaaa7e1e6a6fb7c5e057f44ee179a49c)
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 
3 #ifndef VGA_IO_H
4 #define VGA_IO_H
5 
6 /*
7  * All IO necessary to poke VGA registers.
8  */
9 
10 /* VGA Enable */
11 unsigned char vga_enable_read(void);
12 void vga_enable_write(unsigned char value);
13 void vga_enable_mask(unsigned char value, unsigned char mask);
14 
15 /* Miscellaneous register */
16 unsigned char vga_misc_read(void);
17 void vga_misc_write(unsigned char value);
18 void vga_misc_mask(unsigned char value, unsigned char mask);
19 
20 /* Sequencer registers. */
21 unsigned char vga_sr_read(unsigned char index);
22 void vga_sr_write(unsigned char index, unsigned char value);
23 void vga_sr_mask(unsigned char index, unsigned char value, unsigned char mask);
24 
25 /* CR registers. */
26 unsigned char vga_cr_read(unsigned char index);
27 void vga_cr_write(unsigned char index, unsigned char value);
28 void vga_cr_mask(unsigned char index, unsigned char value, unsigned char mask);
29 
30 /* Attribute registers. */
31 unsigned char vga_ar_read(unsigned char index);
32 void vga_ar_write(unsigned char index, unsigned char value);
33 void vga_ar_mask(unsigned char index, unsigned char value, unsigned char mask);
34 
35 /* Graphics registers. */
36 unsigned char vga_gr_read(unsigned char index);
37 void vga_gr_write(unsigned char index, unsigned char value);
38 void vga_gr_mask(unsigned char index, unsigned char value, unsigned char mask);
39 
40 /* DAC functions. */
41 void vga_palette_enable(void);
42 void vga_palette_disable(void);
43 unsigned char vga_dac_mask_read(void);
44 void vga_dac_mask_write(unsigned char mask);
45 void vga_dac_read_address(unsigned char address);
46 void vga_dac_write_address(unsigned char address);
47 unsigned char vga_dac_data_read(void);
48 void vga_dac_data_write(unsigned char data);
49 
50 #endif /* VGA_IO_H */
51