Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

pm2fb: 3dlabs Permedia 2V reference board added

This patch adds support for 3dlabs Permedia reference board.

Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Signed-off-by: Antonino Daplas <adaplas@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

authored by

Krzysztof Helt and committed by
Linus Torvalds
f1c15f93 d3736340

+23 -10
+23 -10
drivers/video/pm2fb.c
··· 1117 1117 default_par->mem_control, default_par->boot_address, 1118 1118 default_par->mem_config); 1119 1119 1120 + default_par->memclock = CVPPC_MEMCLOCK; 1120 1121 if(default_par->mem_control == 0 && 1121 1122 default_par->boot_address == 0x31 && 1122 - default_par->mem_config == 0x259fffff && 1123 - pdev->subsystem_vendor == 0x1048 && 1124 - pdev->subsystem_device == 0x0a31) { 1125 - DPRINTK("subsystem_vendor: %04x, subsystem_device: %04x\n", 1126 - pdev->subsystem_vendor, pdev->subsystem_device); 1127 - DPRINTK("We have not been initialized by VGA BIOS " 1128 - "and are running on an Elsa Winner 2000 Office\n"); 1129 - DPRINTK("Initializing card timings manually...\n"); 1123 + default_par->mem_config == 0x259fffff) { 1130 1124 default_par->mem_control=0; 1131 1125 default_par->boot_address=0x20; 1132 1126 default_par->mem_config=0xe6002021; 1133 - default_par->memclock=100000; 1127 + if (pdev->subsystem_vendor == 0x1048 && 1128 + pdev->subsystem_device == 0x0a31) { 1129 + DPRINTK("subsystem_vendor: %04x, subsystem_device: %04x\n", 1130 + pdev->subsystem_vendor, pdev->subsystem_device); 1131 + DPRINTK("We have not been initialized by VGA BIOS " 1132 + "and are running on an Elsa Winner 2000 Office\n"); 1133 + DPRINTK("Initializing card timings manually...\n"); 1134 + default_par->memclock=70000; 1135 + } 1136 + if (pdev->subsystem_vendor == 0x3d3d && 1137 + pdev->subsystem_device == 0x0100) { 1138 + DPRINTK("subsystem_vendor: %04x, subsystem_device: %04x\n", 1139 + pdev->subsystem_vendor, pdev->subsystem_device); 1140 + DPRINTK("We have not been initialized by VGA BIOS " 1141 + "and are running on an 3dlabs reference board\n"); 1142 + DPRINTK("Initializing card timings manually...\n"); 1143 + default_par->memclock=70000; 1144 + } 1134 1145 } 1135 1146 1136 1147 /* Now work out how big lfb is going to be. */ ··· 1159 1148 default_par->fb_size=0x800000; 1160 1149 break; 1161 1150 } 1162 - default_par->memclock = CVPPC_MEMCLOCK; 1163 1151 pm2fb_fix.smem_start = pci_resource_start(pdev, 1); 1164 1152 pm2fb_fix.smem_len = default_par->fb_size; 1165 1153 ··· 1252 1242 { PCI_VENDOR_ID_3DLABS, PCI_DEVICE_ID_3DLABS_PERMEDIA2V, 1253 1243 PCI_ANY_ID, PCI_ANY_ID, PCI_BASE_CLASS_DISPLAY << 16, 1254 1244 0xff0000, 0 }, 1245 + { PCI_VENDOR_ID_3DLABS, PCI_DEVICE_ID_3DLABS_PERMEDIA2V, 1246 + PCI_ANY_ID, PCI_ANY_ID, PCI_CLASS_NOT_DEFINED_VGA << 8, 1247 + 0xff00, 0 }, 1255 1248 { 0, } 1256 1249 }; 1257 1250