Skip to contentSkip to conversation

Radeon framebuffer problems i 2.6.0-test6

PATCH Henrik Christian Grove 5 participants 6 messages Sep 30, 2003 – Oct 1, 2003 Framebuffer layer

lore
Share & tools
lore
#0 lore raw

Hi

Searching through the archives I have found some reports of problems with the radeon framebuffer, but done that seems to fully match my experiences.

I have an Asus L3800C laptop with a Radeon Mobility 7500 graphics chip.

I have made three slightly different 2.6.0-test6 kernels, called test6-1, test6-2 and test6-3. The only differences are what framebuffer drivers are included. Test6-1 includes both the vga16 driver and the radeon driver, test6-2 only includes the radeon driver, and test6-3 only includes the vga16 driver.

All three kernels boot, and everything seems to run fine.

With test6-3 I get a fully functional framebuffer running 640x480-59.

With test6-2 I get a framebuffer that looks like it has a sync problem. Horizontal lines are horizontal, but vertical lines are displayed as individual dots, for each horizontal line of pixels 8 pixels further right.

With test6-1 I get the ASUS logo (which is displayed during POST) with vertical green and blue lines running from near the top of the screen and about 3/4 of the way down. At the top of the screen are some moving white pixels.

Output of lspci:
00:00.0 Host bridge: Intel Corp. 82845 845 (Brookdale) Chipset Host Bridge (rev 04) 00:01.0 PCI bridge: Intel Corp. 82845 845 (Brookdale) Chipset AGP Bridge (rev 04) 00:1d.0 USB Controller: Intel Corp. 82801CA/CAM USB (Hub #1) (rev 02)
00:1d.1 USB Controller: Intel Corp. 82801CA/CAM USB (Hub #2) (rev 02)
00:1e.0 PCI bridge: Intel Corp. 82801BAM/CAM PCI Bridge (rev 42)
00:1f.0 ISA bridge: Intel Corp. 82801CAM ISA Bridge (LPC) (rev 02)
00:1f.1 IDE interface: Intel Corp. 82801CAM IDE U100 (rev 02)
00:1f.5 Multimedia audio controller: Intel Corp. 82801CA/CAM AC'97 Audio (rev 02) 00:1f.6 Modem: Intel Corp. 82801CA/CAM AC'97 Modem (rev 02)
01:00.0 VGA compatible controller: ATI Technologies Inc Radeon Mobility M7 LW [Radeon Mobility 7500] 02:05.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10) 02:07.0 CardBus bridge: Ricoh Co Ltd RL5c476 II (rev a8)
02:07.1 CardBus bridge: Ricoh Co Ltd RL5c476 II (rev a8)
02:07.2 FireWire (IEEE 1394): Ricoh Co Ltd R5C552 IEEE 1394 Controller

I have attached the configuration file for test6-1, here are the diffs for the two other kernels.

grove@julia:/boot% diff -u config-2.6.0-test6-1 config-2.6.0-test6-2

config-2.6.0-test6-2 2003-09-30 15:51:45.000000000 +0200 renamed from config-2.6.0-test6-1 2003-09-30 15:49:06.000000000 +0200 +1 -1
@@ -1083,7 +1083,7 @@
 CONFIG_FB=y
 # CONFIG_FB_CYBER2000 is not set
 # CONFIG_FB_IMSTT is not set
-CONFIG_FB_VGA16=y
+# CONFIG_FB_VGA16 is not set
 # CONFIG_FB_VESA is not set
 # CONFIG_VIDEO_SELECT is not set
 # CONFIG_FB_HGA is not set

grove@julia:/boot% diff -u config-2.6.0-test6-1 config-2.6.0-test6-3

config-2.6.0-test6-3 2003-09-30 15:52:44.000000000 +0200 renamed from config-2.6.0-test6-1 2003-09-30 15:49:06.000000000 +0200 +1 -1
@@ -1090,7 +1090,7 @@
 # CONFIG_FB_RIVA is not set
 # CONFIG_FB_I810 is not set
 # CONFIG_FB_MATROX is not set
-CONFIG_FB_RADEON=y
+# CONFIG_FB_RADEON is not set
 # CONFIG_FB_ATY128 is not set
 # CONFIG_FB_ATY is not set
 # CONFIG_FB_SIS is not set

grove@julia:/boot%

.Henrik

Signature · 2 lines
Jacob: Because the theoreticians told me.
Prof. Vassilicos: Why do you believe theoreticians?
#1 lore raw
Quoted 9 lines · Henrik Christian Grove

I have an Asus L3800C laptop with a Radeon Mobility 7500 graphics chip.

I have made three slightly different 2.6.0-test6 kernels, called test6-1, test6-2 and test6-3. The only differences are what framebuffer drivers are included. Test6-1 includes both the vga16 driver and the radeon driver, test6-2 only includes the radeon driver, and test6-3 only includes the vga16 driver.

Quoted 4 lines

With test6-2 I get a framebuffer that looks like it has a sync problem. Horizontal lines are horizontal, but vertical lines are displayed as individual dots, for each horizontal line of pixels 8 pixels further right.

See http://www.ussg.iu.edu/hypermail/linux/kernel/0308.3/0637.html
That patch fixed the same problem for me.

Signature · 2 lines
Peter Osterlund - [email protected]
http://w1.894.telia.com/~u89404340
#2 lore raw
In reply to Henrik Christian Grove

Try this patch that's been floating around for a while.

Ani, can you please push this patch to Linus? It fixes the Radeon problems for a lot of people.

===== drivers/video/radeonfb.c 1.30 vs edited =====

drivers/video/radeonfb.c +1 -1
@@ -2090,7 +2090,7 @@
 	
 	}
 	/* Update fix */
