[PATCH] arm: fix regression in ixp4xx clocksource

Krzysztof Halasa khc at pm.waw.pl
Sun Jun 26 09:08:43 EDT 2011

Mikael Pettersson <mikpe at 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
- later IXP4xx can work "fully" LE (not upstream).
Krzysztof Halasa

More information about the linux-arm-kernel mailing list