[PATCH] arm: fix regression in ixp4xx clocksource

Krzysztof Halasa
2011-06-26T13:08:43Z

Mikael Pettersson <mikpe@it.uu.se> writes:

> ARM cores often have software-controllable endianess (see the ARM ARM).
> Off the top of my head:
> - ixp4xx: natively BE core and peripherals, but some people like to
> switch the core to LE for user-space SW compatibility reasons
> (I run my ixp4xx in BE as intended though)

Ok I'm back to work.

IXP4xx have some problems working in LE mode, namely:
- the network drivers (at least Ethernet and HSS) have to swap buffers
because the NPE (network coprocessors) are BE,
- the hw crypto stuff doesn't mostly work on LE - parts work, but the
rest seems to be broken in firmware (NPE microcode) - or so it seems
(swapping the data buffers would work).

There is a special hardware in IXP4xx which makes it possible to
effectively switch the NPEs to LE. Unfortunately the first CPU revision
(IXP42x rev. A0) doesn't support it. And while I have the code working,
it's not "yet" upstream.

In short:
- all IXP4xx can work BE,
- IXP42x rev. A0 can work LE with impaired network transfers and hw
crypto,
- later IXP4xx can work "fully" LE (not upstream).
--
Krzysztof Halasa