Port-sgimips archive

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

Re: O2 framebuffer problems with install kernel




On Jul 28, 2008, at 3:48 PM, Michael Lorenz wrote:

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hello,

On Jul 28, 2008, at 06:39, Jorge Acereda Maciá wrote:

I'm right now trying to install NetBSD-current on my 'new' O2, but I get the vertical red strips referred to recently in this list.

You've got an R10k O2?

Yes.

Will the framebuffer work if I install through serial port?

I seriously doubt it.

Meanwhile, I've installed through the serial port and got it running in multiuser state through the serial port. The installation process went smoothly. But the dmesg says:

crmfb0: device unusable if not setup by firmware

I'm new to this boxes, so how do I configure the width and height? Should I post a 'printenv'?


I have some free time this week and I'm cross-building from my OSX box, so if you have any suggestion I'm available to do some tests.

Have a look at sgimips/dev/crmfb.c, if you have any MIPS clue see if there's something obviously wrong that I'm missing. If you feel like it sprinkle wbflush() and maybe delay()s and see if that makes any difference ( there are a few instances where we wait for some busy bit to set or clear - you may want to put a delay() there in case we're too fast and grab those bits too early from some buffer or whatever. Maybe we need additional barriers there. Also you may want to sprinkle some printf()s for delays and progress reporting.

OK, I'll try to inspect that module.

After a quick look, I've noticed that 'defattr' in crmfb_attach() seems to be uninitialized, but that can hardly be the reason.


Oh, and the obvious bit - you may want to verify that your kernel really uses the MIPS-3 bus_space ops, especially the 64bit ones. CRIME has a bunch of 64bit wide registers that can only be written at 64bit-aligned addresses, unaligned writes don't throw an error, they're silently ignored. 32bit writes work if they're 64bit aligned, so if by any chance you end up using MIPS-1 ops then 64bit writes get broken down into 2x 32bit which would royally screw up crmfb because the non-64bit-aligned write would be ignored and you'd write only the upper half of a register.



Given that I reach multiuser, can I discard this possibility?

Thanks,
  Jorge



Home | Main Index | Thread Index | Old Index