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

Re: Getting Dual Independent Heads to work on Debian(sid) on iBook

On Fri, 2003-06-13 at 17:08, Andreakis, Dean (MED) wrote:

> Given this result I tried comparing the sections of code in the kernel
> fbdev driver and the XF86 radeon driver that sets up the PLL and there
> was just a few minor diff's in the default min/max values. I went ahead
> and changed these to match and recompiled/installed XFree86 4.3 etc. but
> it didn't make any difference...the flickering still occured. Maybe I am
> looking at the wrong parts of code....hmmm....

Look for if (machine_is_compatible("PowerBook4,3")) in radeonfb, this
is where I hard code the PLL value for the panel:

if (machine_is_compatible("PowerBook4,3") && rinfo->arch == RADEON_M7)
	regs->ppll_div_3 = 0x000600ad;

The yellow tint is usually a symptom of wrong endian. Look at the
code that sets SURFACE_CNTL and tweak it (try setting bits for
both apertures for example).

> I guess the other weird thing is the color issue (yellowing). It also
> seems to be related to the BusID setting. If I use 0:16:0 in the device
> sections then its yellow. If I use 0:10:0 in just the external crt
> device section (an incorrect value per your earlier comments) then the
> colors are all ok on both screens etc...

Hrm... Make no sense to me...

> In any case I appreiciate your comments. I guess I really want to get
> down to enabling the dual-head mode first and then I can worry about any
> flickering and color issues secondarily. On that note I looked at my
> XF86 log file and noticed the following error:
> (EE) RADEON (0): FBIOPAN_DISPLAY: Invalid argument
> This end up being in the fb_ioctl function in the kernel fbmem.c
> module.I am not sure whats going on in this particular section so maybe
> you can comment.

You are probably hitting this:

        if ((var->xoffset + var->xres > var->xres_virtual)
	    || (var->yoffset + var->yres > var->yres_virtual))
               return -EINVAL;

In radeonfb fb_pan_display()

Reply to: