berlin DT changes for v4.18

-----BEGIN PGP SIGNATURE-----
 
 iQJHBAABCgAxFiEE2MW6uuYZ+0zBfpF41kg+k28NbwgFAlsGahUTHGpzemhhbmcz
 QGdtYWlsLmNvbQAKCRDWSD6Tbw1vCPj1D/0WfMrbjNWnUUkVfyIs+91UuAXKsgAm
 s4soQ41DeYpsG3DVVykYy6CY20XG8ueAYZkLh8h52zipGV50Yq7fpZJGIDyXbP+V
 aE4B3MPBFtZF07SPvrBOMF/6E7xIeTgHhm0sgKECFZteDlRgCsvK/RK5gthmx67X
 mbX/CLELLj9RglomVrV/7ZAGkBG7bX35mn5yIocJ/u7qwXdO3wyIEE2lelaH+OaN
 335XDJEIXrwHI5imNXnTgQ2YjgkoUbGPAjUQce1ZBKLPunt20IQMipmHJNJFeD6d
 wY+BGtxjKQ2GZSSNPsaa/0nV5wTdvN+xWfXPfLFe32BWj3RVkB9E9azT4nZ80NhI
 dfjMfk2umTcu1eVbc9wqKo0q005YcwiX+gRX5sWA4YXhwNGO6Vvf3KxM16QZlE56
 pS+Lz1iU+WEATbR0+72hXU8pa8RxcDYc580LmnoH87sC7bab7dOXOqpZudp87n73
 M0EW/tNZiiINF4c/Oix5YhoeJPwRtXAujH3Ccprt2SZbor4ognCJ+k+Lc3ZM8Nc1
 K4LHEkmjqE3Ly15U1WgFvAp2TyMEZ0bFTQXvqy05MPVlTVWxBIAtNUuMg7vdodc8
 ShdD6429UBrXOx2jODGpOX/AnGkCF35QkPWm36km+E8zrx4/PmW7hPNcE7QnAoiX
 MRWLwL77l+RRHw==
 =L7gS
 -----END PGP SIGNATURE-----

Merge tag 'berlin-dt-for-v4.18' of git://git.kernel.org/pub/scm/linux/kernel/git/jszhang/linux-berlin into next/dt

berlin DT changes for v4.18

* tag 'berlin-dt-for-v4.18' of git://git.kernel.org/pub/scm/linux/kernel/git/jszhang/linux-berlin:
  ARM: dts: berlin2q: move PMU node from soc to root
  ARM: dts: berlin*-dts: use SPDX-License-Identifier for berlin based board
  ARM: dts: berlin*.dtsi: use SPDX-License-Identifier for berlin SoCs
  ARM: dts: berlin2: fix irq type for arm twd timer
  ARM: dts: berlin2q: fix irq type for arm twd timer
  ARM: dts: berlin2q: add "cache-unified" to l2 node
  ARM: dts: berlin2q: add interrupt-affinity to pmu node
  ARM: dts: chromecast: use PWM for LEDs
  ARM: dts: chromecast: override bad bootloader memory info
  ARM: dts: berlin2cd: add Valve Steam Link board
  ARM: dts: berlin2cd: add a label for the CPU node
  ARM: dts: berlin2cd: add remaining nodes to apb subtrees
  ARM: dts: berlin2cd: add remaining Cortex-A9 nodes
  ARM: dts: berlin2cd: add ADC/thermal sensor node
  ARM: dts: berlin2cd: move PMU node from soc to root
  ARM: dts: berlin2cd: fix local timer interrupt flags

Signed-off-by: Olof Johansson <olof@lixom.net>
This commit is contained in:
Olof Johansson 2018-05-25 14:56:30 -07:00
commit c70ceb7973
8 changed files with 259 additions and 219 deletions

View File

@ -143,6 +143,7 @@ dtb-$(CONFIG_ARCH_BCM_NSP) += \
dtb-$(CONFIG_ARCH_BERLIN) += \
berlin2-sony-nsz-gs7.dtb \
berlin2cd-google-chromecast.dtb \
berlin2cd-valve-steamlink.dtb \
berlin2q-marvell-dmp.dtb
dtb-$(CONFIG_ARCH_BRCMSTB) += \
bcm7445-bcm97445svmb.dtb

