1 ARM Atmel SoCs (aka AT91)
2 =========================
7 This document gives useful information about the ARM Atmel SoCs that are
8 currently supported in Linux Mainline (you know, the one on kernel.org).
10 It is important to note that the Atmel | SMART ARM-based MPU product line is
11 historically named "AT91" or "at91" throughout the Linux kernel development
12 process even if this product prefix has completely disappeared from the
13 official Atmel product name. Anyway, files, directories, git trees,
14 git branches/tags and email subject always contain this "at91" sub-string.
19 Documentation and detailled datasheet for each product are available on
20 the Atmel website: http://www.atmel.com.
26 http://www.atmel.com/Images/doc1768.pdf
31 http://www.atmel.com/Images/doc6221.pdf
35 http://www.atmel.com/Images/Atmel-6254-32-bit-ARM926EJ-S-Embedded-Microprocessor-SAM9XE_Datasheet.pdf
39 http://www.atmel.com/Images/doc6062.pdf
43 http://www.atmel.com/Images/Atmel_6249_32-bit-ARM926EJ-S-Microcontroller_SAM9263_Datasheet.pdf
47 http://www.atmel.com/Images/doc6289.pdf
51 http://www.atmel.com/Images/doc6384.pdf
57 - at91sam9m11 (device superset)
59 http://www.atmel.com/Images/Atmel-6437-32-bit-ARM926-Embedded-Microprocessor-SAM9M11_Datasheet.pdf
61 - at91sam9x5 family (aka "The 5 series")
67 + Datasheet (can be considered as covering the whole family)
68 http://www.atmel.com/Images/Atmel_11055_32-bit-ARM926EJ-S-Microcontroller_SAM9X35_Datasheet.pdf
72 http://www.atmel.com/Images/Atmel_11063_32-bit-ARM926EJ-S-Microcontroller_SAM9N12CN11CN12_Datasheet.pdf
74 * ARM Cortex-A5 based SoCs
80 - sama5d36 (device superset)
82 http://www.atmel.com/Images/Atmel-11121-32-bit-Cortex-A5-Microcontroller-SAMA5D3_Datasheet.pdf
84 * ARM Cortex-A5 + NEON based SoCs
89 - sama5d44 (device superset)
91 http://www.atmel.com/Images/Atmel-11238-32-bit-Cortex-A5-Microcontroller-SAMA5D4_Datasheet.pdf
94 Linux kernel information
95 ------------------------
96 Linux kernel mach directory: arch/arm/mach-at91
97 MAINTAINERS entry is: "ARM/ATMEL AT91RM9200 AND AT91SAM ARM ARCHITECTURES"
100 Device Tree for AT91 SoCs and boards
101 ------------------------------------
102 All AT91 SoCs are converted to Device Tree. Since Linux 3.19, these products
103 must use this method to boot the Linux kernel.
105 Work In Progress statement:
106 Device Tree files and Device Tree bindings that apply to AT91 SoCs and boards are
107 considered as "Unstable". To be completely clear, any at91 binding can change at
108 any time. So, be sure to use a Device Tree Binary and a Kernel Image generated from
109 the same source tree.
110 Please refer to the Documentation/devicetree/bindings/ABI.txt file for a
111 definition of a "Stable" binding/ABI.
112 This statement will be removed by AT91 MAINTAINERS when appropriate.
114 Naming conventions and best practice:
115 - SoCs Device Tree Source Include files are named after the official name of
116 the product (at91sam9g20.dtsi or sama5d33.dtsi for instance).
117 - Device Tree Source Include files (.dtsi) are used to collect common nodes that can be
118 shared across SoCs or boards (sama5d3.dtsi or at91sam9x5cm.dtsi for instance).
119 When collecting nodes for a particular peripheral or topic, the identifier have to
120 be placed at the end of the file name, separated with a "_" (at91sam9x5_can.dtsi
121 or sama5d3_gmac.dtsi for example).
122 - board Device Tree Source files (.dts) are prefixed by the string "at91-" so
123 that they can be identified easily. Note that some files are historical exceptions
124 to this rule (sama5d3[13456]ek.dts, usb_a9g20.dts or animeo_ip.dts for example).