mirror of
https://github.com/torvalds/linux.git
synced 2026-05-28 09:04:39 +02:00
Berlin DT changes for v3.17
- L2CC latency properties for BG2Q - DW i2c nodes for BG2Q and corresponding dev board - SMP related nodes for BG2 and BG2Q -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iQIcBAABAgAGBQJTsWf4AAoJEN2kpao7fSL49BkQAIFRcw5YH8Ss72do+sDxNQMU in1GZ5mHBrLzu0qjAbEe3jrKmXUQDWhRqkIVtM4A6HTb9RwM+85eNVfziyld0K8F O6tErJlVhvK6hG63Cl/M/QIZZEMoAsOeM/NRrOoij0yftFdgdHz1mUp+RFxtdiuS mL8iarnn2mL9IpiBZYz1I+0Y7HxgX5+dVdG9uHRzhzLJffxkl0kki21dtaKEUInv n2RlF93L9PtVgRGUer9UEXDRG7VNd594fT56q5kOU8vyYsLXltDcvzI56+jIXO+s JsjTTUsboXOHK9BCzjONcRYiLZQ8g4M5GkeNOb6oDpy3sQSS7ORf4WpKYhyRnvVI 0MMY/RzVO06WOXdTW0yd25pH6j/EmkpqGa+8RqGwXk1twJqyPL5cfPzwbqtQ4Re3 RNXtbwp6qxECJ4oRf8rc8xUlWKH49xf0hiVkX1aKQKp+8qsyOvhCug4sAnFehOZM DShXdxmGM9bSi9wYswLs+a1dPEJPlpE2ALUfZAYUuxwsziAPTztioKVS8Ht7TjBA aqINoFNOlpi0m84SbXGIP0E3inhpe6KdrD98tPFPlxWhi3uom4i8qsjbRcHDIjYp Hg9oa3U+Go2C4UPFnhqMxCbQFK1tgNOCGHrTRsLsO3uJ9g+IbFkqQPH088PO8eOm aLcy2Hxd9AnhIU2GZTB6 =PEAV -----END PGP SIGNATURE----- Merge tag 'berlin-dt-3.17-1' of git://git.infradead.org/users/hesselba/linux-berlin into next/dt Merge "Berlin DT changes for v3.17" from Sebastian Hesselbarth: - L2CC latency properties for BG2Q - DW i2c nodes for BG2Q and corresponding dev board - SMP related nodes for BG2 and BG2Q * tag 'berlin-dt-3.17-1' of git://git.infradead.org/users/hesselba/linux-berlin: ARM: dts: berlin: add SMP related nodes and properties for BG2Q ARM: dts: berlin: add SMP related nodes and properties for BG2 Documentation: bindings: add the marvell,berlin-smp CPU enable method Documentation: bindings: add the Berlin CPU control doc ARM: dts: berlin: enable i2c0 and i2c2 ARM: dts: berlin: add I2C nodes for BG2Q ARM: dts: berlin2q: set L2CC tag and data latency to 2 cycles Signed-off-by: Olof Johansson <olof@lixom.net>
This commit is contained in:
commit
74498a6de2
|
|
@ -0,0 +1,41 @@
|
|||
========================================================
|
||||
Secondary CPU enable-method "marvell,berlin-smp" binding
|
||||
========================================================
|
||||
|
||||
This document describes the "marvell,berlin-smp" method for enabling secondary
|
||||
CPUs. To apply to all CPUs, a single "marvell,berlin-smp" enable method should
|
||||
be defined in the "cpus" node.
|
||||
|
||||
Enable method name: "marvell,berlin-smp"
|
||||
Compatible machines: "marvell,berlin2" and "marvell,berlin2q"
|
||||
Compatible CPUs: "marvell,pj4b" and "arm,cortex-a9"
|
||||
Related properties: (none)
|
||||
|
||||
Note:
|
||||
This enable method needs valid nodes compatible with "arm,cortex-a9-scu" and
|
||||
"marvell,berlin-cpu-ctrl"[1].
|
||||
|
||||
Example:
|
||||
|
||||
cpus {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
enable-method = "marvell,berlin-smp";
|
||||
|
||||
cpu@0 {
|
||||
compatible = "marvell,pj4b";
|
||||
device_type = "cpu";
|
||||
next-level-cache = <&l2>;
|
||||
reg = <0>;
|
||||
};
|
||||
|
||||
cpu@1 {
|
||||
compatible = "marvell,pj4b";
|
||||
device_type = "cpu";
|
||||
next-level-cache = <&l2>;
|
||||
reg = <1>;
|
||||
};
|
||||
};
|
||||
|
||||
--
|
||||
[1] arm/marvell,berlin.txt
|
||||
|
|
@ -24,6 +24,22 @@ SoC and board used. Currently known SoC compatibles are:
|
|||
...
|
||||
}
|
||||
|
||||
* Marvell Berlin CPU control bindings
|
||||
|
||||
CPU control register allows various operations on CPUs, like resetting them
|
||||
independently.
|
||||
|
||||
Required properties:
|
||||
- compatible: should be "marvell,berlin-cpu-ctrl"
|
||||
- reg: address and length of the register set
|
||||
|
||||
Example:
|
||||
|
||||
cpu-ctrl@f7dd0000 {
|
||||
compatible = "marvell,berlin-cpu-ctrl";
|
||||
reg = <0xf7dd0000 0x10000>;
|
||||
};
|
||||
|
||||
* Marvell Berlin2 chip control binding
|
||||
|
||||
Marvell Berlin SoCs have a chip control register set providing several
|
||||
|
|
|
|||
|
|
@ -22,6 +22,7 @@ / {
|
|||
cpus {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
enable-method = "marvell,berlin-smp";
|
||||
|
||||
cpu@0 {
|
||||
compatible = "marvell,pj4b";
|
||||
|
|
@ -78,6 +79,11 @@ local-timer@ad0600 {
|
|||
clocks = <&chip CLKID_TWD>;
|
||||
};
|
||||
|
||||
cpu-ctrl@dd0000 {
|
||||
compatible = "marvell,berlin-cpu-ctrl";
|
||||
reg = <0xdd0000 0x10000>;
|
||||
};
|
||||
|
||||
apb@e80000 {
|
||||
compatible = "simple-bus";
|
||||
#address-cells = <1>;
|
||||
|
|
|
|||
|
|
@ -34,6 +34,14 @@ &sdhci2 {
|
|||
status = "okay";
|
||||
};
|
||||
|
||||
&i2c0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2c2 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
|
|
|||
|
|
@ -18,6 +18,7 @@ / {
|
|||
cpus {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
enable-method = "marvell,berlin-smp";
|
||||
|
||||
cpu@0 {
|
||||
compatible = "arm,cortex-a9";
|
||||
|
|
@ -90,6 +91,8 @@ l2: l2-cache-controller@ac0000 {
|
|||
compatible = "arm,pl310-cache";
|
||||
reg = <0xac0000 0x1000>;
|
||||
cache-level = <2>;
|
||||
arm,data-latency = <2 2 2>;
|
||||
arm,tag-latency = <2 2 2>;
|
||||
};
|
||||
|
||||
scu: snoop-control-unit@ad0000 {
|
||||
|
|
@ -111,6 +114,11 @@ gic: interrupt-controller@ad1000 {
|
|||
#interrupt-cells = <3>;
|
||||
};
|
||||
|
||||
cpu-ctrl@dd0000 {
|
||||
compatible = "marvell,berlin-cpu-ctrl";
|
||||
reg = <0xdd0000 0x10000>;
|
||||
};
|
||||
|
||||
apb@e80000 {
|
||||
compatible = "simple-bus";
|
||||
#address-cells = <1>;
|
||||
|
|
@ -191,6 +199,32 @@ portd: gpio-port@3 {
|
|||
};
|
||||
};
|
||||
|
||||
i2c0: i2c@1400 {
|
||||
compatible = "snps,designware-i2c";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
reg = <0x1400 0x100>;
|
||||
interrupt-parent = <&aic>;
|
||||
interrupts = <4>;
|
||||
clocks = <&chip CLKID_CFG>;
|
||||
pinctrl-0 = <&twsi0_pmux>;
|
||||
pinctrl-names = "default";
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
i2c1: i2c@1800 {
|
||||
compatible = "snps,designware-i2c";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
reg = <0x1800 0x100>;
|
||||
interrupt-parent = <&aic>;
|
||||
interrupts = <5>;
|
||||
clocks = <&chip CLKID_CFG>;
|
||||
pinctrl-0 = <&twsi1_pmux>;
|
||||
pinctrl-names = "default";
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
timer0: timer@2c00 {
|
||||
compatible = "snps,dw-apb-timer";
|
||||
reg = <0x2c00 0x14>;
|
||||
|
|
@ -301,6 +335,16 @@ chip: chip-control@ea0000 {
|
|||
reg = <0xea0000 0x400>, <0xdd0170 0x10>;
|
||||
clocks = <&refclk>;
|
||||
clock-names = "refclk";
|
||||
|
||||
twsi0_pmux: twsi0-pmux {
|
||||
groups = "G6";
|
||||
function = "twsi0";
|
||||
};
|
||||
|
||||
twsi1_pmux: twsi1-pmux {
|
||||
groups = "G7";
|
||||
function = "twsi1";
|
||||
};
|
||||
};
|
||||
|
||||
apb@fc0000 {
|
||||
|
|
@ -311,6 +355,32 @@ apb@fc0000 {
|
|||
ranges = <0 0xfc0000 0x10000>;
|
||||
interrupt-parent = <&sic>;
|
||||
|
||||
i2c2: i2c@7000 {
|
||||
compatible = "snps,designware-i2c";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
reg = <0x7000 0x100>;
|
||||
interrupt-parent = <&sic>;
|
||||
interrupts = <6>;
|
||||
clocks = <&refclk>;
|
||||
pinctrl-0 = <&twsi2_pmux>;
|
||||
pinctrl-names = "default";
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
i2c3: i2c@8000 {
|
||||
compatible = "snps,designware-i2c";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
reg = <0x8000 0x100>;
|
||||
interrupt-parent = <&sic>;
|
||||
interrupts = <7>;
|
||||
clocks = <&refclk>;
|
||||
pinctrl-0 = <&twsi3_pmux>;
|
||||
pinctrl-names = "default";
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
uart0: uart@9000 {
|
||||
compatible = "snps,dw-apb-uart";
|
||||
reg = <0x9000 0x100>;
|
||||
|
|
@ -348,6 +418,16 @@ uart1_pmux: uart1-pmux {
|
|||
groups = "GSM14";
|
||||
function = "uart1";
|
||||
};
|
||||
|
||||
twsi2_pmux: twsi2-pmux {
|
||||
groups = "GSM13";
|
||||
function = "twsi2";
|
||||
};
|
||||
|
||||
twsi3_pmux: twsi3-pmux {
|
||||
groups = "GSM14";
|
||||
function = "twsi3";
|
||||
};
|
||||
};
|
||||
|
||||
sic: interrupt-controller@e000 {
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user