diff options
author | Antonino A. Daplas <adaplas@gmail.com> | 2007-03-16 22:38:18 +0100 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-03-17 03:25:04 +0100 |
commit | 5b600464f0514efd49d24182daf0e9d62cf8bb8f (patch) | |
tree | 964c80d8b8e27934b18ff6639753fcd0bfab88cf /drivers/video/savage | |
parent | [PATCH] sstfb: fix pixclock setting on Voodoo 1/2 cards (diff) | |
download | linux-5b600464f0514efd49d24182daf0e9d62cf8bb8f.tar.xz linux-5b600464f0514efd49d24182daf0e9d62cf8bb8f.zip |
[PATCH] savagefb: Fix black screen on load in Savage IX
This is a hack that seems to kick start the 2D engine of the Savage IX in some
Toshiba laptops. Without this, the laptop starts with a black screen and
occasionally crashes X.
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>
Diffstat (limited to 'drivers/video/savage')
-rw-r--r-- | drivers/video/savage/savagefb_driver.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/drivers/video/savage/savagefb_driver.c b/drivers/video/savage/savagefb_driver.c index 4afa30522fdb..d952bf3199a6 100644 --- a/drivers/video/savage/savagefb_driver.c +++ b/drivers/video/savage/savagefb_driver.c @@ -384,6 +384,19 @@ SavageSetup2DEngine(struct savagefb_par *par) BCI_SEND(0); BCI_SEND(BCI_CMD_SETREG | (1 << 16) | BCI_GBD2); BCI_SEND(GlobalBitmapDescriptor); + + /* + * I don't know why, sending this twice fixes the intial black screen, + * prevents X from crashing at least in Toshiba laptops with SavageIX. + * --Tony + */ + par->bci_ptr = 0; + par->SavageWaitFifo(par, 4); + + BCI_SEND(BCI_CMD_SETREG | (1 << 16) | BCI_GBD1); + BCI_SEND(0); + BCI_SEND(BCI_CMD_SETREG | (1 << 16) | BCI_GBD2); + BCI_SEND(GlobalBitmapDescriptor); } static void savagefb_set_clip(struct fb_info *info) |