View File

@ -1,39 +1,8 @@
// SPDX-License-Identifier: (GPL-2.0 OR MIT)
/*
* Device Tree file for Sony NSZ-GS7
*
* Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
*
* This file is dual-licensed: you can use it either under the terms
* of the GPL or the X11 license, at your option. Note that this dual
* licensing only applies to this file, and not this project as a
* whole.
*
* a) This file is licensed under the terms of the GNU General Public
* License version 2. This program is licensed "as is" without any
* warranty of any kind, whether express or implied.
*
* Or, alternatively,
*
* b) Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
* files (the "Software"), to deal in the Software without
* restriction, including without limitation the rights to use,
* copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following
* conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
/dts-v1/;

View File

@ -1,3 +1,4 @@
// SPDX-License-Identifier: (GPL-2.0 OR MIT)
/*
* Device Tree Include file for Marvell Armada 1500 (Berlin BG2) SoC
*
@ -5,38 +6,6 @@
*
* based on GPL'ed 2.6 kernel sources
* (c) Marvell International Ltd.
*
* This file is dual-licensed: you can use it either under the terms
* of the GPL or the X11 license, at your option. Note that this dual
* licensing only applies to this file, and not this project as a
* whole.
*
* a) This file is licensed under the terms of the GNU General Public
* License version 2. This program is licensed "as is" without any
* warranty of any kind, whether express or implied.
*
* Or, alternatively,
*
* b) Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
* files (the "Software"), to deal in the Software without
* restriction, including without limitation the rights to use,
* copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following
* conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
#include <dt-bindings/clock/berlin2.h>
@ -149,7 +118,7 @@
local-timer@ad0600 {
compatible = "arm,cortex-a9-twd-timer";
reg = <0xad0600 0x20>;
interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_HIGH)>;
interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_EDGE_RISING)>;
clocks = <&chip_clk CLKID_TWD>;
};

View File

@ -1,39 +1,8 @@
// SPDX-License-Identifier: (GPL-2.0 OR MIT)
/*
* Device Tree file for Google Chromecast
*
* Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
*
* This file is dual-licensed: you can use it either under the terms
* of the GPL or the X11 license, at your option. Note that this dual
* licensing only applies to this file, and not this project as a
* whole.
*
* a) This file is licensed under the terms of the GNU General Public
* License version 2. This program is licensed "as is" without any
* warranty of any kind, whether express or implied.
*
* Or, alternatively,
*
* b) Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
* files (the "Software"), to deal in the Software without
* restriction, including without limitation the rights to use,
* copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following
* conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
/dts-v1/;
@ -52,22 +21,35 @@
memory@0 {
device_type = "memory";
reg = <0x00000000 0x20000000>; /* 512 MB */
/*
* We're using "linux,usable-memory" instead of "reg" here
* because the (signed and encrypted) bootloader that shipped
* with this device provides an incorrect memory range in
* ATAG_MEM. Linux helpfully overrides the "reg" property with
* data from the ATAG, so we can't specify the proper range
* normally. Fortunately, this alternate property is checked
* first by the OF driver, so we can (ab)use it instead.
*/
linux,usable-memory = <0x00000000 0x20000000>; /* 512 MB */
};
leds {
compatible = "gpio-leds";
compatible = "pwm-leds";
pinctrl-0 = <&ledpwm_pmux>;
pinctrl-names = "default";
white {
label = "white";
gpios = <&portc 1 GPIO_ACTIVE_HIGH>;
default-state = "keep";
pwms = <&pwm 0 600000 0>;
max-brightness = <255>;
linux,default-trigger = "default-on";
};
red {
label = "red";
gpios = <&portc 2 GPIO_ACTIVE_HIGH>;
default-state = "keep";
pwms = <&pwm 1 600000 0>;
max-brightness = <255>;
};
};
};
@ -86,3 +68,10 @@
&usb_phy1 { status = "okay"; };
&usb1 { status = "okay"; };
&soc_pinctrl {
ledpwm_pmux: ledpwm-pmux {
groups = "G0";
function = "pwm";
};
};

