From: Hihn, J. <Jas...@ve...> - 2004-04-05 18:46:54
|
I don't know the 2.6 kernel tree, but I'd suspect radeonfb.c The low-level pixel get/set routines probably have a simple bit shift (<< >>) or mask (& |) error. "-inverse" was probably not taken into account when the code was written so the math is a little off. As far as I know, linux treats 24b as the same as 32, so maybe that's why your 24b isn't working, no one bothered to code it because you have to align on 4-byte boundaries anyway (no one packs 3 bytes adjacent to 3 bytes, because it is too much work, you'd have to move then shift, and it gets messy and slow.). So someone would have written for 24, but in the end called it 32, so it's that extra byte that isn't being handled right. I could probably fix it, if I had a radeon card and a 2.6 kernel and some time. Sorry. -----Original Message----- From: Jurriaan [mailto:thu...@xs...]=20 Sent: Monday, April 05, 2004 1:30 PM To: Hihn, Jason Cc: lin...@li... Subject: Re: [Linux-fbdev-users] radeonfb: strange blue lines after 'setterm -inversescreen on' From: Hihn, Jason <Jas...@ve...> Date: Mon, Apr 05, 2004 at 01:34:16PM -0400 > Just a guess... I'm not in 2.6, but it looks like the math to do the > inverse screen is only using 24 bits, not 32. What is it like in 24bpp? > Visually: > *** (inverse mask) > aRGB =3D 00 00 00 FF > ^^^ (normal mask) > So it looks like there may be some 24/32 bit shifting going awry when > -inversescreen is set. >=20 This is a step in the right direction: 1600x1200-8@75: ok 1600x1200-16@75: blue screen 1600x1200-24@75: 'no mode found' in dmesg? 1600x1200-32@75: blue screen apropos 24 bits: Kernel command line: root=3D/dev/hda3 video=3Dradeonfb:1600x1200-24@75 acpi=3Dforce radeonfb_pci_register BEGIN radeonfb: probed DDR SGRAM 65536k videoram radeonfb: mapped 16384k videoram radeonfb: Found Intel x86 BIOS ROM Image radeonfb: Retreived PLL infos from BIOS radeonfb: Reference=3D27.00 MHz (RefDiv=3D60) Memory=3D166.00 Mhz, System=3D166.00 MHz radeonfb: No connector info table detected Starting monitor auto detection... radeonfb: I2C (port 1) ... not found radeonfb: I2C (port 2) ... not found radeonfb: I2C (port 3) ... not found radeonfb: I2C (port 4) ... not found radeonfb: I2C (port 2) ... not found radeonfb: I2C (port 3) ... not found radeonfb: I2C (port 4) ... not found radeonfb: Monitor 1 type CRT found radeonfb: ATI Radeon QD DDR SGRAM 64 MB radeonfb_pci_register END Starting balanced_irq ikconfig 0.7 with /proc/config* Installing knfsd (copyright (C) 1996 ok...@mo...). udf: registering filesystem Limiting direct PCI/PCI transfers. ACPI: Power Button (FF) [PWRF] ACPI: Processor [CPU] (supports C1) ACPI: Processor [CPU1] (supports C1) ACPI: Thermal Zone [THRM] (28 C) hStart =3D 664, hEnd =3D 760, hTotal =3D 800 vStart =3D 491, vEnd =3D 493, vTotal =3D 525 h_total_disp =3D 0x4f0063 hsync_strt_wid =3D 0x8c02a2 v_total_disp =3D 0x1df020c vsync_strt_wid =3D 0x8201ea pixclock =3D 39721 freq =3D 2517 post div =3D 0x3 fb_div =3D 0x1bf ppll_div_3 =3D 0x301bf lvds_gen_cntl: 00000000 Console: switching to colour frame buffer device 53x21 Well, b*gger. Did I mention I use the 12x22 font from sun? Anyway, going to 8 bits color-depth solves my problem, but I'd rather watch some photo's in at least 16-bit color depth. What part of the driver is suspect? Thanks, Jurriaan > If I boot linux-2.6.5, with a radeonfb framebuffer 1600x1200-32@75, I > get white letters on a black background. Fine. If I issue the command > setterm -inversescreen on, I get black letters on a white background. >=20 > So far so good. >=20 > Now if I press enter, I get a new line with black letters on a white > background, but everything after the cursor is blue. >=20 > Switching consoles (alt-f2, alt-f1) removes the blue line. > Issuing 'clear' gives an entire blue screen after the cursor (so a small > part, the prompt, stays black-on-white). >=20 > This is with a radeon 9000 and with a radeon 7000, so it must be > something in general. Incidentally, blue is also the color the overscan > area gets. >=20 > This has been happening on all 2.6.x kernels going back months. >=20 --=20 Someone's stained Someone's gained Us or was it them? The men they couldn't hang - Rosettes Debian (Unstable) GNU/Linux 2.6.5-rc3-mm3 2x6062 bogomips 0.52 0.19 ------------------------------------------------------- This SF.Net email is sponsored by: IBM Linux Tutorials Free Linux tutorial presented by Daniel Robbins, President and CEO of GenToo technologies. Learn everything from fundamentals to system administration.http://ads.osdn.com/?ad_id=3D1470&alloc_id=3D3638&op=3Dcli= ck _______________________________________________ Linux-fbdev-users mailing list Lin...@li... https://lists.sourceforge.net/lists/listinfo/linux-fbdev-users |