diff options
author | Olof Johansson <olof@lixom.net> | 2017-01-30 00:09:19 -0500 |
---|---|---|
committer | Olof Johansson <olof@lixom.net> | 2017-01-30 00:09:19 -0500 |
commit | ac43d9e0e5647052d78ba1e8d939549262fc268e (patch) | |
tree | adb6d7994b8c4cda7c2209248d902b3845482a89 | |
parent | bb414fc1901c28fa05eea9e4446dfaaa2c23b371 (diff) | |
parent | 73447f68d7b2bc1df870da88b0e21d2bc1afc025 (diff) |
Merge tag 'imx-dt64-4.11' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into next/dt64
Freescale arm64 device tree updates for 4.11:
- Add support for LS1012A SoC which is an ARMv8 SoC with single
Cortex-A53 core, and the corresponding board support: FRDM, QDS
and RDB.
- Enable TMU (Thermal Monitoring Unit) support for LS1046A SoC.
- Enable PCA9547 device for ls2080a-rdb board by removing 'disabled'
status setting.
* tag 'imx-dt64-4.11' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
dt-bindings: clockgen: Add compatible string for LS1012A
Documentation: DT: add LS1012A compatible for SCFG and DCFG
Documentation: DT: Add entry for FSL LS1012A RDB, FRDM, QDS boards
arm64: dts: ls1046a: Add TMU device tree support
arm64: dts: Add support for FSL's LS1012A SoC
arm64: dts: ls2080a-rdb: remove disable status of pca9547
Signed-off-by: Olof Johansson <olof@lixom.net>
-rw-r--r-- | Documentation/devicetree/bindings/arm/fsl.txt | 20 | ||||
-rw-r--r-- | Documentation/devicetree/bindings/clock/qoriq-clock.txt | 1 | ||||
-rw-r--r-- | arch/arm64/boot/dts/freescale/Makefile | 3 | ||||
-rw-r--r-- | arch/arm64/boot/dts/freescale/fsl-ls1012a-frdm.dts | 115 | ||||
-rw-r--r-- | arch/arm64/boot/dts/freescale/fsl-ls1012a-qds.dts | 128 | ||||
-rw-r--r-- | arch/arm64/boot/dts/freescale/fsl-ls1012a-rdb.dts | 59 | ||||
-rw-r--r-- | arch/arm64/boot/dts/freescale/fsl-ls1012a.dtsi | 247 | ||||
-rw-r--r-- | arch/arm64/boot/dts/freescale/fsl-ls1046a.dtsi | 80 | ||||
-rw-r--r-- | arch/arm64/boot/dts/freescale/fsl-ls2080a-rdb.dts | 1 |
9 files changed, 651 insertions, 3 deletions
diff --git a/Documentation/devicetree/bindings/arm/fsl.txt b/Documentation/devicetree/bindings/arm/fsl.txt index d6ee9c6e1dbb..c9c567ae227f 100644 --- a/Documentation/devicetree/bindings/arm/fsl.txt +++ b/Documentation/devicetree/bindings/arm/fsl.txt | |||
@@ -108,7 +108,7 @@ status. | |||
108 | - compatible: Should contain a chip-specific compatible string, | 108 | - compatible: Should contain a chip-specific compatible string, |
109 | Chip-specific strings are of the form "fsl,<chip>-scfg", | 109 | Chip-specific strings are of the form "fsl,<chip>-scfg", |
110 | The following <chip>s are known to be supported: | 110 | The following <chip>s are known to be supported: |
111 | ls1021a, ls1043a, ls1046a, ls2080a. | 111 | ls1012a, ls1021a, ls1043a, ls1046a, ls2080a. |
112 | 112 | ||
113 | - reg: should contain base address and length of SCFG memory-mapped registers | 113 | - reg: should contain base address and length of SCFG memory-mapped registers |
114 | 114 | ||
@@ -126,7 +126,7 @@ core start address and release the secondary core from holdoff and startup. | |||
126 | - compatible: Should contain a chip-specific compatible string, | 126 | - compatible: Should contain a chip-specific compatible string, |
127 | Chip-specific strings are of the form "fsl,<chip>-dcfg", | 127 | Chip-specific strings are of the form "fsl,<chip>-dcfg", |
128 | The following <chip>s are known to be supported: | 128 | The following <chip>s are known to be supported: |
129 | ls1021a, ls1043a, ls1046a, ls2080a. | 129 | ls1012a, ls1021a, ls1043a, ls1046a, ls2080a. |
130 | 130 | ||
131 | - reg : should contain base address and length of DCFG memory-mapped registers | 131 | - reg : should contain base address and length of DCFG memory-mapped registers |
132 | 132 | ||
@@ -139,6 +139,22 @@ Example: | |||
139 | Freescale ARMv8 based Layerscape SoC family Device Tree Bindings | 139 | Freescale ARMv8 based Layerscape SoC family Device Tree Bindings |
140 | ---------------------------------------------------------------- | 140 | ---------------------------------------------------------------- |
141 | 141 | ||
142 | LS1012A SoC | ||
143 | Required root node properties: | ||
144 | - compatible = "fsl,ls1012a"; | ||
145 | |||
146 | LS1012A ARMv8 based RDB Board | ||
147 | Required root node properties: | ||
148 | - compatible = "fsl,ls1012a-rdb", "fsl,ls1012a"; | ||
149 | |||
150 | LS1012A ARMv8 based FRDM Board | ||
151 | Required root node properties: | ||
152 | - compatible = "fsl,ls1012a-frdm", "fsl,ls1012a"; | ||
153 | |||
154 | LS1012A ARMv8 based QDS Board | ||
155 | Required root node properties: | ||
156 | - compatible = "fsl,ls1012a-qds", "fsl,ls1012a"; | ||
157 | |||
142 | LS1043A SoC | 158 | LS1043A SoC |
143 | Required root node properties: | 159 | Required root node properties: |
144 | - compatible = "fsl,ls1043a"; | 160 | - compatible = "fsl,ls1043a"; |
diff --git a/Documentation/devicetree/bindings/clock/qoriq-clock.txt b/Documentation/devicetree/bindings/clock/qoriq-clock.txt index df9cb5ac5f72..aa3526f229a7 100644 --- a/Documentation/devicetree/bindings/clock/qoriq-clock.txt +++ b/Documentation/devicetree/bindings/clock/qoriq-clock.txt | |||
@@ -31,6 +31,7 @@ Required properties: | |||
31 | * "fsl,t4240-clockgen" | 31 | * "fsl,t4240-clockgen" |
32 | * "fsl,b4420-clockgen" | 32 | * "fsl,b4420-clockgen" |
33 | * "fsl,b4860-clockgen" | 33 | * "fsl,b4860-clockgen" |
34 | * "fsl,ls1012a-clockgen" | ||
34 | * "fsl,ls1021a-clockgen" | 35 | * "fsl,ls1021a-clockgen" |
35 | * "fsl,ls1043a-clockgen" | 36 | * "fsl,ls1043a-clockgen" |
36 | * "fsl,ls1046a-clockgen" | 37 | * "fsl,ls1046a-clockgen" |
diff --git a/arch/arm64/boot/dts/freescale/Makefile b/arch/arm64/boot/dts/freescale/Makefile index 66027181fba4..39db645b268e 100644 --- a/arch/arm64/boot/dts/freescale/Makefile +++ b/arch/arm64/boot/dts/freescale/Makefile | |||
@@ -1,3 +1,6 @@ | |||
1 | dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1012a-frdm.dtb | ||
2 | dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1012a-qds.dtb | ||
3 | dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1012a-rdb.dtb | ||
1 | dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1043a-qds.dtb | 4 | dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1043a-qds.dtb |
2 | dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1043a-rdb.dtb | 5 | dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1043a-rdb.dtb |
3 | dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1046a-qds.dtb | 6 | dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1046a-qds.dtb |
diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1012a-frdm.dts b/arch/arm64/boot/dts/freescale/fsl-ls1012a-frdm.dts new file mode 100644 index 000000000000..a619f6496a4c --- /dev/null +++ b/arch/arm64/boot/dts/freescale/fsl-ls1012a-frdm.dts | |||
@@ -0,0 +1,115 @@ | |||
1 | /* | ||
2 | * Device Tree file for Freescale LS1012A Freedom Board. | ||
3 | * | ||
4 | * Copyright 2016, Freescale Semiconductor | ||
5 | * | ||
6 | * This file is dual-licensed: you can use it either under the terms | ||
7 | * of the GPLv2 or the X11 license, at your option. Note that this dual | ||
8 | * licensing only applies to this file, and not this project as a | ||
9 | * whole. | ||
10 | * | ||
11 | * a) This library is free software; you can redistribute it and/or | ||
12 | * modify it under the terms of the GNU General Public License as | ||
13 | * published by the Free Software Foundation; either version 2 of the | ||
14 | * License, or (at your option) any later version. | ||
15 | * | ||
16 | * This library is distributed in the hope that it will be useful, | ||
17 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
18 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
19 | * GNU General Public License for more details. | ||
20 | * | ||
21 | * Or, alternatively, | ||
22 | * | ||
23 | * b) Permission is hereby granted, free of charge, to any person | ||
24 | * obtaining a copy of this software and associated documentation | ||
25 | * files (the "Software"), to deal in the Software without | ||
26 | * restriction, including without limitation the rights to use, | ||
27 | * copy, modify, merge, publish, distribute, sublicense, and/or | ||
28 | * sell copies of the Software, and to permit persons to whom the | ||
29 | * Software is furnished to do so, subject to the following | ||
30 | * conditions: | ||
31 | * | ||
32 | * The above copyright notice and this permission notice shall be | ||
33 | * included in all copies or substantial portions of the Software. | ||
34 | * | ||
35 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | ||
36 | * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES | ||
37 | * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND | ||
38 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT | ||
39 | * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, | ||
40 | * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | ||
41 | * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR | ||
42 | * OTHER DEALINGS IN THE SOFTWARE. | ||
43 | */ | ||
44 | /dts-v1/; | ||
45 | |||
46 | #include "fsl-ls1012a.dtsi" | ||
47 | |||
48 | / { | ||
49 | model = "LS1012A Freedom Board"; | ||
50 | compatible = "fsl,ls1012a-frdm", "fsl,ls1012a"; | ||
51 | |||
52 | sys_mclk: clock-mclk { | ||
53 | compatible = "fixed-clock"; | ||
54 | #clock-cells = <0>; | ||
55 | clock-frequency = <25000000>; | ||
56 | }; | ||
57 | |||
58 | reg_1p8v: regulator-1p8v { | ||
59 | compatible = "regulator-fixed"; | ||
60 | regulator-name = "1P8V"; | ||
61 | regulator-min-microvolt = <1800000>; | ||
62 | regulator-max-microvolt = <1800000>; | ||
63 | regulator-always-on; | ||
64 | }; | ||
65 | |||
66 | sound { | ||
67 | compatible = "simple-audio-card"; | ||
68 | simple-audio-card,format = "i2s"; | ||
69 | simple-audio-card,widgets = | ||
70 | "Microphone", "Microphone Jack", | ||
71 | "Headphone", "Headphone Jack", | ||
72 | "Speaker", "Speaker Ext", | ||
73 | "Line", "Line In Jack"; | ||
74 | simple-audio-card,routing = | ||
75 | "MIC_IN", "Microphone Jack", | ||
76 | "Microphone Jack", "Mic Bias", | ||
77 | "LINE_IN", "Line In Jack", | ||
78 | "Headphone Jack", "HP_OUT", | ||
79 | "Speaker Ext", "LINE_OUT"; | ||
80 | |||
81 | simple-audio-card,cpu { | ||
82 | sound-dai = <&sai2>; | ||
83 | frame-master; | ||
84 | bitclock-master; | ||
85 | }; | ||
86 | |||
87 | simple-audio-card,codec { | ||
88 | sound-dai = <&codec>; | ||
89 | frame-master; | ||
90 | bitclock-master; | ||
91 | system-clock-frequency = <25000000>; | ||
92 | }; | ||
93 | }; | ||
94 | }; | ||
95 | |||
96 | &duart0 { | ||
97 | status = "okay"; | ||
98 | }; | ||
99 | |||
100 | &i2c0 { | ||
101 | status = "okay"; | ||
102 | |||
103 | codec: sgtl5000@a { | ||
104 | #sound-dai-cells = <0>; | ||
105 | compatible = "fsl,sgtl5000"; | ||
106 | reg = <0xa>; | ||
107 | VDDA-supply = <®_1p8v>; | ||
108 | VDDIO-supply = <®_1p8v>; | ||
109 | clocks = <&sys_mclk>; | ||
110 | }; | ||
111 | }; | ||
112 | |||
113 | &sai2 { | ||
114 | status = "okay"; | ||
115 | }; | ||
diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1012a-qds.dts b/arch/arm64/boot/dts/freescale/fsl-ls1012a-qds.dts new file mode 100644 index 000000000000..14a67f1709e7 --- /dev/null +++ b/arch/arm64/boot/dts/freescale/fsl-ls1012a-qds.dts | |||
@@ -0,0 +1,128 @@ | |||
1 | /* | ||
2 | * Device Tree file for Freescale LS1012A QDS Board. | ||
3 | * | ||
4 | * Copyright 2016, Freescale Semiconductor | ||
5 | * | ||
6 | * This file is dual-licensed: you can use it either under the terms | ||
7 | * of the GPLv2 or the X11 license, at your option. Note that this dual | ||
8 | * licensing only applies to this file, and not this project as a | ||
9 | * whole. | ||
10 | * | ||
11 | * a) This library is free software; you can redistribute it and/or | ||
12 | * modify it under the terms of the GNU General Public License as | ||
13 | * published by the Free Software Foundation; either version 2 of the | ||
14 | * License, or (at your option) any later version. | ||
15 | * | ||
16 | * This library is distributed in the hope that it will be useful, | ||
17 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
18 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
19 | * GNU General Public License for more details. | ||
20 | * | ||
21 | * Or, alternatively, | ||
22 | * | ||
23 | * b) Permission is hereby granted, free of charge, to any person | ||
24 | * obtaining a copy of this software and associated documentation | ||
25 | * files (the "Software"), to deal in the Software without | ||
26 | * restriction, including without limitation the rights to use, | ||
27 | * copy, modify, merge, publish, distribute, sublicense, and/or | ||
28 | * sell copies of the Software, and to permit persons to whom the | ||
29 | * Software is furnished to do so, subject to the following | ||
30 | * conditions: | ||
31 | * | ||
32 | * The above copyright notice and this permission notice shall be | ||
33 | * included in all copies or substantial portions of the Software. | ||
34 | * | ||
35 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | ||
36 | * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES | ||
37 | * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND | ||
38 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT | ||
39 | * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, | ||
40 | * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | ||
41 | * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR | ||
42 | * OTHER DEALINGS IN THE SOFTWARE. | ||
43 | */ | ||
44 | /dts-v1/; | ||
45 | |||
46 | #include "fsl-ls1012a.dtsi" | ||
47 | |||
48 | / { | ||
49 | model = "LS1012A QDS Board"; | ||
50 | compatible = "fsl,ls1012a-qds", "fsl,ls1012a"; | ||
51 | |||
52 | sys_mclk: clock-mclk { | ||
53 | compatible = "fixed-clock"; | ||
54 | #clock-cells = <0>; | ||
55 | clock-frequency = <24576000>; | ||
56 | }; | ||
57 | |||
58 | reg_3p3v: regulator-3p3v { | ||
59 | compatible = "regulator-fixed"; | ||
60 | regulator-name = "3P3V"; | ||
61 | regulator-min-microvolt = <3300000>; | ||
62 | regulator-max-microvolt = <3300000>; | ||
63 | regulator-always-on; | ||
64 | }; | ||
65 | |||
66 | sound { | ||
67 | compatible = "simple-audio-card"; | ||
68 | simple-audio-card,format = "i2s"; | ||
69 | simple-audio-card,widgets = | ||
70 | "Microphone", "Microphone Jack", | ||
71 | "Headphone", "Headphone Jack", | ||
72 | "Speaker", "Speaker Ext", | ||
73 | "Line", "Line In Jack"; | ||
74 | simple-audio-card,routing = | ||
75 | "MIC_IN", "Microphone Jack", | ||
76 | "Microphone Jack", "Mic Bias", | ||
77 | "LINE_IN", "Line In Jack", | ||
78 | "Headphone Jack", "HP_OUT", | ||
79 | "Speaker Ext", "LINE_OUT"; | ||
80 | |||
81 | simple-audio-card,cpu { | ||
82 | sound-dai = <&sai2>; | ||
83 | frame-master; | ||
84 | bitclock-master; | ||
85 | }; | ||
86 | |||
87 | simple-audio-card,codec { | ||
88 | sound-dai = <&codec>; | ||
89 | frame-master; | ||
90 | bitclock-master; | ||
91 | system-clock-frequency = <24576000>; | ||
92 | }; | ||
93 | }; | ||
94 | }; | ||
95 | |||
96 | &duart0 { | ||
97 | status = "okay"; | ||
98 | }; | ||
99 | |||
100 | &i2c0 { | ||
101 | status = "okay"; | ||
102 | |||
103 | pca9547@77 { | ||
104 | compatible = "nxp,pca9547"; | ||
105 | reg = <0x77>; | ||
106 | #address-cells = <1>; | ||
107 | #size-cells = <0>; | ||
108 | |||
109 | i2c@4 { | ||
110 | #address-cells = <1>; | ||
111 | #size-cells = <0>; | ||
112 | reg = <0x4>; | ||
113 | |||
114 | codec: sgtl5000@a { | ||
115 | #sound-dai-cells = <0>; | ||
116 | compatible = "fsl,sgtl5000"; | ||
117 | reg = <0xa>; | ||
118 | VDDA-supply = <®_3p3v>; | ||
119 | VDDIO-supply = <®_3p3v>; | ||
120 | clocks = <&sys_mclk>; | ||
121 | }; | ||
122 | }; | ||
123 | }; | ||
124 | }; | ||
125 | |||
126 | &sai2 { | ||
127 | status = "okay"; | ||
128 | }; | ||
diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1012a-rdb.dts b/arch/arm64/boot/dts/freescale/fsl-ls1012a-rdb.dts new file mode 100644 index 000000000000..62c5c7123a15 --- /dev/null +++ b/arch/arm64/boot/dts/freescale/fsl-ls1012a-rdb.dts | |||
@@ -0,0 +1,59 @@ | |||
1 | /* | ||
2 | * Device Tree file for Freescale LS1012A RDB Board. | ||
3 | * | ||
4 | * Copyright 2016, Freescale Semiconductor | ||
5 | * | ||
6 | * This file is dual-licensed: you can use it either under the terms | ||
7 | * of the GPLv2 or the X11 license, at your option. Note that this dual | ||
8 | * licensing only applies to this file, and not this project as a | ||
9 | * whole. | ||
10 | * | ||
11 | * a) This library is free software; you can redistribute it and/or | ||
12 | * modify it under the terms of the GNU General Public License as | ||
13 | * published by the Free Software Foundation; either version 2 of the | ||
14 | * License, or (at your option) any later version. | ||
15 | * | ||
16 | * This library is distributed in the hope that it will be useful, | ||
17 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
18 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
19 | * GNU General Public License for more details. | ||
20 | * | ||
21 | * Or, alternatively, | ||
22 | * | ||
23 | * b) Permission is hereby granted, free of charge, to any person | ||
24 | * obtaining a copy of this software and associated documentation | ||
25 | * files (the "Software"), to deal in the Software without | ||
26 | * restriction, including without limitation the rights to use, | ||
27 | * copy, modify, merge, publish, distribute, sublicense, and/or | ||
28 | * sell copies of the Software, and to permit persons to whom the | ||
29 | * Software is furnished to do so, subject to the following | ||
30 | * conditions: | ||
31 | * | ||
32 | * The above copyright notice and this permission notice shall be | ||
33 | * included in all copies or substantial portions of the Software. | ||
34 | * | ||
35 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | ||
36 | * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES | ||
37 | * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND | ||
38 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT | ||
39 | * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, | ||
40 | * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | ||
41 | * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR | ||
42 | * OTHER DEALINGS IN THE SOFTWARE. | ||
43 | */ | ||
44 | /dts-v1/; | ||
45 | |||
46 | #include "fsl-ls1012a.dtsi" | ||
47 | |||
48 | / { | ||
49 | model = "LS1012A RDB Board"; | ||
50 | compatible = "fsl,ls1012a-rdb", "fsl,ls1012a"; | ||
51 | }; | ||
52 | |||
53 | &duart0 { | ||
54 | status = "okay"; | ||
55 | }; | ||
56 | |||
57 | &i2c0 { | ||
58 | status = "okay"; | ||
59 | }; | ||
diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1012a.dtsi b/arch/arm64/boot/dts/freescale/fsl-ls1012a.dtsi new file mode 100644 index 000000000000..cffebb4b3df1 --- /dev/null +++ b/arch/arm64/boot/dts/freescale/fsl-ls1012a.dtsi | |||
@@ -0,0 +1,247 @@ | |||
1 | /* | ||
2 | * Device Tree Include file for Freescale Layerscape-1012A family SoC. | ||
3 | * | ||
4 | * Copyright 2016, Freescale Semiconductor | ||
5 | * | ||
6 | * This file is dual-licensed: you can use it either under the terms | ||
7 | * of the GPLv2 or the X11 license, at your option. Note that this dual | ||
8 | * licensing only applies to this file, and not this project as a | ||
9 | * whole. | ||
10 | * | ||
11 | * a) This library is free software; you can redistribute it and/or | ||
12 | * modify it under the terms of the GNU General Public License as | ||
13 | * published by the Free Software Foundation; either version 2 of the | ||
14 | * License, or (at your option) any later version. | ||
15 | * | ||
16 | * This library is distributed in the hope that it will be useful, | ||
17 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
18 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
19 | * GNU General Public License for more details. | ||
20 | * | ||
21 | * Or, alternatively, | ||
22 | * | ||
23 | * b) Permission is hereby granted, free of charge, to any person | ||
24 | * obtaining a copy of this software and associated documentation | ||
25 | * files (the "Software"), to deal in the Software without | ||
26 | * restriction, including without limitation the rights to use, | ||
27 | * copy, modify, merge, publish, distribute, sublicense, and/or | ||
28 | * sell copies of the Software, and to permit persons to whom the | ||
29 | * Software is furnished to do so, subject to the following | ||
30 | * conditions: | ||
31 | * | ||
32 | * The above copyright notice and this permission notice shall be | ||
33 | * included in all copies or substantial portions of the Software. | ||
34 | * | ||
35 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | ||
36 | * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES | ||
37 | * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND | ||
38 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT | ||
39 | * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, | ||
40 | * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | ||
41 | * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR | ||
42 | * OTHER DEALINGS IN THE SOFTWARE. | ||
43 | */ | ||
44 | |||
45 | #include <dt-bindings/interrupt-controller/irq.h> | ||
46 | |||
47 | / { | ||
48 | compatible = "fsl,ls1012a"; | ||
49 | interrupt-parent = <&gic>; | ||
50 | #address-cells = <2>; | ||
51 | #size-cells = <2>; | ||
52 | |||
53 | cpus { | ||
54 | #address-cells = <1>; | ||
55 | #size-cells = <0>; | ||
56 | |||
57 | cpu0: cpu@0 { | ||
58 | device_type = "cpu"; | ||
59 | compatible = "arm,cortex-a53"; | ||
60 | reg = <0x0>; | ||
61 | clocks = <&clockgen 1 0>; | ||
62 | #cooling-cells = <2>; | ||
63 | }; | ||
64 | }; | ||
65 | |||
66 | sysclk: sysclk { | ||
67 | compatible = "fixed-clock"; | ||
68 | #clock-cells = <0>; | ||
69 | clock-frequency = <100000000>; | ||
70 | clock-output-names = "sysclk"; | ||
71 | }; | ||
72 | |||
73 | timer { | ||
74 | compatible = "arm,armv8-timer"; | ||
75 | interrupts = <1 13 IRQ_TYPE_LEVEL_LOW>,/* Physical Secure PPI */ | ||
76 | <1 14 IRQ_TYPE_LEVEL_LOW>,/* Physical Non-Secure PPI */ | ||
77 | <1 11 IRQ_TYPE_LEVEL_LOW>,/* Virtual PPI */ | ||
78 | <1 10 IRQ_TYPE_LEVEL_LOW>;/* Hypervisor PPI */ | ||
79 | }; | ||
80 | |||
81 | pmu { | ||
82 | compatible = "arm,armv8-pmuv3"; | ||
83 | interrupts = <0 106 IRQ_TYPE_LEVEL_HIGH>; | ||
84 | }; | ||
85 | |||
86 | gic: interrupt-controller@1400000 { | ||
87 | compatible = "arm,gic-400"; | ||
88 | #interrupt-cells = <3>; | ||
89 | interrupt-controller; | ||
90 | reg = <0x0 0x1401000 0 0x1000>, /* GICD */ | ||
91 | <0x0 0x1402000 0 0x2000>, /* GICC */ | ||
92 | <0x0 0x1404000 0 0x2000>, /* GICH */ | ||
93 | <0x0 0x1406000 0 0x2000>; /* GICV */ | ||
94 | interrupts = <1 9 IRQ_TYPE_LEVEL_LOW>; | ||
95 | }; | ||
96 | |||
97 | reboot { | ||
98 | compatible = "syscon-reboot"; | ||
99 | regmap = <&dcfg>; | ||
100 | offset = <0xb0>; | ||
101 | mask = <0x02>; | ||
102 | }; | ||
103 | |||
104 | soc { | ||
105 | compatible = "simple-bus"; | ||
106 | #address-cells = <2>; | ||
107 | #size-cells = <2>; | ||
108 | ranges; | ||
109 | |||
110 | scfg: scfg@1570000 { | ||
111 | compatible = "fsl,ls1012a-scfg", "syscon"; | ||
112 | reg = <0x0 0x1570000 0x0 0x10000>; | ||
113 | big-endian; | ||
114 | }; | ||
115 | |||
116 | dcfg: dcfg@1ee0000 { | ||
117 | compatible = "fsl,ls1012a-dcfg", | ||
118 | "syscon"; | ||
119 | reg = <0x0 0x1ee0000 0x0 0x10000>; | ||
120 | big-endian; | ||
121 | }; | ||
122 | |||
123 | clockgen: clocking@1ee1000 { | ||
124 | compatible = "fsl,ls1012a-clockgen"; | ||
125 | reg = <0x0 0x1ee1000 0x0 0x1000>; | ||
126 | #clock-cells = <2>; | ||
127 | clocks = <&sysclk>; | ||
128 | }; | ||
129 | |||
130 | i2c0: i2c@2180000 { | ||
131 | compatible = "fsl,vf610-i2c"; | ||
132 | #address-cells = <1>; | ||
133 | #size-cells = <0>; | ||
134 | reg = <0x0 0x2180000 0x0 0x10000>; | ||
135 | interrupts = <0 56 IRQ_TYPE_LEVEL_HIGH>; | ||
136 | clocks = <&clockgen 4 0>; | ||
137 | status = "disabled"; | ||
138 | }; | ||
139 | |||
140 | i2c1: i2c@2190000 { | ||
141 | compatible = "fsl,vf610-i2c"; | ||
142 | #address-cells = <1>; | ||
143 | #size-cells = <0>; | ||
144 | reg = <0x0 0x2190000 0x0 0x10000>; | ||
145 | interrupts = <0 57 IRQ_TYPE_LEVEL_HIGH>; | ||
146 | clocks = <&clockgen 4 0>; | ||
147 | status = "disabled"; | ||
148 | }; | ||
149 | |||
150 | duart0: serial@21c0500 { | ||
151 | compatible = "fsl,ns16550", "ns16550a"; | ||
152 | reg = <0x00 0x21c0500 0x0 0x100>; | ||
153 | interrupts = <0 54 IRQ_TYPE_LEVEL_HIGH>; | ||
154 | clocks = <&clockgen 4 0>; | ||
155 | status = "disabled"; | ||
156 | }; | ||
157 | |||
158 | duart1: serial@21c0600 { | ||
159 | compatible = "fsl,ns16550", "ns16550a"; | ||
160 | reg = <0x00 0x21c0600 0x0 0x100>; | ||
161 | interrupts = <0 54 IRQ_TYPE_LEVEL_HIGH>; | ||
162 | clocks = <&clockgen 4 0>; | ||
163 | status = "disabled"; | ||
164 | }; | ||
165 | |||
166 | gpio0: gpio@2300000 { | ||
167 | compatible = "fsl,qoriq-gpio"; | ||
168 | reg = <0x0 0x2300000 0x0 0x10000>; | ||
169 | interrupts = <0 66 IRQ_TYPE_LEVEL_HIGH>; | ||
170 | gpio-controller; | ||
171 | #gpio-cells = <2>; | ||
172 | interrupt-controller; | ||
173 | #interrupt-cells = <2>; | ||
174 | }; | ||
175 | |||
176 | gpio1: gpio@2310000 { | ||
177 | compatible = "fsl,qoriq-gpio"; | ||
178 | reg = <0x0 0x2310000 0x0 0x10000>; | ||
179 | interrupts = <0 67 IRQ_TYPE_LEVEL_HIGH>; | ||
180 | gpio-controller; | ||
181 | #gpio-cells = <2>; | ||
182 | interrupt-controller; | ||
183 | #interrupt-cells = <2>; | ||
184 | }; | ||
185 | |||
186 | wdog0: wdog@2ad0000 { | ||
187 | compatible = "fsl,ls1012a-wdt", | ||
188 | "fsl,imx21-wdt"; | ||
189 | reg = <0x0 0x2ad0000 0x0 0x10000>; | ||
190 | interrupts = <0 83 IRQ_TYPE_LEVEL_HIGH>; | ||
191 | clocks = <&clockgen 4 0>; | ||
192 | big-endian; | ||
193 | }; | ||
194 | |||
195 | sai1: sai@2b50000 { | ||
196 | #sound-dai-cells = <0>; | ||
197 | compatible = "fsl,vf610-sai"; | ||
198 | reg = <0x0 0x2b50000 0x0 0x10000>; | ||
199 | interrupts = <0 148 IRQ_TYPE_LEVEL_HIGH>; | ||
200 | clocks = <&clockgen 4 3>, <&clockgen 4 3>, | ||
201 | <&clockgen 4 3>, <&clockgen 4 3>; | ||
202 | clock-names = "bus", "mclk1", "mclk2", "mclk3"; | ||
203 | dma-names = "tx", "rx"; | ||
204 | dmas = <&edma0 1 47>, | ||
205 | <&edma0 1 46>; | ||
206 | status = "disabled"; | ||
207 | }; | ||
208 | |||
209 | sai2: sai@2b60000 { | ||
210 | #sound-dai-cells = <0>; | ||
211 | compatible = "fsl,vf610-sai"; | ||
212 | reg = <0x0 0x2b60000 0x0 0x10000>; | ||
213 | interrupts = <0 149 IRQ_TYPE_LEVEL_HIGH>; | ||
214 | clocks = <&clockgen 4 3>, <&clockgen 4 3>, | ||
215 | <&clockgen 4 3>, <&clockgen 4 3>; | ||
216 | clock-names = "bus", "mclk1", "mclk2", "mclk3"; | ||
217 | dma-names = "tx", "rx"; | ||
218 | dmas = <&edma0 1 45>, | ||
219 | <&edma0 1 44>; | ||
220 | status = "disabled"; | ||
221 | }; | ||
222 | |||
223 | edma0: edma@2c00000 { | ||
224 | #dma-cells = <2>; | ||
225 | compatible = "fsl,vf610-edma"; | ||
226 | reg = <0x0 0x2c00000 0x0 0x10000>, | ||
227 | <0x0 0x2c10000 0x0 0x10000>, | ||
228 | <0x0 0x2c20000 0x0 0x10000>; | ||
229 | interrupts = <0 103 IRQ_TYPE_LEVEL_HIGH>, | ||
230 | <0 103 IRQ_TYPE_LEVEL_HIGH>; | ||
231 | interrupt-names = "edma-tx", "edma-err"; | ||
232 | dma-channels = <32>; | ||
233 | big-endian; | ||
234 | clock-names = "dmamux0", "dmamux1"; | ||
235 | clocks = <&clockgen 4 3>, | ||
236 | <&clockgen 4 3>; | ||
237 | }; | ||
238 | |||
239 | sata: sata@3200000 { | ||
240 | compatible = "fsl,ls1012a-ahci", "fsl,ls1043a-ahci"; | ||
241 | reg = <0x0 0x3200000 0x0 0x10000>; | ||
242 | interrupts = <0 69 IRQ_TYPE_LEVEL_HIGH>; | ||
243 | clocks = <&clockgen 4 0>; | ||
244 | status = "disabled"; | ||
245 | }; | ||
246 | }; | ||
247 | }; | ||
diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1046a.dtsi b/arch/arm64/boot/dts/freescale/fsl-ls1046a.dtsi index 38806ca53829..4a164b801882 100644 --- a/arch/arm64/boot/dts/freescale/fsl-ls1046a.dtsi +++ b/arch/arm64/boot/dts/freescale/fsl-ls1046a.dtsi | |||
@@ -45,6 +45,7 @@ | |||
45 | */ | 45 | */ |
46 | 46 | ||
47 | #include <dt-bindings/interrupt-controller/arm-gic.h> | 47 | #include <dt-bindings/interrupt-controller/arm-gic.h> |
48 | #include <dt-bindings/thermal/thermal.h> | ||
48 | 49 | ||
49 | / { | 50 | / { |
50 | compatible = "fsl,ls1046a"; | 51 | compatible = "fsl,ls1046a"; |
@@ -67,6 +68,7 @@ | |||
67 | clocks = <&clockgen 1 0>; | 68 | clocks = <&clockgen 1 0>; |
68 | next-level-cache = <&l2>; | 69 | next-level-cache = <&l2>; |
69 | cpu-idle-states = <&CPU_PH20>; | 70 | cpu-idle-states = <&CPU_PH20>; |
71 | #cooling-cells = <2>; | ||
70 | }; | 72 | }; |
71 | 73 | ||
72 | cpu1: cpu@1 { | 74 | cpu1: cpu@1 { |
@@ -279,6 +281,84 @@ | |||
279 | clocks = <&sysclk>; | 281 | clocks = <&sysclk>; |
280 | }; | 282 | }; |
281 | 283 | ||
284 | tmu: tmu@1f00000 { | ||
285 | compatible = "fsl,qoriq-tmu"; | ||
286 | reg = <0x0 0x1f00000 0x0 0x10000>; | ||
287 | interrupts = <0 33 0x4>; | ||
288 | fsl,tmu-range = <0xb0000 0x9002a 0x6004c 0x30062>; | ||
289 | fsl,tmu-calibration = | ||
290 | /* Calibration data group 1 */ | ||
291 | <0x00000000 0x00000026 | ||
292 | 0x00000001 0x0000002d | ||
293 | 0x00000002 0x00000032 | ||
294 | 0x00000003 0x00000039 | ||
295 | 0x00000004 0x0000003f | ||
296 | 0x00000005 0x00000046 | ||
297 | 0x00000006 0x0000004d | ||
298 | 0x00000007 0x00000054 | ||
299 | 0x00000008 0x0000005a | ||
300 | 0x00000009 0x00000061 | ||
301 | 0x0000000a 0x0000006a | ||
302 | 0x0000000b 0x00000071 | ||
303 | /* Calibration data group 2 */ | ||
304 | 0x00010000 0x00000025 | ||
305 | 0x00010001 0x0000002c | ||
306 | 0x00010002 0x00000035 | ||
307 | 0x00010003 0x0000003d | ||
308 | 0x00010004 0x00000045 | ||
309 | 0x00010005 0x0000004e | ||
310 | 0x00010006 0x00000057 | ||
311 | 0x00010007 0x00000061 | ||
312 | 0x00010008 0x0000006b | ||
313 | 0x00010009 0x00000076 | ||
314 | /* Calibration data group 3 */ | ||
315 | 0x00020000 0x00000029 | ||
316 | 0x00020001 0x00000033 | ||
317 | 0x00020002 0x0000003d | ||
318 | 0x00020003 0x00000049 | ||
319 | 0x00020004 0x00000056 | ||
320 | 0x00020005 0x00000061 | ||
321 | 0x00020006 0x0000006d | ||
322 | /* Calibration data group 4 */ | ||
323 | 0x00030000 0x00000021 | ||
324 | 0x00030001 0x0000002a | ||
325 | 0x00030002 0x0000003c | ||
326 | 0x00030003 0x0000004e>; | ||
327 | big-endian; | ||
328 | #thermal-sensor-cells = <1>; | ||
329 | }; | ||
330 | |||
331 | thermal-zones { | ||
332 | cpu_thermal: cpu-thermal { | ||
333 | polling-delay-passive = <1000>; | ||
334 | polling-delay = <5000>; | ||
335 | thermal-sensors = <&tmu 3>; | ||
336 | |||
337 | trips { | ||
338 | cpu_alert: cpu-alert { | ||
339 | temperature = <85000>; | ||
340 | hysteresis = <2000>; | ||
341 | type = "passive"; | ||
342 | }; | ||
343 | |||
344 | cpu_crit: cpu-crit { | ||
345 | temperature = <95000>; | ||
346 | hysteresis = <2000>; | ||
347 | type = "critical"; | ||
348 | }; | ||
349 | }; | ||
350 | |||
351 | cooling-maps { | ||
352 | map0 { | ||
353 | trip = <&cpu_alert>; | ||
354 | cooling-device = | ||
355 | <&cpu0 THERMAL_NO_LIMIT | ||
356 | THERMAL_NO_LIMIT>; | ||
357 | }; | ||
358 | }; | ||
359 | }; | ||
360 | }; | ||
361 | |||
282 | dspi: dspi@2100000 { | 362 | dspi: dspi@2100000 { |
283 | compatible = "fsl,ls1021a-v1.0-dspi"; | 363 | compatible = "fsl,ls1021a-v1.0-dspi"; |
284 | #address-cells = <1>; | 364 | #address-cells = <1>; |
diff --git a/arch/arm64/boot/dts/freescale/fsl-ls2080a-rdb.dts b/arch/arm64/boot/dts/freescale/fsl-ls2080a-rdb.dts index 265e0a8b107b..2ff46ca450b1 100644 --- a/arch/arm64/boot/dts/freescale/fsl-ls2080a-rdb.dts +++ b/arch/arm64/boot/dts/freescale/fsl-ls2080a-rdb.dts | |||
@@ -102,7 +102,6 @@ | |||
102 | reg = <0x75>; | 102 | reg = <0x75>; |
103 | #address-cells = <1>; | 103 | #address-cells = <1>; |
104 | #size-cells = <0>; | 104 | #size-cells = <0>; |
105 | status = "disabled"; | ||
106 | i2c@1 { | 105 | i2c@1 { |
107 | #address-cells = <1>; | 106 | #address-cells = <1>; |
108 | #size-cells = <0>; | 107 | #size-cells = <0>; |