View File

@ -0,0 +1,79 @@
// SPDX-License-Identifier: (GPL-2.0 OR MIT)
/*
* Copyright 2018 Alexander Monakov <amonakov@gmail.com>
*/
/dts-v1/;
#include "berlin2cd.dtsi"
#include <dt-bindings/gpio/gpio.h>
/ {
model = "Valve Steam Link";
compatible = "valve,steamlink", "marvell,berlin2cd", "marvell,berlin";
memory@0 {
device_type = "memory";
reg = <0x00000000 0x20000000>; /* 512 MB */
};
gpio-restart {
compatible = "gpio-restart";
gpios = <&porta 6 GPIO_ACTIVE_HIGH>;
active-delay = <100>;
inactive-delay = <10>;
wait-delay = <100>;
priority = <200>;
};
};
&cpu {
cpu-supply = <&vcpu>;
operating-points = <
/* kHz uV */
1000000 1325000
>;
};
&i2c0 {
status = "okay";
/* There are two regulators on the board. One is accessible via I2C,
* with buck1 providing SoC power (set up by bootloader to 1.325V or
* less depending on leakage value in OTP), and buck2 likely used for
* DRAM (providing 1.35V). The other regulator on the opposite side
* of the board is probably supplying SDIO and NAND fixed voltages. */
regulator@19 {
compatible = "marvell,88pg868";
reg = <0x19>;
vcpu: buck1 {
regulator-boot-on;
regulator-always-on;
regulator-min-microvolt = <1000000>;
regulator-max-microvolt = <1325000>;
};
};
};
/* Fixed interface to on-board Marvell 8897 Wi-Fi/Bluetooth/NFC chip. */
&sdhci0 {
keep-power-in-suspend;
non-removable;
status = "okay";
};
&uart0 {
/* RX/TX are routed to TP50/TP51 on the board. */
status = "okay";
};
/* The SoC is connected to on-board USB hub that in turn has one downstream
* port wired to the on-board Steam Controller wireless receiver chip. */
&usb_phy1 { status = "okay"; };
&usb1 {
dr_mode = "host";
status = "okay";
};
&eth1 { status = "okay"; };

View File

