diff options
Diffstat (limited to 'drivers/ct69000.c')
| -rw-r--r-- | drivers/ct69000.c | 21 | 
1 files changed, 21 insertions, 0 deletions
| diff --git a/drivers/ct69000.c b/drivers/ct69000.c index 7bcf19f5d..29d82e4c4 100644 --- a/drivers/ct69000.c +++ b/drivers/ct69000.c @@ -272,6 +272,9 @@ struct ctfb_chips_properties {  static const struct ctfb_chips_properties chips[] = {  	{PCI_DEVICE_ID_CT_69000, 0x200000, 1, 4, -2, 3, 257, 100, 220}, +#ifdef CONFIG_USE_CPCIDVI +	{PCI_DEVICE_ID_CT_69030, 0x400000, 1, 4, -2, 3, 257, 100, 220}, +#endif  	{PCI_DEVICE_ID_CT_65555, 0x100000, 16, 4, 0, 1, 255, 48, 220},	/* NOT TESTED */  	{0, 0, 0, 0, 0, 0, 0, 0, 0}	/* Terminator */  }; @@ -957,6 +960,9 @@ SetDrawingEngine (int bits_per_pixel)  */  static struct pci_device_id supported[] = {  	{PCI_VENDOR_ID_CT, PCI_DEVICE_ID_CT_69000}, +#ifdef CONFIG_USE_CPCIDVI +	{PCI_VENDOR_ID_CT, PCI_DEVICE_ID_CT_69030}, +#endif  	{}  }; @@ -1121,7 +1127,22 @@ video_hw_init (void)  	pGD->cprBase = pci_mem_base;	/* Dummy */  	/* set up Hardware */ +#ifdef CONFIG_USE_CPCIDVI +	if (device_id == PCI_DEVICE_ID_CT_69030) { +		ctWrite (CT_MSR_W_O, 0x0b); +		ctWrite (0x3cd, 0x13); +		ctWrite_i (CT_FP_O, 0x02, 0x00); +		ctWrite_i (CT_FP_O, 0x05, 0x00); +		ctWrite_i (CT_FP_O, 0x06, 0x00); +		ctWrite (0x3c2, 0x0b); +		ctWrite_i (CT_FP_O, 0x02, 0x10); +		ctWrite_i (CT_FP_O, 0x01, 0x09); +	} else { +		ctWrite (CT_MSR_W_O, 0x01); +	} +#else  	ctWrite (CT_MSR_W_O, 0x01); +#endif  	/* set the extended Registers */  	ctLoadRegs (CT_XR_O, xreg); |