hrev50582 adds 1 changeset to branch 'master'
old head: 49b0152a81d3293f6bbb133031de7fa007a25357
new head: d068622c37bc474bf4ecd915dd9624c0c5f9cc91
overview:
http://cgit.haiku-os.org/haiku/log/?qt=range&q=d068622c37bc+%5E49b0152a81d3
----------------------------------------------------------------------------
d068622c37bc: arm: Update Raspberry Pi 1/2 fdts from FreeBSD
[ Alexander von Gluck IV <kallisti5@xxxxxxxxxxx> ]
----------------------------------------------------------------------------
Revision: hrev50582
Commit: d068622c37bc474bf4ecd915dd9624c0c5f9cc91
URL: http://cgit.haiku-os.org/haiku/commit/?id=d068622c37bc
Author: Alexander von Gluck IV <kallisti5@xxxxxxxxxxx>
Date: Sun Oct 9 18:29:07 2016 UTC
----------------------------------------------------------------------------
4 files changed, 81 insertions(+), 22 deletions(-)
src/data/dts/arch/arm/bcm2835.dtsi | 13 +++++++--
src/data/dts/arch/arm/bcm2836.dtsi | 48 +++++++++++++++++++++++++++-------
src/data/dts/arch/arm/rpi.dts | 3 +++
src/data/dts/arch/arm/rpi2.dts | 39 +++++++++++++++++++--------
----------------------------------------------------------------------------
diff --git a/src/data/dts/arch/arm/bcm2835.dtsi
b/src/data/dts/arch/arm/bcm2835.dtsi
index 6ff1944..51f2d59 100644
--- a/src/data/dts/arch/arm/bcm2835.dtsi
+++ b/src/data/dts/arch/arm/bcm2835.dtsi
@@ -144,7 +144,7 @@
#gpio-cells = <2>;
interrupt-controller;
- #interrupt-cells = <1>;
+ #interrupt-cells = <2>;
pinctrl-names = "default";
pinctrl-0 = <&pins_reserved>;
@@ -396,6 +396,14 @@
};
};
+ rng {
+ compatible = "broadcom,bcm2835-rng",
+ "broadcom,bcm2708-rng";
+ reg = <0x104000 0x20>;
+ interrupts = <69>;
+ interrupt-parent = <&intc>;
+ };
+
bsc0 {
#address-cells = <1>;
#size-cells = <0>;
@@ -474,11 +482,12 @@
reg-shift = <2>;
};
- vchiq {
+ vchiq: vchiq {
compatible = "broadcom,bcm2835-vchiq";
reg = <0xB800 0x50>;
interrupts = <2>;
interrupt-parent = <&intc>;
+ cache-line-size = <32>;
};
usb {
diff --git a/src/data/dts/arch/arm/bcm2836.dtsi
b/src/data/dts/arch/arm/bcm2836.dtsi
index 7fdaecf..d777437 100644
--- a/src/data/dts/arch/arm/bcm2836.dtsi
+++ b/src/data/dts/arch/arm/bcm2836.dtsi
@@ -32,8 +32,8 @@
timer {
compatible = "arm,armv7-timer";
clock-frequency = <19200000>;
- interrupts = <72 73 75 74>;
- interrupt-parent = <&intc>;
+ interrupts = <0 1 3 2>;
+ interrupt-parent = <&local_intc>;
};
SOC: axi {
@@ -41,12 +41,23 @@
#address-cells = <1>;
#size-cells = <1>;
reg = <0x3f000000 0x01000000>;
- ranges = <0 0x3f000000 0x01000000>;
+ ranges = <0 0x3f000000 0x01000000>,
+ <0x40000000 0x40000000 0x00001000>;
+
+ local_intc: local_intc {
+ compatible = "brcm,bcm2836-l1-intc";
+ reg = <0x40000000 0x100>;
+ interrupt-controller;
+ #interrupt-cells = <1>;
+ interrupt-parent = <&local_intc>;
+ };
intc: interrupt-controller {
compatible = "broadcom,bcm2835-armctrl-ic",
"broadcom,bcm2708-armctrl-ic";
reg = <0xB200 0x200>;
+ interrupt-parent = <&local_intc>;
+ interrupts = <8>;
interrupt-controller;
#interrupt-cells = <1>;
@@ -101,6 +112,12 @@
*/
};
+ watchdog0 {
+ compatible = "broadcom,bcm2835-wdt",
+ "broadcom,bcm2708-wdt";
+ reg = <0x10001c 0x0c>; /* 0x1c, 0x20, 0x24 */
+ };
+
gpio: gpio {
compatible = "broadcom,bcm2835-gpio",
"broadcom,bcm2708-gpio";
@@ -120,16 +137,16 @@
#gpio-cells = <2>;
interrupt-controller;
- #interrupt-cells = <1>;
+ #interrupt-cells = <2>;
pinctrl-names = "default";
pinctrl-0 = <&pins_reserved>;
- /* Pins that can short 3.3V to GND in output mode: 46-47
+ /* Pins that can short 3.3V to GND in output mode: 46
* Pins used by VideoCore: 48-53
*/
- broadcom,read-only = <46>, <47>, <48>, <49>, <50>,
- <51>, <52>, <53>;
+ broadcom,read-only = <46>, <48>, <49>, <50>,
+ <51>, <52>, <53>;
/* BSC0 */
pins_bsc0_a: bsc0_a {
@@ -372,7 +389,17 @@
};
};
+ rng {
+ compatible = "broadcom,bcm2835-rng",
+ "broadcom,bcm2708-rng";
+ reg = <0x104000 0x20>;
+ interrupts = <69>;
+ interrupt-parent = <&intc>;
+ };
+
bsc0 {
+ #address-cells = <1>;
+ #size-cells = <0>;
compatible = "broadcom,bcm2835-bsc",
"broadcom,bcm2708-bsc";
reg = <0x205000 0x20>;
@@ -381,6 +408,8 @@
};
bsc1 {
+ #address-cells = <1>;
+ #size-cells = <0>;
compatible = "broadcom,bcm2835-bsc",
"broadcom,bcm2708-bsc";
reg = <0x804000 0x20>;
@@ -431,7 +460,7 @@
interrupts = <70>;
interrupt-parent = <&intc>;
- clock-frequency = <2500000000>; /* Set by VideoCore */
+ clock-frequency = <250000000>; /* Set by VideoCore */
};
uart0: uart0 {
@@ -446,11 +475,12 @@
reg-shift = <2>;
};
- vchiq {
+ vchiq: vchiq {
compatible = "broadcom,bcm2835-vchiq";
reg = <0xB800 0x50>;
interrupts = <2>;
interrupt-parent = <&intc>;
+ cache-line-size = <32>;
};
usb {
diff --git a/src/data/dts/arch/arm/rpi.dts b/src/data/dts/arch/arm/rpi.dts
index 08d9d24..548f888 100644
--- a/src/data/dts/arch/arm/rpi.dts
+++ b/src/data/dts/arch/arm/rpi.dts
@@ -389,4 +389,7 @@
stdout = "uart0";
};
+ __overrides__ {
+ cache_line_size = <&vchiq>, "cache-line-size:0";
+ };
};
diff --git a/src/data/dts/arch/arm/rpi2.dts b/src/data/dts/arch/arm/rpi2.dts
index 59974f1..951bca3 100644
--- a/src/data/dts/arch/arm/rpi2.dts
+++ b/src/data/dts/arch/arm/rpi2.dts
@@ -43,6 +43,24 @@
reg = <0xf00>; /* CPU ID=0xf00 */
clock-frequency = <800000000>; /* 800MHz */
};
+ cpu@1 {
+ compatible = "arm,cortex-a7";
+ device_type = "cpu";
+ reg = <0xf01>; /* CPU ID=0xf01 */
+ clock-frequency = <800000000>; /* 800MHz */
+ };
+ cpu@2 {
+ compatible = "arm,cortex-a7";
+ device_type = "cpu";
+ reg = <0xf02>; /* CPU ID=0xf02 */
+ clock-frequency = <800000000>; /* 800MHz */
+ };
+ cpu@3 {
+ compatible = "arm,cortex-a7";
+ device_type = "cpu";
+ reg = <0xf03>; /* CPU ID=0xf03 */
+ clock-frequency = <800000000>; /* 800MHz */
+ };
};
memory {
@@ -322,18 +340,14 @@
leds {
compatible = "gpio-leds";
- ok {
- label = "ok";
- gpios = <&gpio 16 1>;
-
- /* Don't change this - it configures
- * how the led driver determines if
- * the led is on or off when it loads.
- */
- default-state = "keep";
+ pwr {
+ label = "pwr";
+ gpios = <&gpio 35 0>;
+ };
- /* This is the real default state. */
- linux,default-trigger = "default-on";
+ act {
+ label = "act";
+ gpios = <&gpio 47 0>;
};
};
@@ -386,4 +400,7 @@
stdout = "uart0";
};
+ __overrides__ {
+ cache_line_size = <&vchiq>, "cache-line-size:0";
+ };
};