@ -1,3 +1,4 @@
// SPDX-License-Identifier: (GPL-2.0 OR MIT)
/*
* Device Tree Include file for Marvell Armada 1500-mini (Berlin BG2CD) SoC
*
@ -5,38 +6,6 @@
*
* based on GPL'ed 2.6 kernel sources
* (c) Marvell International Ltd.
*
* This file is dual-licensed: you can use it either under the terms
* of the GPL or the X11 license, at your option. Note that this dual
* licensing only applies to this file, and not this project as a
* whole.
*
* a) This file is licensed under the terms of the GNU General Public
* License version 2. This program is licensed "as is" without any
* warranty of any kind, whether express or implied.
*
* Or, alternatively,
*
* b) Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
* files (the "Software"), to deal in the Software without
* restriction, including without limitation the rights to use,
* copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following
* conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
#include <dt-bindings/clock/berlin2.h>
@ -57,7 +26,7 @@
#address-cells = <1>;
#size-cells = <0>;
cpu@0 {
cpu: cpu@0 {
compatible = "arm,cortex-a9";
device_type = "cpu";
next-level-cache = <&l2>;
@ -73,6 +42,12 @@
};
};
pmu {
compatible = "arm,cortex-a9-pmu";
interrupt-parent = <&gic>;
interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
};
refclk: oscillator {
compatible = "fixed-clock";
#clock-cells = <0>;
@ -87,11 +62,6 @@
ranges = <0 0xf7000000 0x1000000>;
pmu {
compatible = "arm,cortex-a9-pmu";
interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
};
sdhci0: sdhci@ab0000 {
compatible = "mrvl,pxav3-mmc";
reg = <0xab0000 0x200>;
@ -108,6 +78,11 @@
cache-level = <2>;
};
snoop-control-unit@ad0000 {
compatible = "arm,cortex-a9-scu";
reg = <0xad0000 0x100>;
};
gic: interrupt-controller@ad1000 {
compatible = "arm,cortex-a9-gic";
reg = <0xad1000 0x1000>, <0xad0100 0x0100>;
@ -115,10 +90,24 @@
#interrupt-cells = <3>;
};
global-timer@ad0200 {
compatible = "arm,cortex-a9-global-timer";
reg = <0xad0200 0x20>;
interrupts = <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(1) | IRQ_TYPE_EDGE_RISING)>;
clocks = <&chip_clk CLKID_TWD>;
};
local-timer@ad0600 {
compatible = "arm,cortex-a9-twd-timer";
reg = <0xad0600 0x20>;
interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(1) | IRQ_TYPE_LEVEL_HIGH)>;
interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(1) | IRQ_TYPE_EDGE_RISING)>;
clocks = <&chip_clk CLKID_TWD>;
};
local-wdt@ad0620 {
compatible = "arm,cortex-a9-twd-wdt";
reg = <0xad0620 0x20>;
interrupts = <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(1) | IRQ_TYPE_EDGE_RISING)>;
clocks = <&chip_clk CLKID_TWD>;
};
@ -254,6 +243,60 @@
};
};
i2c0: i2c@1400 {
compatible = "snps,designware-i2c";
#address-cells = <1>;
#size-cells = <0>;
reg = <0x1400 0x100>;
interrupts = <16>;
clocks = <&chip_clk CLKID_CFG>;
status = "disabled";
};
i2c1: i2c@1800 {
compatible = "snps,designware-i2c";
#address-cells = <1>;
#size-cells = <0>;
reg = <0x1800 0x100>;
interrupts = <17>;
clocks = <&chip_clk CLKID_CFG>;
status = "disabled";
};
spi0: spi@1c00 {
compatible = "snps,dw-apb-ssi";
#address-cells = <1>;
#size-cells = <0>;
reg = <0x1c00 0x100>;
interrupts = <4>;
clocks = <&chip_clk CLKID_CFG>;
status = "disabled";
};
wdt4: watchdog@2000 {
compatible = "snps,dw-wdt";
reg = <0x2000 0x100>;
clocks = <&chip_clk CLKID_CFG>;
interrupts = <5>;
status = "disabled";
};
wdt5: watchdog@2400 {
compatible = "snps,dw-wdt";
reg = <0x2400 0x100>;
clocks = <&chip_clk CLKID_CFG>;
interrupts = <6>;
status = "disabled";
};
wdt6: watchdog@2800 {
compatible = "snps,dw-wdt";
reg = <0x2800 0x100>;
clocks = <&chip_clk CLKID_CFG>;
interrupts = <7>;
status = "disabled";
};
timer0: timer@2c00 {
compatible = "snps,dw-apb-timer";
reg = <0x2c00 0x14>;
@ -435,6 +478,36 @@
};
};
spi1: spi@6000 {
compatible = "snps,dw-apb-ssi";
#address-cells = <1>;
#size-cells = <0>;
reg = <0x6000 0x100>;
clocks = <&refclk>;
interrupts = <5>;
status = "disabled";
};
i2c2: i2c@7000 {
compatible = "snps,designware-i2c";
#address-cells = <1>;
#size-cells = <0>;
reg = <0x7000 0x100>;
interrupts = <6>;
clocks = <&refclk>;
status = "disabled";
};
i2c3: i2c@8000 {
compatible = "snps,designware-i2c";
#address-cells = <1>;
#size-cells = <0>;
reg = <0x8000 0x100>;
interrupts = <7>;
clocks = <&refclk>;
status = "disabled";
};
sm_gpio0: gpio@c000 {
compatible = "snps,dw-apb-gpio";
reg = <0xc000 0x400>;
@ -472,6 +545,16 @@
status = "disabled";
};
uart2: serial@b000 {
compatible = "snps,dw-apb-uart";
reg = <0xb000 0x100>;
reg-shift = <2>;
reg-io-width = <1>;
interrupts = <10>;
clocks = <&refclk>;
status = "disabled";
};
sysctrl: system-controller@d000 {
compatible = "simple-mfd", "syscon";
reg = <0xd000 0x100>;
@ -479,6 +562,12 @@
sys_pinctrl: pin-controller {
compatible = "marvell,berlin2cd-system-pinctrl";
};
adc: adc {
compatible = "marvell,berlin2-adc";
interrupts = <12>, <14>;
interrupt-names = "adc", "tsen";
};
};
sic: interrupt-controller@e000 {

View File

@ -1,37 +1,6 @@
// SPDX-License-Identifier: (GPL-2.0 OR MIT)
/*
* Copyright (C) 2014 Antoine Ténart <antoine.tenart@free-electrons.com>
*
* This file is dual-licensed: you can use it either under the terms
* of the GPL or the X11 license, at your option. Note that this dual
* licensing only applies to this file, and not this project as a
* whole.
*
* a) This file is licensed under the terms of the GNU General Public
* License version 2. This program is licensed "as is" without any
* warranty of any kind, whether express or implied.
*
* Or, alternatively,
*
* b) Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
* files (the "Software"), to deal in the Software without
* restriction, including without limitation the rights to use,
* copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following
* conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
/dts-v1/;

View File

@ -1,37 +1,6 @@
// SPDX-License-Identifier: (GPL-2.0 OR MIT)
/*
* Copyright (C) 2014 Antoine Ténart <antoine.tenart@free-electrons.com>
*
* This file is dual-licensed: you can use it either under the terms
* of the GPL or the X11 license, at your option. Note that this dual
* licensing only applies to this file, and not this project as a
* whole.
*
* a) This file is licensed under the terms of the GNU General Public
* License version 2. This program is licensed "as is" without any
* warranty of any kind, whether express or implied.
*
* Or, alternatively,
*
* b) Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
* files (the "Software"), to deal in the Software without
* restriction, including without limitation the rights to use,
* copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following
* conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
#include <dt-bindings/clock/berlin2q.h>
@ -53,7 +22,7 @@
#size-cells = <0>;
enable-method = "marvell,berlin-smp";
cpu@0 {
cpu0: cpu@0 {
compatible = "arm,cortex-a9";
device_type = "cpu";
next-level-cache = <&l2>;
@ -71,21 +40,21 @@
>;
};
cpu@1 {
cpu1: cpu@1 {
compatible = "arm,cortex-a9";
device_type = "cpu";
next-level-cache = <&l2>;
reg = <1>;
};
cpu@2 {
cpu2: cpu@2 {
compatible = "arm,cortex-a9";
device_type = "cpu";
next-level-cache = <&l2>;
reg = <2>;
};
cpu@3 {
cpu3: cpu@3 {
compatible = "arm,cortex-a9";
device_type = "cpu";
next-level-cache = <&l2>;
@ -93,6 +62,19 @@
};
};
pmu {
compatible = "arm,cortex-a9-pmu";
interrupt-parent = <&gic>;
interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>;
interrupt-affinity = <&cpu0>,
<&cpu1>,
<&cpu2>,
<&cpu3>;
};
refclk: oscillator {
compatible = "fixed-clock";
#clock-cells = <0>;
@ -107,14 +89,6 @@
ranges = <0 0xf7000000 0x1000000>;
interrupt-parent = <&gic>;
pmu {
compatible = "arm,cortex-a9-pmu";
interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>;
};
sdhci0: sdhci@ab0000 {
compatible = "mrvl,pxav3-mmc";
reg = <0xab0000 0x200>;
@ -145,6 +119,7 @@
l2: l2-cache-controller@ac0000 {
compatible = "arm,pl310-cache";
reg = <0xac0000 0x1000>;
cache-unified;
cache-level = <2>;
arm,data-latency = <2 2 2>;
arm,tag-latency = <2 2 2>;
@ -159,7 +134,7 @@
compatible = "arm,cortex-a9-twd-timer";
reg = <0xad0600 0x20>;
clocks = <&chip_clk CLKID_TWD>;
interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>;
interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_EDGE_RISING)>;
};
gic: interrupt-controller@ad1000 {