xref: /plan9/sys/src/cmd/aux/vga/data.c (revision b249590635b298a2b629c4458908d752eced8f6f)
1219b2ee8SDavid du Colombier #include <u.h>
2219b2ee8SDavid du Colombier #include <libc.h>
37dd7cddfSDavid du Colombier #include <bio.h>
4219b2ee8SDavid du Colombier 
59a747e4fSDavid du Colombier #include "pci.h"
6219b2ee8SDavid du Colombier #include "vga.h"
7219b2ee8SDavid du Colombier 
8219b2ee8SDavid du Colombier int cflag;					/* do not use hwgc */
9219b2ee8SDavid du Colombier int dflag;					/* do the palette */
10219b2ee8SDavid du Colombier 
11219b2ee8SDavid du Colombier Ctlr* ctlrs[] = {
127dd7cddfSDavid du Colombier 	&ark2000pv,				/* ctlr */
137dd7cddfSDavid du Colombier 	&ark2000pvhwgc,				/* hwgc */
147dd7cddfSDavid du Colombier 	&att20c490,				/* ramdac */
15219b2ee8SDavid du Colombier 	&att20c491,				/* ramdac */
16219b2ee8SDavid du Colombier 	&att20c492,				/* ramdac */
17219b2ee8SDavid du Colombier 	&att21c498,				/* ramdac */
18219b2ee8SDavid du Colombier 	&bt485,					/* ramdac */
19219b2ee8SDavid du Colombier 	&bt485hwgc,				/* hwgc */
20219b2ee8SDavid du Colombier 	&ch9294,				/* clock */
21219b2ee8SDavid du Colombier 	&clgd542x,				/* ctlr */
227dd7cddfSDavid du Colombier 	&clgd542xhwgc,				/* hwgc */
237dd7cddfSDavid du Colombier 	&clgd546x,				/* ctlr */
247dd7cddfSDavid du Colombier 	&clgd546xhwgc,				/* hwgc */
257dd7cddfSDavid du Colombier 	&ct65540,				/* ctlr */
267dd7cddfSDavid du Colombier 	&ct65545,				/* ctlr */
277dd7cddfSDavid du Colombier 	&ct65545hwgc,				/* hwgc */
287dd7cddfSDavid du Colombier 	&cyber938x,				/* ctlr */
297dd7cddfSDavid du Colombier 	&cyber938xhwgc,				/* hwgc */
30219b2ee8SDavid du Colombier 	&et4000,				/* ctlr */
31219b2ee8SDavid du Colombier 	&et4000hwgc,				/* hwgc */
32219b2ee8SDavid du Colombier 	&generic,				/* ctlr */
337dd7cddfSDavid du Colombier 	&hiqvideo,				/* ctlr */
347dd7cddfSDavid du Colombier 	&hiqvideohwgc,				/* hwgc */
359a747e4fSDavid du Colombier 	&i81x,				/* ctlr */
369a747e4fSDavid du Colombier 	&i81xhwgc,				/* hwgc */
37219b2ee8SDavid du Colombier 	&ibm8514,				/* ctlr */
38219b2ee8SDavid du Colombier 	&icd2061a,				/* clock */
39219b2ee8SDavid du Colombier 	&ics2494,				/* clock */
40219b2ee8SDavid du Colombier 	&ics2494a,				/* clock */
417dd7cddfSDavid du Colombier 	&ics534x,				/* gendac */
42219b2ee8SDavid du Colombier 	&mach32,				/* ctlr */
43219b2ee8SDavid du Colombier 	&mach64,				/* ctlr */
447dd7cddfSDavid du Colombier 	&mach64xx,				/* ctlr */
457dd7cddfSDavid du Colombier 	&mach64xxhwgc,				/* hwgc */
467dd7cddfSDavid du Colombier 	&mga2164w,				/* ctlr */
477dd7cddfSDavid du Colombier 	&mga2164whwgc,				/* hwgc */
487dd7cddfSDavid du Colombier 	&neomagic,				/* ctlr */
497dd7cddfSDavid du Colombier 	&neomagichwgc,				/* hwgc */
509a747e4fSDavid du Colombier 	&nvidia,				/* ctlr */
519a747e4fSDavid du Colombier 	&nvidiahwgc,				/* hwgc */
52*b2495906SDavid du Colombier 	&radeon,				/* ctlr */
53*b2495906SDavid du Colombier 	&radeonhwgc,				/* hwgc */
54219b2ee8SDavid du Colombier 	&palette,				/* ctlr */
557dd7cddfSDavid du Colombier 	&rgb524,				/* ramdac */
567dd7cddfSDavid du Colombier 	&rgb524hwgc,				/* hwgc */
577dd7cddfSDavid du Colombier 	&rgb524mn,				/* ramdac */
58219b2ee8SDavid du Colombier 	&s3801,					/* ctlr */
59219b2ee8SDavid du Colombier 	&s3805,					/* ctlr */
60219b2ee8SDavid du Colombier 	&s3928,					/* ctlr */
61219b2ee8SDavid du Colombier 	&s3clock,				/* clock */
62219b2ee8SDavid du Colombier 	&s3hwgc,				/* hwgc */
63219b2ee8SDavid du Colombier 	&sc15025,				/* ramdac */
64b0dcc5a8SDavid du Colombier 	&softhwgc,				/* hwgc */
65219b2ee8SDavid du Colombier 	&stg1702,				/* ramdac */
667dd7cddfSDavid du Colombier 	&t2r4,					/* ctlr */
677dd7cddfSDavid du Colombier 	&t2r4hwgc,				/* hwgc */
6859cc4ca5SDavid du Colombier 	&tdfx,					/* ctlr */
6959cc4ca5SDavid du Colombier 	&tdfxhwgc,				/* hwgc */
707dd7cddfSDavid du Colombier 	&trio64,				/* ctlr */
71219b2ee8SDavid du Colombier 	&tvp3020,				/* ramdac */
72219b2ee8SDavid du Colombier 	&tvp3020hwgc,				/* hwgc */
73219b2ee8SDavid du Colombier 	&tvp3025,				/* ramdac */
74219b2ee8SDavid du Colombier 	&tvp3025clock,				/* clock */
757dd7cddfSDavid du Colombier 	&tvp3026,				/* ramdac */
767dd7cddfSDavid du Colombier 	&tvp3026clock,				/* clock */
777dd7cddfSDavid du Colombier 	&tvp3026hwgc,				/* hwgc */
78b0dcc5a8SDavid du Colombier 	&vesa,					/* ctlr */
797dd7cddfSDavid du Colombier 	&virge,					/* ctlr */
80219b2ee8SDavid du Colombier 	&vision864,				/* ctlr */
817dd7cddfSDavid du Colombier 	&vision964,				/* ctlr */
827dd7cddfSDavid du Colombier 	&vision968,				/* ctlr */
839a747e4fSDavid du Colombier 	&vmware,				/* ctlr */
849a747e4fSDavid du Colombier 	&vmwarehwgc,				/* hwgc */
857dd7cddfSDavid du Colombier 	&w30c516,				/* ctlr */
869a747e4fSDavid du Colombier 	&mga4xx,
879a747e4fSDavid du Colombier 	&mga4xxhwgc,
88219b2ee8SDavid du Colombier 	0,
89219b2ee8SDavid du Colombier };
90219b2ee8SDavid du Colombier 
91219b2ee8SDavid du Colombier /*
92219b2ee8SDavid du Colombier  * Lower 2-bits of indirect DAC register
93219b2ee8SDavid du Colombier  * addressing.
94219b2ee8SDavid du Colombier  */
95219b2ee8SDavid du Colombier ushort dacxreg[4] = {
96219b2ee8SDavid du Colombier 	PaddrW, Pdata, Pixmask, PaddrR
97219b2ee8SDavid du Colombier };
98