-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
ARM: at91/Documentation: add a README for Atmel SoCs
Add a README file to describe Atmel SoCs (aka AT91) support in Mainline Linux: - SoC list + datasheet web links - Basic but useful information - Device Tree conventions and Work In Progress statement. Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com> Acked-by: Olof Johansson <olof@lixom.net>
- Loading branch information
Nicolas Ferre
committed
Jan 15, 2015
1 parent
eaa27f3
commit a4d1ca3
Showing
1 changed file
with
124 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,124 @@ | ||
ARM Atmel SoCs (aka AT91) | ||
========================= | ||
|
||
|
||
Introduction | ||
------------ | ||
This document gives useful information about the ARM Atmel SoCs that are | ||
currently supported in Linux Mainline (you know, the one on kernel.org). | ||
|
||
It is important to note that the Atmel | SMART ARM-based MPU product line is | ||
historically named "AT91" or "at91" throughout the Linux kernel development | ||
process even if this product prefix has completely disappeared from the | ||
official Atmel product name. Anyway, files, directories, git trees, | ||
git branches/tags and email subject always contain this "at91" sub-string. | ||
|
||
|
||
AT91 SoCs | ||
--------- | ||
Documentation and detailled datasheet for each product are available on | ||
the Atmel website: http://www.atmel.com. | ||
|
||
Flavors: | ||
* ARM 920 based SoC | ||
- at91rm9200 | ||
+ Datasheet | ||
http://www.atmel.com/Images/doc1768.pdf | ||
|
||
* ARM 926 based SoCs | ||
- at91sam9260 | ||
+ Datasheet | ||
http://www.atmel.com/Images/doc6221.pdf | ||
|
||
- at91sam9xe | ||
+ Datasheet | ||
http://www.atmel.com/Images/Atmel-6254-32-bit-ARM926EJ-S-Embedded-Microprocessor-SAM9XE_Datasheet.pdf | ||
|
||
- at91sam9261 | ||
+ Datasheet | ||
http://www.atmel.com/Images/doc6062.pdf | ||
|
||
- at91sam9263 | ||
+ Datasheet | ||
http://www.atmel.com/Images/Atmel_6249_32-bit-ARM926EJ-S-Microcontroller_SAM9263_Datasheet.pdf | ||
|
||
- at91sam9rl | ||
+ Datasheet | ||
http://www.atmel.com/Images/doc6289.pdf | ||
|
||
- at91sam9g20 | ||
+ Datasheet | ||
http://www.atmel.com/Images/doc6384.pdf | ||
|
||
- at91sam9g45 family | ||
- at91sam9g45 | ||
- at91sam9g46 | ||
- at91sam9m10 | ||
- at91sam9m11 (device superset) | ||
+ Datasheet | ||
http://www.atmel.com/Images/Atmel-6437-32-bit-ARM926-Embedded-Microprocessor-SAM9M11_Datasheet.pdf | ||
|
||
- at91sam9x5 family (aka "The 5 series") | ||
- at91sam9g15 | ||
- at91sam9g25 | ||
- at91sam9g35 | ||
- at91sam9x25 | ||
- at91sam9x35 | ||
+ Datasheet (can be considered as covering the whole family) | ||
http://www.atmel.com/Images/Atmel_11055_32-bit-ARM926EJ-S-Microcontroller_SAM9X35_Datasheet.pdf | ||
|
||
- at91sam9n12 | ||
+ Datasheet | ||
http://www.atmel.com/Images/Atmel_11063_32-bit-ARM926EJ-S-Microcontroller_SAM9N12CN11CN12_Datasheet.pdf | ||
|
||
* ARM Cortex-A5 based SoCs | ||
- sama5d3 family | ||
- sama5d31 | ||
- sama5d33 | ||
- sama5d34 | ||
- sama5d35 | ||
- sama5d36 (device superset) | ||
+ Datasheet | ||
http://www.atmel.com/Images/Atmel-11121-32-bit-Cortex-A5-Microcontroller-SAMA5D3_Datasheet.pdf | ||
|
||
* ARM Cortex-A5 + NEON based SoCs | ||
- sama5d4 family | ||
- sama5d41 | ||
- sama5d42 | ||
- sama5d43 | ||
- sama5d44 (device superset) | ||
+ Datasheet | ||
http://www.atmel.com/Images/Atmel-11238-32-bit-Cortex-A5-Microcontroller-SAMA5D4_Datasheet.pdf | ||
|
||
|
||
Linux kernel information | ||
------------------------ | ||
Linux kernel mach directory: arch/arm/mach-at91 | ||
MAINTAINERS entry is: "ARM/ATMEL AT91RM9200 AND AT91SAM ARM ARCHITECTURES" | ||
|
||
|
||
Device Tree for AT91 SoCs and boards | ||
------------------------------------ | ||
All AT91 SoCs are converted to Device Tree. Since Linux 3.19, these products | ||
must use this method to boot the Linux kernel. | ||
|
||
Work In Progress statement: | ||
Device Tree files and Device Tree bindings that apply to AT91 SoCs and boards are | ||
considered as "Unstable". To be completely clear, any at91 binding can change at | ||
any time. So, be sure to use a Device Tree Binary and a Kernel Image generated from | ||
the same source tree. | ||
Please refer to the Documentation/devicetree/bindings/ABI.txt file for a | ||
definition of a "Stable" binding/ABI. | ||
This statement will be removed by AT91 MAINTAINERS when appropriate. | ||
|
||
Naming conventions and best practice: | ||
- SoCs Device Tree Source Include files are named after the official name of | ||
the product (at91sam9g20.dtsi or sama5d33.dtsi for instance). | ||
- Device Tree Source Include files (.dtsi) are used to collect common nodes that can be | ||
shared across SoCs or boards (sama5d3.dtsi or at91sam9x5cm.dtsi for instance). | ||
When collecting nodes for a particular peripheral or topic, the identifier have to | ||
be placed at the end of the file name, separated with a "_" (at91sam9x5_can.dtsi | ||
or sama5d3_gmac.dtsi for example). | ||
- board Device Tree Source files (.dts) are prefixed by the string "at91-" so | ||
that they can be identified easily. Note that some files are historical exceptions | ||
to this rule (sama5d3[13456]ek.dts, usb_a9g20.dts or animeo_ip.dts for example). |