Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi
[linux-block.git] / Documentation / arm / microchip.rst
CommitLineData
dc7a12bd 1=============================
8255c6b7
NF
2ARM Microchip SoCs (aka AT91)
3=============================
a4d1ca34
NF
4
5
6Introduction
7------------
8255c6b7 8This document gives useful information about the ARM Microchip SoCs that are
a4d1ca34
NF
9currently supported in Linux Mainline (you know, the one on kernel.org).
10
8255c6b7
NF
11It is important to note that the Microchip (previously Atmel) ARM-based MPU
12product line is historically named "AT91" or "at91" throughout the Linux kernel
13development process even if this product prefix has completely disappeared from
14the official Microchip product name. Anyway, files, directories, git trees,
a4d1ca34
NF
15git branches/tags and email subject always contain this "at91" sub-string.
16
17
18AT91 SoCs
19---------
f0979987 20Documentation and detailed datasheet for each product are available on
8255c6b7 21the Microchip website: http://www.microchip.com.
a4d1ca34
NF
22
23 Flavors:
24 * ARM 920 based SoC
25 - at91rm9200
dc7a12bd
MCC
26
27 * Datasheet
28
8255c6b7 29 http://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-1768-32-bit-ARM920T-Embedded-Microprocessor-AT91RM9200_Datasheet.pdf
a4d1ca34
NF
30
31 * ARM 926 based SoCs
32 - at91sam9260
dc7a12bd
MCC
33
34 * Datasheet
35
8255c6b7 36 http://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-6221-32-bit-ARM926EJ-S-Embedded-Microprocessor-SAM9260_Datasheet.pdf
a4d1ca34
NF
37
38 - at91sam9xe
dc7a12bd
MCC
39
40 * Datasheet
41
8255c6b7 42 http://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-6254-32-bit-ARM926EJ-S-Embedded-Microprocessor-SAM9XE_Datasheet.pdf
a4d1ca34
NF
43
44 - at91sam9261
dc7a12bd
MCC
45
46 * Datasheet
47
8255c6b7 48 http://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-6062-ARM926EJ-S-Microprocessor-SAM9261_Datasheet.pdf
a4d1ca34
NF
49
50 - at91sam9263
dc7a12bd
MCC
51
52 * Datasheet
53
8255c6b7 54 http://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-6249-32-bit-ARM926EJ-S-Embedded-Microprocessor-SAM9263_Datasheet.pdf
a4d1ca34
NF
55
56 - at91sam9rl
dc7a12bd
MCC
57
58 * Datasheet
59
8255c6b7 60 http://ww1.microchip.com/downloads/en/DeviceDoc/doc6289.pdf
a4d1ca34
NF
61
62 - at91sam9g20
dc7a12bd
MCC
63
64 * Datasheet
65
8255c6b7 66 http://ww1.microchip.com/downloads/en/DeviceDoc/DS60001516A.pdf
a4d1ca34
NF
67
68 - at91sam9g45 family
69 - at91sam9g45
70 - at91sam9g46
71 - at91sam9m10
72 - at91sam9m11 (device superset)
dc7a12bd
MCC
73
74 * Datasheet
75
8255c6b7 76 http://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-6437-32-bit-ARM926-Embedded-Microprocessor-SAM9M11_Datasheet.pdf
a4d1ca34
NF
77
78 - at91sam9x5 family (aka "The 5 series")
79 - at91sam9g15
80 - at91sam9g25
81 - at91sam9g35
82 - at91sam9x25
83 - at91sam9x35
dc7a12bd
MCC
84
85 * Datasheet (can be considered as covering the whole family)
86
8255c6b7 87 http://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-11055-32-bit-ARM926EJ-S-Microcontroller-SAM9X35_Datasheet.pdf
a4d1ca34
NF
88
89 - at91sam9n12
dc7a12bd
MCC
90
91 * Datasheet
92
8255c6b7 93 http://ww1.microchip.com/downloads/en/DeviceDoc/DS60001517A.pdf
a4d1ca34
NF
94
95 * ARM Cortex-A5 based SoCs
96 - sama5d3 family
dc7a12bd 97
a4d1ca34
NF
98 - sama5d31
99 - sama5d33
100 - sama5d34
101 - sama5d35
102 - sama5d36 (device superset)
dc7a12bd
MCC
103
104 * Datasheet
105
8255c6b7 106 http://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-11121-32-bit-Cortex-A5-Microcontroller-SAMA5D3_Datasheet.pdf
a4d1ca34
NF
107
108 * ARM Cortex-A5 + NEON based SoCs
109 - sama5d4 family
dc7a12bd 110
a4d1ca34
NF
111 - sama5d41
112 - sama5d42
113 - sama5d43
114 - sama5d44 (device superset)
dc7a12bd
MCC
115
116 * Datasheet
117
8255c6b7 118 http://ww1.microchip.com/downloads/en/DeviceDoc/60001525A.pdf
a4d1ca34 119
c268a743 120 - sama5d2 family
dc7a12bd 121
b2f8c3d5
NF
122 - sama5d21
123 - sama5d22
124 - sama5d23
125 - sama5d24
126 - sama5d26
127 - sama5d27 (device superset)
128 - sama5d28 (device superset + environmental monitors)
dc7a12bd
MCC
129
130 * Datasheet
131
8255c6b7 132 http://ww1.microchip.com/downloads/en/DeviceDoc/DS60001476B.pdf
c268a743 133
f0979987
AB
134 * ARM Cortex-M7 MCUs
135 - sams70 family
dc7a12bd 136
f0979987
AB
137 - sams70j19
138 - sams70j20
139 - sams70j21
140 - sams70n19
141 - sams70n20
142 - sams70n21
143 - sams70q19
144 - sams70q20
145 - sams70q21
f0979987
AB
146
147 - samv70 family
dc7a12bd 148
f0979987
AB
149 - samv70j19
150 - samv70j20
151 - samv70n19
152 - samv70n20
153 - samv70q19
154 - samv70q20
f0979987
AB
155
156 - samv71 family
dc7a12bd 157
f0979987
AB
158 - samv71j19
159 - samv71j20
160 - samv71j21
161 - samv71n19
162 - samv71n20
163 - samv71n21
164 - samv71q19
165 - samv71q20
166 - samv71q21
8255c6b7 167
dc7a12bd
MCC
168 * Datasheet
169
8255c6b7
NF
170 http://ww1.microchip.com/downloads/en/DeviceDoc/60001527A.pdf
171
a4d1ca34
NF
172
173Linux kernel information
174------------------------
175Linux kernel mach directory: arch/arm/mach-at91
8255c6b7 176MAINTAINERS entry is: "ARM/Microchip (AT91) SoC support"
a4d1ca34
NF
177
178
179Device Tree for AT91 SoCs and boards
180------------------------------------
181All AT91 SoCs are converted to Device Tree. Since Linux 3.19, these products
182must use this method to boot the Linux kernel.
183
184Work In Progress statement:
185Device Tree files and Device Tree bindings that apply to AT91 SoCs and boards are
186considered as "Unstable". To be completely clear, any at91 binding can change at
187any time. So, be sure to use a Device Tree Binary and a Kernel Image generated from
188the same source tree.
189Please refer to the Documentation/devicetree/bindings/ABI.txt file for a
190definition of a "Stable" binding/ABI.
191This statement will be removed by AT91 MAINTAINERS when appropriate.
192
193Naming conventions and best practice:
dc7a12bd 194
a4d1ca34
NF
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).