1 =============================
2 ARM Microchip SoCs (aka AT91)
3 =============================
8 This document gives useful information about the ARM Microchip SoCs that are
9 currently supported in Linux Mainline (you know, the one on kernel.org).
11 It is important to note that the Microchip (previously Atmel) ARM-based MPU
12 product line is historically named "AT91" or "at91" throughout the Linux kernel
13 development process even if this product prefix has completely disappeared from
14 the official Microchip product name. Anyway, files, directories, git trees,
15 git branches/tags and email subject always contain this "at91" sub-string.
20 Documentation and detailed datasheet for each product are available on
21 the Microchip website: http://www.microchip.com.
29 http://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-1768-32-bit-ARM920T-Embedded-Microprocessor-AT91RM9200_Datasheet.pdf
36 http://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-6221-32-bit-ARM926EJ-S-Embedded-Microprocessor-SAM9260_Datasheet.pdf
42 http://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-6254-32-bit-ARM926EJ-S-Embedded-Microprocessor-SAM9XE_Datasheet.pdf
48 http://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-6062-ARM926EJ-S-Microprocessor-SAM9261_Datasheet.pdf
54 http://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-6249-32-bit-ARM926EJ-S-Embedded-Microprocessor-SAM9263_Datasheet.pdf
60 http://ww1.microchip.com/downloads/en/DeviceDoc/doc6289.pdf
66 http://ww1.microchip.com/downloads/en/DeviceDoc/DS60001516A.pdf
72 - at91sam9m11 (device superset)
76 http://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-6437-32-bit-ARM926-Embedded-Microprocessor-SAM9M11_Datasheet.pdf
78 - at91sam9x5 family (aka "The 5 series")
85 * Datasheet (can be considered as covering the whole family)
87 http://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-11055-32-bit-ARM926EJ-S-Microcontroller-SAM9X35_Datasheet.pdf
93 http://ww1.microchip.com/downloads/en/DeviceDoc/DS60001517A.pdf
95 * ARM Cortex-A5 based SoCs
102 - sama5d36 (device superset)
106 http://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-11121-32-bit-Cortex-A5-Microcontroller-SAMA5D3_Datasheet_B.pdf
108 * ARM Cortex-A5 + NEON based SoCs
114 - sama5d44 (device superset)
118 http://ww1.microchip.com/downloads/en/DeviceDoc/60001525A.pdf
127 - sama5d27 (device superset)
128 - sama5d28 (device superset + environmental monitors)
132 http://ww1.microchip.com/downloads/en/DeviceDoc/DS60001476B.pdf
170 http://ww1.microchip.com/downloads/en/DeviceDoc/SAM-E70-S70-V70-V71-Family-Data-Sheet-DS60001527D.pdf
173 Linux kernel information
174 ------------------------
175 Linux kernel mach directory: arch/arm/mach-at91
176 MAINTAINERS entry is: "ARM/Microchip (AT91) SoC support"
179 Device Tree for AT91 SoCs and boards
180 ------------------------------------
181 All AT91 SoCs are converted to Device Tree. Since Linux 3.19, these products
182 must use this method to boot the Linux kernel.
184 Work In Progress statement:
185 Device Tree files and Device Tree bindings that apply to AT91 SoCs and boards are
186 considered as "Unstable". To be completely clear, any at91 binding can change at
187 any time. So, be sure to use a Device Tree Binary and a Kernel Image generated from
188 the same source tree.
189 Please refer to the Documentation/devicetree/bindings/ABI.txt file for a
190 definition of a "Stable" binding/ABI.
191 This statement will be removed by AT91 MAINTAINERS when appropriate.
193 Naming conventions and best practice:
195 - SoCs Device Tree Source Include files are named after the official name of
196 the product (at91sam9g20.dtsi or sama5d33.dtsi for instance).
197 - Device Tree Source Include files (.dtsi) are used to collect common nodes that can be
198 shared across SoCs or boards (sama5d3.dtsi or at91sam9x5cm.dtsi for instance).
199 When collecting nodes for a particular peripheral or topic, the identifier have to
200 be placed at the end of the file name, separated with a "_" (at91sam9x5_can.dtsi
201 or sama5d3_gmac.dtsi for example).
202 - board Device Tree Source files (.dts) are prefixed by the string "at91-" so
203 that they can be identified easily. Note that some files are historical exceptions
204 to this rule (sama5d3[13456]ek.dts, usb_a9g20.dts or animeo_ip.dts for example).