On Fri, Jun 08, 2001 at 08:13:21PM +0200, Michel Daenzer wrote:
> Duncan Sands wrote:
> > 
> > > > I am running X 4.0.3 on an 8500 powermac (controlfb), kernel 2.4.
> > > > If I use 8bpp all is well (kernel parameter:
> > > > video=controlfb:vmode:14,cmode:0).
> > >
> > > Well, I guess this answers most of the questions in my other post...
> > 
> > Sorry about that!
> 
> No worries, I could have looked at your other post before asking.
> 
> 
> > > I thought I had fixed this for 4.0.2 already, but it only works reliably
> > > with ShadowFB enabled, which is the default though - you don't happen to
> > > disable it explicitly?
> > 
> > Nope:
> 
> Hmm. The fbdevhw layer gets the framebuffer offset from the framebuffer
> device. That code used to be buggy before 4.0.2, but Geert helped me fix it.
> But this sounds like it isn't 100% correct yet. :(
> 
> Curious: Approximately by how many pixels is the picture shifted?

I did some experiments (X 4.0.3, kernel 2.4.5-pre3).  A negative screen
offset means that something that should be on the left appears on the
right, a positive offset means that something that should be on the
right appears on the left.

WITH kernel parameter video=controlfb:vmode:14,cmode:0

Depth 8         Result: screen position ok
Depth 15        Result: screen off by -13 or -14 pixels
Depth 16        Result: screen off by -13 or -14 pixels, colours no good
Depth 24        Result: fails (see note 1 below)
Depth 32        Result: fails (see note 2 below)

withOUT kernel parameter video=controlfb:vmode:14,cmode:0

Depth 8         Result: screen off by about +22 pixels
Depth 15        Result: screen position ok
Depth 16        Result: screen position ok, colours no good
Depth 24        Result: fails (see note 1 below)
Depth 32        Result: fails (see note 2 below)

Note 1: X fails to start.  Find the following in the log:
Depth 24 pixmap format is 32 bpp
Fatal server error
AddScreen/ScreenInit failed for driver 0

Note 1: X fails to start.  Find the following in the log:
FBDev(0): Depth 32. (--) framebuffer bpp 32
FBDev(0): Weight given (000) is inconsistent with the depth (32)


I don't recall getting failures for depths 24 and 32 before, but
it was a long time since I last tried them, and I've changed X
versions since then.

By the way, since depth 15 with no kernel parameter seems to work
fine, my problem is solved (though the bug is not fixed)!

Duncan.

Reply via email to