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