diff options
author | Peter 'p2' De Schrijver <p2@mind.be> | 2005-11-07 04:00:42 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2005-11-07 10:53:51 -0500 |
commit | 9127fa28595093a146fc3e2c937747e014e4bfa2 (patch) | |
tree | 04b7c8b5e9f8060a3927dcbabbb4ecb83269d614 | |
parent | 1cc650c69f3079ce3c616c998a741bcf6ddf4f4d (diff) |
[PATCH] pm2fb: Manual configuration of timings for Elsa Winner 2000 Office
Attached is a small patch which configures the correct memory clock and
timings on the Elsa Winner 2000 Office pm2 based card. This is necessary when
the card is used on a platform which does not support PC style BIOS
initialization.
Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r-- | drivers/video/pm2fb.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/drivers/video/pm2fb.c b/drivers/video/pm2fb.c index f4188fe6dd9a..0277ce031e5e 100644 --- a/drivers/video/pm2fb.c +++ b/drivers/video/pm2fb.c | |||
@@ -1120,6 +1120,22 @@ static int __devinit pm2fb_probe(struct pci_dev *pdev, | |||
1120 | default_par->mem_control, default_par->boot_address, | 1120 | default_par->mem_control, default_par->boot_address, |
1121 | default_par->mem_config); | 1121 | default_par->mem_config); |
1122 | 1122 | ||
1123 | if(default_par->mem_control == 0 && | ||
1124 | default_par->boot_address == 0x31 && | ||
1125 | default_par->mem_config == 0x259fffff && | ||
1126 | pdev->subsystem_vendor == 0x1048 && | ||
1127 | pdev->subsystem_device == 0x0a31) { | ||
1128 | DPRINTK("subsystem_vendor: %04x, subsystem_device: %04x\n", | ||
1129 | pdev->subsystem_vendor, pdev->subsystem_device); | ||
1130 | DPRINTK("We have not been initialized by VGA BIOS " | ||
1131 | "and are running on an Elsa Winner 2000 Office\n"); | ||
1132 | DPRINTK("Initializing card timings manually...\n"); | ||
1133 | default_par->mem_control=0; | ||
1134 | default_par->boot_address=0x20; | ||
1135 | default_par->mem_config=0xe6002021; | ||
1136 | default_par->memclock=100000; | ||
1137 | } | ||
1138 | |||
1123 | /* Now work out how big lfb is going to be. */ | 1139 | /* Now work out how big lfb is going to be. */ |
1124 | switch(default_par->mem_config & PM2F_MEM_CONFIG_RAM_MASK) { | 1140 | switch(default_par->mem_config & PM2F_MEM_CONFIG_RAM_MASK) { |
1125 | case PM2F_MEM_BANKS_1: | 1141 | case PM2F_MEM_BANKS_1: |