[GIT PULL] nommu fixes for 3.17-rc1

Arnd Bergmann arnd at arndb.de
Tue Jul 1 04:35:49 PDT 2014

On Monday 30 June 2014 18:07:38 Will Deacon wrote:
> On Mon, Jun 30, 2014 at 06:00:37PM +0100, Linus Walleij wrote:
> > However if it is a good testbase for people synthesizing these old non-MMU
> > ARM cores still and using Linux with them, then it would make sense to
> > get that into shape and supported I guess? Especially now that the
> > Integrator machine is soon-ish even multiplatform (famous last words).
> > 
> > So we need some input here ...

(adding Greg Ungerer to Cc)

FWIW, qemu supports integrator with arm946e in principle. There are a few
bugs that I found recently with the qemu model running recent Linux kernels,
but they are all trivially fixable. I haven't tried running !MMU though,
only ARM926 and ARM1026 with MMU, as I haven't managed to find or build
a user space image.

> To be honest, I'm finding it more and more difficult to care about uclinux
> outside of Cortex-M. Could we simply decide to support only v7m and rip out
> the code for other !MMU targets, or are there actually users of those things
> with mainline kernels?

As I said here earlier, at91x40 is the only pre-v7-m platform we support
upstream that doesn't have an MMU, and we are going to remove it at the
point when mach-at91 moves to multiplatform.

I suppose uClinux is the place for arm7tdmi these days, I just downloaded
their latest release and found support for these additional platforms
that were never upstreamed:

* S5C7375 (arm940t)
* S3C2500 (arm940t)
* S3C3410 (arm7tdmi)
* S3C4510B (arm7tdmi)
* S3C44B0 (arm7tdmi)
* P2001 (arm9tdmi)
* LPC22XX (arm7tdmi)
* LPC28XX (arm7tdmi)

The last one of these is the only one that actually builds, all the other
ones have been broken for many years as far as I can tell and were just
kept in the tree for reference, or because nobody bothered to remove
them. In contrast, the latest uclinux-2.4 kernel supports 23 (!) platforms
that I assume all work to some degree. This supports the position that
people using armv4t-nommu are either going to stay on ancient kernels
or moving on to other CPUs later.

There are a few other semi-recent kernel trees outside of uClinux-dist:

* at91x40 (to be dropped, as mentioned above)
* lapis ml67xxxx (also mentioned before)
* nuvoton nuc700 (abandoned at 3.1?)
* multiple cortex-m on 2.6.33 (actively maintained by emcraft)

Greg, do you have any other input? Do you think anybody is still
interested in upstream !MMU Linux on ARMv4T or ARMv5?


More information about the linux-arm-kernel mailing list