aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/ipq806x
diff options
context:
space:
mode:
authorChristian Lamparter <chunkeey@gmail.com>2018-01-17 23:38:48 +0100
committerMathias Kresin <dev@kresin.me>2018-01-18 21:21:11 +0100
commit42b47f1b40ac211c0868ed04a356a1764ec7c876 (patch)
tree7a3ca5bdaeb4699fb48fccc61172c65c4482dc20 /target/linux/ipq806x
parent8d755ef052dca29db3b8da74149d9c7d74a54842 (diff)
downloadupstream-42b47f1b40ac211c0868ed04a356a1764ec7c876.tar.gz
upstream-42b47f1b40ac211c0868ed04a356a1764ec7c876.tar.bz2
upstream-42b47f1b40ac211c0868ed04a356a1764ec7c876.zip
ipq806x: overhaul AVM FRITZ!box 4040 device-tree file
This patch aligns the device-tree file with the latest guidelines. - No longer include qcom-ipq4019-ap.dk01.1.dtsi. This file is only partially upstream and therefore subjected to changes that might not be compatible with the board. As a result, the definitions from the file have been copied into this dts. - exclusively use decimal GPIO addresses. - reorganize the reserved-memory layout to waste less memory. There's no point in keeping the u-boot loader around. This should also make it possible to create an image that will boot with the original EVA/ADAM2 loader without needing to install the modified u-boot loader. And finally mark the "tz-apps" as reusable. There isn't a way to upload apps to the trust-zone in OpenWrt yet. But it might see some use in the future as a "secure" key-store/TPM. - sort the first-level nodes alphabetically. - sort nodes with an address by the address. Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
Diffstat (limited to 'target/linux/ipq806x')
-rw-r--r--target/linux/ipq806x/files-4.9/arch/arm/boot/dts/qcom-ipq4019-fritz4040.dts181
1 files changed, 143 insertions, 38 deletions
diff --git a/target/linux/ipq806x/files-4.9/arch/arm/boot/dts/qcom-ipq4019-fritz4040.dts b/target/linux/ipq806x/files-4.9/arch/arm/boot/dts/qcom-ipq4019-fritz4040.dts
index f7b9e2c161..f5ca3d5c56 100644
--- a/target/linux/ipq806x/files-4.9/arch/arm/boot/dts/qcom-ipq4019-fritz4040.dts
+++ b/target/linux/ipq806x/files-4.9/arch/arm/boot/dts/qcom-ipq4019-fritz4040.dts
@@ -14,51 +14,107 @@
*
*/
-#include "qcom-ipq4019-ap.dk01.1.dtsi"
+#include "qcom-ipq4019.dtsi"
#include "qcom-ipq4019-bus.dtsi"
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/input/input.h>
+#include <dt-bindings/soc/qcom,tcsr.h>
/ {
model = "AVM FRITZ!Box 4040";
compatible = "avm,fritzbox-4040", "qcom,ipq4019";
+ aliases {
+ led-boot = &power;
+ led-failsafe = &flash;
+ led-running = &power;
+ led-upgrade = &flash;
+ };
+
reserved-memory {
#address-cells = <0x1>;
#size-cells = <0x1>;
ranges;
- rsvd1@87000000 {
- reg = <0x87000000 0x500000>;
- no-map;
+ tz_apps@87b80000 {
+ reg = <0x87b80000 0x280000>;
+ reusable;
};
- wifi_dump@87500000 {
- reg = <0x87500000 0x600000>;
+ smem@87e00000 {
+ reg = <0x87e00000 0x080000>;
no-map;
};
- rsvd2@87B00000 {
- reg = <0x87b00000 0x500000>;
+ tz@87e80000 {
+ reg = <0x87e80000 0x180000>;
no-map;
};
};
-/*
- This also works. Maybe it could be smaller still.
- reserved-memory {
- #address-cells = <0x1>;
- #size-cells = <0x1>;
- ranges;
+ soc {
+ mdio@90000 {
+ status = "okay";
+ };
- rsvd1@87E00000 {
- reg = <0x87e00000 0x200000>;
- no-map;
+ ess-psgmii@98000 {
+ status = "okay";
+ };
+
+ tcsr@1949000 {
+ compatible = "qcom,tcsr";
+ reg = <0x1949000 0x100>;
+ qcom,wifi_glb_cfg = <TCSR_WIFI_GLB_CFG>;
+ };
+
+ tcsr@194b000 {
+ compatible = "qcom,tcsr";
+ reg = <0x194b000 0x100>;
+ qcom,usb-hsphy-mode-select = <TCSR_USB_HSPHY_HOST_MODE>;
+ };
+
+ ess_tcsr@1953000 {
+ compatible = "qcom,tcsr";
+ reg = <0x1953000 0x1000>;
+ qcom,ess-interface-select = <TCSR_ESS_PSGMII>;
+ };
+
+ tcsr@1957000 {
+ compatible = "qcom,tcsr";
+ reg = <0x1957000 0x100>;
+ qcom,wifi_noc_memtype_m0_m2 = <TCSR_WIFI_NOC_MEMTYPE_M0_M2>;
+ };
+
+ usb2@60f8800 {
+ status = "ok";
+ };
+
+ serial@78af000 {
+ pinctrl-0 = <&serial_pins>;
+ pinctrl-names = "default";
+ status = "ok";
+ };
+
+ usb3@8af8800 {
+ status = "ok";
+ };
+
+ crypto@8e3a000 {
+ status = "ok";
+ };
+
+ wifi@a000000 {
+ status = "okay";
+ };
+
+ wifi@a800000 {
+ status = "okay";
+ };
+
+ watchdog@b017000 {
+ status = "ok";
};
- };
-*/
- soc {
qca8075: ess-switch@c000000 {
status = "okay";
@@ -68,10 +124,14 @@
enable-usb-power {
gpio-hog;
line-name = "enable USB3 power";
- gpios = <0x7 GPIO_ACTIVE_HIGH>;
+ gpios = <7 GPIO_ACTIVE_HIGH>;
output-high;
};
};
+
+ edma@c080000 {
+ status = "okay";
+ };
};
gpio-keys {
@@ -79,7 +139,7 @@
wlan {
label = "wlan";
- gpios = <&tlmm 0x3a GPIO_ACTIVE_LOW>;
+ gpios = <&tlmm 58 GPIO_ACTIVE_LOW>;
linux,code = <KEY_RFKILL>;
};
@@ -90,52 +150,85 @@
};
};
- aliases {
- led-boot = &power;
- led-failsafe = &flash;
- led-running = &power;
- led-upgrade = &flash;
- };
-
gpio-leds {
compatible = "gpio-leds";
wlan {
label = "fritz4040:green:wlan";
- gpios = <&qca8075 0x1 GPIO_ACTIVE_HIGH>;
+ gpios = <&qca8075 1 GPIO_ACTIVE_HIGH>;
};
panic: info_red {
label = "fritz4040:red:info";
- gpios = <&qca8075 0x3 GPIO_ACTIVE_HIGH>;
+ gpios = <&qca8075 3 GPIO_ACTIVE_HIGH>;
panic-indicator;
};
wan {
label = "fritz4040:green:wan";
- gpios = <&qca8075 0x5 GPIO_ACTIVE_HIGH>;
+ gpios = <&qca8075 5 GPIO_ACTIVE_HIGH>;
};
power: power {
label = "fritz4040:green:power";
- gpios = <&qca8075 0xb GPIO_ACTIVE_HIGH>;
+ gpios = <&qca8075 11 GPIO_ACTIVE_HIGH>;
};
lan {
label = "fritz4040:green:lan";
- gpios = <&qca8075 0xd GPIO_ACTIVE_HIGH>;
+ gpios = <&qca8075 13 GPIO_ACTIVE_HIGH>;
};
flash: info_amber {
label = "fritz4040:amber:info";
- gpios = <&qca8075 0xf GPIO_ACTIVE_HIGH>;
+ gpios = <&qca8075 15 GPIO_ACTIVE_HIGH>;
+ };
+ };
+};
+
+&tlmm {
+ serial_pins: serial_pinmux {
+ mux {
+ pins = "gpio60", "gpio61";
+ function = "blsp_uart0";
+ bias-disable;
};
};
+
+ spi_0_pins: spi_0_pinmux {
+ mux {
+ function = "blsp_spi0";
+ pins = "gpio55", "gpio56", "gpio57";
+ drive-strength = <12>;
+ bias-disable;
+ };
+
+ mux_cs {
+ function = "gpio";
+ pins = "gpio54";
+ drive-strength = <2>;
+ bias-disable;
+ output-high;
+ };
+ };
+};
+
+&cryptobam {
+ status = "ok";
+};
+
+&blsp_dma {
+ status = "ok";
};
&spi_0 { /* BLSP1 QUP1 */
+ pinctrl-0 = <&spi_0_pins>;
+ pinctrl-names = "default";
+ status = "ok";
+ cs-gpios = <&tlmm 54 0>;
+
mx25l25635f@0 {
- compatible = "mx25l25635f", "jedec,spi-nor";
+ compatible = "jedec,spi-nor";
#address-cells = <1>;
#size-cells = <0>;
reg = <0>;
@@ -206,12 +299,24 @@
};
partition11@2A0000 {
label = "firmware";
- reg = <0x002A0000 0x01C60000>;
+ reg = <0x002a0000 0x01c60000>;
};
partition12@1f00000 {
label = "jffs2";
- reg = <0x01F00000 0x00100000>;
+ reg = <0x01f00000 0x00100000>;
};
};
};
};
+
+&usb3_ss_phy {
+ status = "ok";
+};
+
+&usb3_hs_phy {
+ status = "ok";
+};
+
+&usb2_hs_phy {
+ status = "ok";
+};