Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

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>

+124
+124
Documentation/arm/Atmel/README
··· 1 + ARM Atmel SoCs (aka AT91) 2 + ========================= 3 + 4 + 5 + Introduction 6 + ------------ 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). 9 + 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. 15 + 16 + 17 + AT91 SoCs 18 + --------- 19 + Documentation and detailled datasheet for each product are available on 20 + the Atmel website: http://www.atmel.com. 21 + 22 + Flavors: 23 + * ARM 920 based SoC 24 + - at91rm9200 25 + + Datasheet 26 + http://www.atmel.com/Images/doc1768.pdf 27 + 28 + * ARM 926 based SoCs 29 + - at91sam9260 30 + + Datasheet 31 + http://www.atmel.com/Images/doc6221.pdf 32 + 33 + - at91sam9xe 34 + + Datasheet 35 + http://www.atmel.com/Images/Atmel-6254-32-bit-ARM926EJ-S-Embedded-Microprocessor-SAM9XE_Datasheet.pdf 36 + 37 + - at91sam9261 38 + + Datasheet 39 + http://www.atmel.com/Images/doc6062.pdf 40 + 41 + - at91sam9263 42 + + Datasheet 43 + http://www.atmel.com/Images/Atmel_6249_32-bit-ARM926EJ-S-Microcontroller_SAM9263_Datasheet.pdf 44 + 45 + - at91sam9rl 46 + + Datasheet 47 + http://www.atmel.com/Images/doc6289.pdf 48 + 49 + - at91sam9g20 50 + + Datasheet 51 + http://www.atmel.com/Images/doc6384.pdf 52 + 53 + - at91sam9g45 family 54 + - at91sam9g45 55 + - at91sam9g46 56 + - at91sam9m10 57 + - at91sam9m11 (device superset) 58 + + Datasheet 59 + http://www.atmel.com/Images/Atmel-6437-32-bit-ARM926-Embedded-Microprocessor-SAM9M11_Datasheet.pdf 60 + 61 + - at91sam9x5 family (aka "The 5 series") 62 + - at91sam9g15 63 + - at91sam9g25 64 + - at91sam9g35 65 + - at91sam9x25 66 + - at91sam9x35 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 69 + 70 + - at91sam9n12 71 + + Datasheet 72 + http://www.atmel.com/Images/Atmel_11063_32-bit-ARM926EJ-S-Microcontroller_SAM9N12CN11CN12_Datasheet.pdf 73 + 74 + * ARM Cortex-A5 based SoCs 75 + - sama5d3 family 76 + - sama5d31 77 + - sama5d33 78 + - sama5d34 79 + - sama5d35 80 + - sama5d36 (device superset) 81 + + Datasheet 82 + http://www.atmel.com/Images/Atmel-11121-32-bit-Cortex-A5-Microcontroller-SAMA5D3_Datasheet.pdf 83 + 84 + * ARM Cortex-A5 + NEON based SoCs 85 + - sama5d4 family 86 + - sama5d41 87 + - sama5d42 88 + - sama5d43 89 + - sama5d44 (device superset) 90 + + Datasheet 91 + http://www.atmel.com/Images/Atmel-11238-32-bit-Cortex-A5-Microcontroller-SAMA5D4_Datasheet.pdf 92 + 93 + 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" 98 + 99 + 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. 104 + 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. 113 + 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).