Kernel entry (head-armv.S)
--------------------------
- The initial entry into the kernel made via head-armv.S uses architecture
+ The initial entry into the kernel is via head-armv.S, which uses machine
independent code. The machine is selected by the value of 'r1' on
- entry, which must be kept unique. You can register a new machine
- by mailing the following details to rmk@arm.linux.org.uk Please give
- the mail a subject of 'Register new machine':
+ entry, which must be kept unique.
- Name: <name of your machine>
- ArchDir: <name of include/asm-arm/arch-* directory>
- Type: <MACH_TYPE_* macro name>
- Description:
- <description of your machine>
+ Due to the large number of machines which the ARM port of Linux provides
+ for, we have a method to manage this which ensures that we don't end up
+ duplicating large amounts of code.
- Please follow this format - it is an automated system. You should
- receive a reply in short order.
+ We group machine (or platform) support code into machine classes. A
+ class typically based around one or more system on a chip devices, and
+ acts as a natural container around the actual implementations. These
+ classes are given directories - arch/arm/mach-<class> and
+ include/asm-arm/arch-<class> - which contain the source files to
+ support the machine class. This directories also contain any machine
+ specific supporting code.
+
+ For example, the SA1100 class is based upon the SA1100 and SA1110 SoC
+ devices, and contains the code to support the way the on-board and off-
+ board devices are used, or the device is setup, and provides that
+ machine specific "personality."
+
+ This fine-grained machine specific selection is controlled by the machine
+ type ID, which acts both as a run-time and a compile-time code selection
+ method.
+
+ You can register a new machine via the web site at:
+
+ <http://www.arm.linux.org.uk/developer/machines/>
---
-Russell King (26/01/2001)
+Russell King (15/03/2004)