diff options
author | Olof Johansson <olof@lixom.net> | 2015-01-21 18:17:56 -0500 |
---|---|---|
committer | Olof Johansson <olof@lixom.net> | 2015-01-21 18:17:56 -0500 |
commit | 7f09a46fe9e0d5cb68a16c50f06e11600830b340 (patch) | |
tree | 1ebb9781a5af4ed72ab8d96513356f03fa9022d4 /Documentation | |
parent | 7fda91e731554336c08a8157b886387d890a9676 (diff) | |
parent | 29ee506d0d56f6d39cc237de2512f9cb5629cbf7 (diff) |
Merge tag 'at91-cleanup2' of git://git.kernel.org/pub/scm/linux/kernel/git/nferre/linux-at91 into next/soc
Merge "at91: cleanup for 3.20 #2" from Nicolas Ferre:
Second batch of cleanup for 3.20:
- By reworking the PM code, we can remove the AT91 more specific initialization
- We are using DT for SRAM initialization now, so we can remove its explicit
mapping
- The PMC clock driver now hosts IDLE function for at91rm9200 with other
SoCs ones.
* tag 'at91-cleanup2' of git://git.kernel.org/pub/scm/linux/kernel/git/nferre/linux-at91: (37 commits)
ARM: at91: move at91rm9200_idle() to clk/at91/pmc.c
ARM: at91: remove unused at91_init_sram
ARM: at91: sama5d4: remove useless call to at91_init_sram
ARM: at91: remove useless map_io
ARM: at91: pm: prepare for multiplatform
ARM: at91: pm: add UDP and UHP checks to newer SoCs
ARM: at91: pm: use the mmio-sram pool to access SRAM
ARM: at91: pm: rework cpu detection
ARM: at91: dts: sama5d3: add ov2640 camera sensor support
ARM: at91: dts: sama5d3: change name of pinctrl of ISI_MCK
ARM: at91: dts: sama5d3: change name of pinctrl_isi_{power,reset}
ARM: at91: dts: sama5d3: move the isi mck pin to mb
ARM: at91: dts: sama5d3: add missing pins of isi
ARM: at91: dts: sama5d3: split isi pinctrl
ARM: at91: dts: sama5d3: add isi clock
ARM: at91/dt: ethernut5: use at91sam9xe.dtsi
ARM: at91/dt: Add a dtsi for at91sam9xe
ARM: at91/dt: add SRAM nodes
ARM: at91/dt: at91rm9200ek: enable RTC
ARM: at91/dt: rm9200: add RTC node
...
Signed-off-by: Olof Johansson <olof@lixom.net>
Diffstat (limited to 'Documentation')
-rw-r--r-- | Documentation/arm/Atmel/README | 124 | ||||
-rw-r--r-- | Documentation/devicetree/bindings/arm/atmel-at91.txt | 17 |
2 files changed, 141 insertions, 0 deletions
diff --git a/Documentation/arm/Atmel/README b/Documentation/arm/Atmel/README new file mode 100644 index 000000000000..c53a19b4aab2 --- /dev/null +++ b/Documentation/arm/Atmel/README | |||
@@ -0,0 +1,124 @@ | |||
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). | ||
diff --git a/Documentation/devicetree/bindings/arm/atmel-at91.txt b/Documentation/devicetree/bindings/arm/atmel-at91.txt index 562cda9d86d9..ad319f84f560 100644 --- a/Documentation/devicetree/bindings/arm/atmel-at91.txt +++ b/Documentation/devicetree/bindings/arm/atmel-at91.txt | |||
@@ -24,6 +24,7 @@ compatible: must be one of: | |||
24 | o "atmel,at91sam9g45" | 24 | o "atmel,at91sam9g45" |
25 | o "atmel,at91sam9n12" | 25 | o "atmel,at91sam9n12" |
26 | o "atmel,at91sam9rl" | 26 | o "atmel,at91sam9rl" |
27 | o "atmel,at91sam9xe" | ||
27 | * "atmel,sama5" for SoCs using a Cortex-A5, shall be extended with the specific | 28 | * "atmel,sama5" for SoCs using a Cortex-A5, shall be extended with the specific |
28 | SoC family: | 29 | SoC family: |
29 | o "atmel,sama5d3" shall be extended with the specific SoC compatible: | 30 | o "atmel,sama5d3" shall be extended with the specific SoC compatible: |
@@ -136,3 +137,19 @@ Example: | |||
136 | compatible = "atmel,at91sam9260-rstc"; | 137 | compatible = "atmel,at91sam9260-rstc"; |
137 | reg = <0xfffffd00 0x10>; | 138 | reg = <0xfffffd00 0x10>; |
138 | }; | 139 | }; |
140 | |||
141 | Special Function Registers (SFR) | ||
142 | |||
143 | Special Function Registers (SFR) manage specific aspects of the integrated | ||
144 | memory, bridge implementations, processor and other functionality not controlled | ||
145 | elsewhere. | ||
146 | |||
147 | required properties: | ||
148 | - compatible: Should be "atmel,<chip>-sfr", "syscon". | ||
149 | <chip> can be "sama5d3" or "sama5d4". | ||
150 | - reg: Should contain registers location and length | ||
151 | |||
152 | sfr@f0038000 { | ||
153 | compatible = "atmel,sama5d3-sfr", "syscon"; | ||
154 | reg = <0xf0038000 0x60>; | ||
155 | }; | ||