Kernel

From LinuxMIPS
Jump to: navigation, search

The git repository of linux-mips.org contains several branches. This page describes the maintenance status of the branches, a little history and build requirements.

Linux 1.2 and older

The Linux/MIPS port started around Linux 1.1.35, so Linux 1.2 was the first stable release after that. For MIPS this release never became stable and became quickly superseeded by Linux 2.0 anyway. As such there is no maintenance branch for Linux 2.0.

Linux 2.0

Latest version: 2.0.30. Very occasionally odd bug fixes are applied.

Linux/MIPS became a usable operating system somewhen during the Linux 2.1 series - which actually was a development series and with the 2.1 series development phase taking much longer than originally planned Linux/MIPS development on Linux 2.0 was eventually resurrected for the sake of the Cobalt product development. Source managment was under CVS back in those days and so it was easiest to keep this Linux 2.0 development in a separate CVS repository which was named linux-2.0 Eventually when Git succeeded CVS as the source managment system this repository became converted into the linux-2.0 branch.

Linux 2.2

Latest version: 2.2.14. Very infrequently odd bug fixes are appplied.

This kernel release marks the commercial adoption of Linux/MIPS. Thanks to the FPU emulator / FP kernel assist code written by Algorithmics and donated by MIPS Technologies it also is the first stable kernel being usable for floating point use. Available on the linux-2.2 branch.

Linux 2.4

Latest version: 2.4.37.11. This kernel is regularly updated from the latest kernel.org releases. Only bugs that actually hurt are being fixed. Not recommended for new development. Linux 2.6 is probably superior in almost every way. There has been significant improvments on supporting 64-bit kernels in 2.6 to the point where 2.4 is considered totally hopeless for 64-bit systems - even though it was actually fairly stable and running on the IP27 set a few Linux records, see IP27 boot messages. Available on the linux-2.4 branch. Being more featureful, performant and stable already the 2.3 development versions of 2.4 became more popular for MIPS than Linux 2.2.

Build requirements

GCC version 2.95.3.3 is recommended. Some kernel configurations are incompatible with gcc 3.4. Any binutils version newer than 2.13 will work. For 2.4.34.4, 2.4.35 and newer gcc 4.0 is also supported.

Linux 2.6

Latest version: 3.17.4. Frequently updated from the latest kernel.org releases. Starting with version 2.6.16 the git repository also follows the -stable branches which are named like linux-2.6.16-stable. The master branch is aggressivly following the kernel.org development. It is therefore recommended users use one of the tagged releases or -stable branches.

Build requirements

Gcc 3.2.4.1 is required to build Linux 2.6. For 64-bit kernels gcc 3.3 or newer are required since 2.6.16. Kernels before 2.6.16 were also buildable with gcc 2.95.3 or newer but a more recent compiler is recommended. Binutils 2.15 or newer are required to build a 2.6 kernel. For some kernel configurations binutils 2.15 will dump core so binutils 2.16 is recommended.