[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Using rivafb on new PowerBook G4 12"



Hi alltogether!

On my new Powerbook G4 12" I couldn't use the nVidia framebuffer-console
with kernel 2.4.23-ben1. I only saw vertical white stripes between
booting and the start of gdm or a patchwork image of the X-screen when
switching to tty1. The problem was the unknown PCI-ID of the graphics
card. With the attached patch the problem is solved: I can use the
framebuffer-console.

Together with the patch from Guido Günther at
http://honk.physik.uni-konstanz.de/~agx/linux-ppc/kernel/rivafb-blank.diff
I can use fblevel to switch the backlight on/off.

The patch and the one I sent before (for the detection of my PowerBook)
were derived from Guido Günther's patches at
http://honk.physik.uni-konstanz.de/~agx/linux-ppc

With the patch I am also able to choose between video=riva and
video=ofonly at boottime if both are compiled into the kernel. Without
boot parameter rivafb is chosen.

Best regards,

Wolfi

PS:
cat /proc/fb tells me
0 GeForce-FX-Go-5200
or
0 OFfb /pci@f0000000/NVDA,Parent@10/NVDA,D


diff -ur 2.4.23-ben1.orig/drivers/video/riva/fbdev.c benh_kernel/drivers/video/riva/fbdev.c
--- 2.4.23-ben1.orig/drivers/video/riva/fbdev.c	2003-12-28 13:57:55.000000000 +0100
+++ benh_kernel/drivers/video/riva/fbdev.c	2003-12-29 17:30:39.000000000 +0100
@@ -169,6 +169,7 @@
 	CH_GEFORCE4_420_GO_M32,
 	CH_QUADRO4_500XGL,
 	CH_GEFORCE4_440_GO_M64,
+	CH_GEFORCE_FX_GO_5200,
 	CH_QUADRO4_200,
 	CH_QUADRO4_550XGL,
 	CH_QUADRO4_500_GOGL,
@@ -216,6 +217,7 @@
 	{ "GeForce4-420-GO-M32", NV_ARCH_20 },
 	{ "Quadro4-500-XGL", NV_ARCH_20 },
 	{ "GeForce4-440-GO-M64", NV_ARCH_20 },
+	{ "GeForce-FX-Go-5200", NV_ARCH_20 },
 	{ "Quadro4-200", NV_ARCH_20 },
 	{ "Quadro4-550-XGL", NV_ARCH_20 },
 	{ "Quadro4-500-GOGL", NV_ARCH_20 },
@@ -285,6 +287,8 @@
 	  PCI_ANY_ID, PCI_ANY_ID, 0, 0, CH_QUADRO4_500XGL },
 	{ PCI_VENDOR_ID_NVIDIA, PCI_DEVICE_ID_NVIDIA_GEFORCE4_440_GO_M64,
 	  PCI_ANY_ID, PCI_ANY_ID, 0, 0, CH_GEFORCE4_440_GO_M64 },
+	{ PCI_VENDOR_ID_NVIDIA, PCI_DEVICE_ID_NVIDIA_GEFORCE_FX_GO_5200,
+	  PCI_ANY_ID, PCI_ANY_ID, 0, 0, CH_GEFORCE_FX_GO_5200 },
 	{ PCI_VENDOR_ID_NVIDIA, PCI_DEVICE_ID_NVIDIA_QUADRO4_200,
 	  PCI_ANY_ID, PCI_ANY_ID, 0, 0, CH_QUADRO4_200 },
 	{ PCI_VENDOR_ID_NVIDIA, PCI_DEVICE_ID_NVIDIA_QUADRO4_550XGL,
diff -ur 2.4.23-ben1.orig/drivers/video/riva/nv_type.h benh_kernel/drivers/video/riva/nv_type.h
--- 2.4.23-ben1.orig/drivers/video/riva/nv_type.h	2003-12-16 06:16:16.000000000 +0100
+++ benh_kernel/drivers/video/riva/nv_type.h	2003-12-29 17:39:13.000000000 +0100
@@ -29,6 +29,7 @@
 #define NV_CHIP_GEFORCE4_420_GO_M32 ((PCI_VENDOR_ID_NVIDIA << 16) | PCI_DEVICE_ID_NVIDIA_GEFORCE4_420_GO_M32)
 #define NV_CHIP_QUADRO4_500XGL      ((PCI_VENDOR_ID_NVIDIA << 16) | PCI_DEVICE_ID_NVIDIA_QUADRO4_500XGL)
 #define NV_CHIP_GEFORCE4_440_GO_M64 ((PCI_VENDOR_ID_NVIDIA << 16) | PCI_DEVICE_ID_NVIDIA_GEFORCE4_440_GO_M64)
+#define NV_CHIP_GEFORCE_FX_GO_5200  ((PCI_VENDOR_ID_NVIDIA << 16) | PCI_DEVICE_ID_NVIDIA_GEFORCE_FX_GO_5200)
 #define NV_CHIP_QUADRO4_200         ((PCI_VENDOR_ID_NVIDIA << 16) | PCI_DEVICE_ID_NVIDIA_QUADRO4_200)
 #define NV_CHIP_QUADRO4_550XGL      ((PCI_VENDOR_ID_NVIDIA << 16) | PCI_DEVICE_ID_NVIDIA_QUADRO4_550XGL)
 #define NV_CHIP_QUADRO4_500_GOGL    ((PCI_VENDOR_ID_NVIDIA << 16) | PCI_DEVICE_ID_NVIDIA_QUADRO4_500_GOGL)
diff -ur 2.4.23-ben1.orig/include/linux/pci_ids.h benh_kernel/include/linux/pci_ids.h
--- 2.4.23-ben1.orig/include/linux/pci_ids.h	2003-12-16 06:16:35.000000000 +0100
+++ benh_kernel/include/linux/pci_ids.h	2003-12-29 17:03:20.000000000 +0100
@@ -1013,6 +1013,7 @@
 #define PCI_DEVICE_ID_NVIDIA_GEFORCE4_420_GO_M32	0x0176
 #define PCI_DEVICE_ID_NVIDIA_QUADRO4_500XGL		0x0178
 #define PCI_DEVICE_ID_NVIDIA_GEFORCE4_440_GO_M64	0x0179
+#define PCI_DEVICE_ID_NVIDIA_GEFORCE_FX_GO_5200		0x0329
 #define PCI_DEVICE_ID_NVIDIA_QUADRO4_200		0x017A
 #define PCI_DEVICE_ID_NVIDIA_QUADRO4_550XGL		0x017B
 #define PCI_DEVICE_ID_NVIDIA_QUADRO4_500_GOGL		0x017C

Attachment: pgpLZ2MyN_BD5.pgp
Description: PGP signature


Reply to: