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 5:26 PM, Michael Lorenz wrote:

Not really - as I said, unaligned writes there are silently ignored, unaligned reads just work so you wouldn't get an error either way, just malfunctioning drivers. The other driver that might get bitten by this is mec ( the O2's onboard ethernet ) but I don't know if it uses any bits that would be affected, IIRC most of its registers are 32bit aligned to 64bit.

mec works properly.


To test this please do this:
Look at crmfb_attach(). After mapping the drawing engine's registers ( rv = bus_space_map(sc->sc_iot, 0x15000000, 0x6000, 0, &sc->sc_reh); ) write some random but recognizeable value into one of the drawing engine's TLB registers ( like this: bus_space_write_8(sc- >sc_iot, sc->sc_reh, CRIME_RE_TLB_A, 0x1122334455667788L); ) and read it back a little bit later. If you get the same value you wrote you're fine and I'll have to think of a new way to screw things up, but if you get something like 0x1122334400000000 or some random garbage in the lower 32 bit then that's the problem. If you do this right after mapping the registers it should run even on a serial console, the code that checks for firmware setup come later.

Done, it reads back the same value.



Home | Main Index | Thread Index | Old Index