Skip to content

Commit

Permalink
[PATCH] cyber2010 framebuffer on ARM Netwinder fix
Browse files Browse the repository at this point in the history
The Netwinder machines with Cyber2010 crash badly when starting Xserver.
The workaround is to disable pci burst option for this revision of video
chip.

[[email protected]: cleanup]
Signed-off-by: Woody Suwalski <[email protected]>
Cc: "Antonino A. Daplas" <[email protected]>
Cc: James Simmons <[email protected]>
Cc: Ralf Baechle <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
  • Loading branch information
Woody Suwalski authored and Linus Torvalds committed Feb 12, 2007
1 parent 3a09910 commit cd792aa
Showing 1 changed file with 12 additions and 7 deletions.
19 changes: 12 additions & 7 deletions drivers/video/cyber2000fb.c
Original file line number Diff line number Diff line change
Expand Up @@ -1539,16 +1539,21 @@ static int cyberpro_pci_enable_mmio(struct cfb_info *cfb)
/*
* Allow the CyberPro to accept PCI burst accesses
*/
val = cyber2000_grphr(EXT_BUS_CTL, cfb);
if (!(val & EXT_BUS_CTL_PCIBURST_WRITE)) {
printk(KERN_INFO "%s: enabling PCI bursts\n", cfb->fb.fix.id);
if (cfb->id == ID_CYBERPRO_2010) {
printk(KERN_INFO "%s: NOT enabling PCI bursts\n", cfb->fb.fix.id);
} else {
val = cyber2000_grphr(EXT_BUS_CTL, cfb);
if (!(val & EXT_BUS_CTL_PCIBURST_WRITE)) {
printk(KERN_INFO "%s: enabling PCI bursts\n",
cfb->fb.fix.id);

val |= EXT_BUS_CTL_PCIBURST_WRITE;
val |= EXT_BUS_CTL_PCIBURST_WRITE;

if (cfb->id == ID_CYBERPRO_5000)
val |= EXT_BUS_CTL_PCIBURST_READ;
if (cfb->id == ID_CYBERPRO_5000)
val |= EXT_BUS_CTL_PCIBURST_READ;

cyber2000_grphw(EXT_BUS_CTL, val, cfb);
cyber2000_grphw(EXT_BUS_CTL, val, cfb);
}
}

return 0;
Expand Down

0 comments on commit cd792aa

Please sign in to comment.