summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Palmer <daniel@0x0f.com>2026-07-31 21:19:13 +0900
committerHelge Deller <deller@gmx.de>2026-08-10 08:13:26 +0200
commitedfbc5d2adf151a33e8528e6e5da3cc69e49f1eb (patch)
tree1cd302d677c6d2194ea8602a1c19dfeb6cf7eac0
parent08364e38dec37cb77ccc873e897c69d23b33c3e5 (diff)
fbdev: tdfxfb: Wake the VGA core before programming the CRTC
If the card was unbooted the VGA core needs to be woken up before poking at it. Signed-off-by: Daniel Palmer <daniel@0x0f.com> Signed-off-by: Helge Deller <deller@gmx.de>
-rw-r--r--drivers/video/fbdev/tdfxfb.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/video/fbdev/tdfxfb.c b/drivers/video/fbdev/tdfxfb.c
index 74a8dfef1d9d..8e5d2f3ef666 100644
--- a/drivers/video/fbdev/tdfxfb.c
+++ b/drivers/video/fbdev/tdfxfb.c
@@ -485,6 +485,10 @@ static void do_write_regs(struct fb_info *info, struct banshee_reg *reg)
tdfx_outl(par, MISCINIT1, tdfx_inl(par, MISCINIT1) | 0x01);
+ /* Wake the VGA core if it hasn't already been woken up */
+ tdfx_outl(par, VGAINIT0, reg->vgainit0);
+ vga_outb(par, 0x3c3, 0x01);
+
crt_outb(par, 0x11, crt_inb(par, 0x11) & 0x7f); /* CRT unprotect */
banshee_make_room(par, 3);