-        info->fix.line_length = rinfo->pitch*64;
+        info->fix.line_length = mode->xres_virtual*(mode->bits_per_pixel/8);
         info->fix.visual = rinfo->depth == 8 ? FB_VISUAL_PSEUDOCOLOR : FB_VISUAL_DIRECTCOLOR;
 
 #ifdef CONFIG_BOOTX_TEXT
#3 lore raw

Hi,

Quoting Peter Chubb <[email protected]>:

Quoted 4 lines

Try this patch that's been floating around for a while.

Ani, can you please push this patch to Linus? It fixes the Radeon problems for a lot of people.

In addition I need the following patch for radeonfb to work on my Asus L5. See http://bugs.xfree86.org/show_bug.cgi?id=561 for more info.

radeonfb.c renamed from radeonfb.c.orig +1 -1
@@ -1099,7 +1099,7 @@
 	printk("radeonfb: detected DFP panel size from BIOS: %dx%d\n",
 		rinfo->panel_xres, rinfo->panel_yres);
 
-	for(i=0; i<20; i++) {
+	for(i=0; i<21; i++) {
 		tmp0 = rinfo->bios_seg + readw(tmp+64+i*2);
 		if (tmp0 == 0)
 			break;

Pontus Fuchs

#4 lore raw
In reply to Peter Chubb
Quoted 1 line · Peter Chubb

Try this patch that's been floating around for a while.

That solved the problem for me.

Quoted 1 line

Ani, can you please push this patch to Linus?

Please do that.

.Henrik

Signature · 4 lines
"Done. For future reference - don't anybody else try to send patches as
vi scripts, please. Yes, it's manly, but let's face it, so is
bungee-jumping with the cord tied to your testicles."
						       -- Linus Torvalds
#5 lore raw
In reply to Peter Chubb

My recent experience in patch submission makes me believe that sending patches to the kernel maintainers is like sending the patch into a vacuum. I don't care to maintain any of the drivers with my name on them anymore partly because of such problems. I imagine if you keep posting the patch to the list it will someday reach kernel.org, since apparently being the author of a driver doesn't mean your patches will be applied nowdays.

good luck! :)

ani

Quoted 21 lines · Peter Chubb

Try this patch that's been floating around for a while.

Ani, can you please push this patch to Linus? It fixes the Radeon problems for a lot of people.

===== drivers/video/radeonfb.c 1.30 vs edited =====

drivers/video/radeonfb.c +1 -1
@@ -2090,7 +2090,7 @@
 
 	}
 	/* Update fix */
-        info->fix.line_length = rinfo->pitch*64;
+        info->fix.line_length = mode->xres_virtual*(mode->bits_per_pixel/8);
         info->fix.visual = rinfo->depth == 8 ? FB_VISUAL_PSEUDOCOLOR : FB_VISUAL_DIRECTCOLOR;
 
 #ifdef CONFIG_BOOTX_TEXT