aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohn Crispin <blogic@openwrt.org>2012-12-15 02:00:20 +0000
committerJohn Crispin <blogic@openwrt.org>2012-12-15 02:00:20 +0000
commit62e5c9fddfba7c7569f5bf54c068d835fae515db (patch)
tree7d5b7745909dbb0c15b0c0802a5d926dbf90d4bf
parentcf52d3d0c8b06d37e6c6122e2ac39bfdf9e76293 (diff)
downloadupstream-62e5c9fddfba7c7569f5bf54c068d835fae515db.tar.gz
upstream-62e5c9fddfba7c7569f5bf54c068d835fae515db.tar.bz2
upstream-62e5c9fddfba7c7569f5bf54c068d835fae515db.zip
[lantiq] add devicetrees
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34691 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rw-r--r--target/linux/lantiq/image/ARV4510PW.dts116
-rw-r--r--target/linux/lantiq/image/ARV4518PW.dts192
-rw-r--r--target/linux/lantiq/image/ARV4520PW.dts200
-rw-r--r--target/linux/lantiq/image/ARV4525PW.dts153
-rw-r--r--target/linux/lantiq/image/ARV452CQW.dts219
-rw-r--r--target/linux/lantiq/image/ARV7518PW.dts207
-rw-r--r--target/linux/lantiq/image/ARV7525PW.dts115
-rw-r--r--target/linux/lantiq/image/ARV752DPW.dts141
-rw-r--r--target/linux/lantiq/image/ARV752DPW22.dts128
-rw-r--r--target/linux/lantiq/image/DGN1000B.dts91
-rw-r--r--target/linux/lantiq/image/DGN3500.dtsi179
-rw-r--r--target/linux/lantiq/image/DGN3500B.dts7
-rw-r--r--target/linux/lantiq/image/EASY50810.dts114
-rw-r--r--target/linux/lantiq/image/EASY80920.dtsi129
-rw-r--r--target/linux/lantiq/image/EASY80920NAND.dts (renamed from target/linux/lantiq/image/EASY80920-NAND.dts)0
-rw-r--r--target/linux/lantiq/image/EASY80920NOR.dts (renamed from target/linux/lantiq/image/EASY80920-NOR.dts)0
-rw-r--r--target/linux/lantiq/image/FRITZ7320.dts138
-rw-r--r--target/linux/lantiq/image/Makefile193
-rw-r--r--target/linux/lantiq/image/amazonse.dtsi57
-rw-r--r--target/linux/lantiq/image/ar9.dtsi179
-rw-r--r--target/linux/lantiq/image/danube.dtsi95
-rw-r--r--target/linux/lantiq/image/vr9.dtsi34
22 files changed, 2263 insertions, 424 deletions
diff --git a/target/linux/lantiq/image/ARV4510PW.dts b/target/linux/lantiq/image/ARV4510PW.dts
new file mode 100644
index 0000000000..f1d41da39f
--- /dev/null
+++ b/target/linux/lantiq/image/ARV4510PW.dts
@@ -0,0 +1,116 @@
+/dts-v1/;
+
+/include/ "danube.dtsi"
+
+/ {
+ model = "ARV4510QW - Wippies Homebox";
+
+ chosen {
+ bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
+ };
+
+ memory@0 {
+ reg = <0x0 0x2000000>;
+ };
+
+ sram@1F000000 {
+ vmmc@107000 {
+ status = "okay";
+ };
+ };
+
+ fpi@10000000 {
+ localbus@0 {
+ nor-boot@0 {
+ compatible = "lantiq,nor";
+ bank-width = <2>;
+ reg = <0 0x0 0x1000000>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "uboot";
+ reg = <0x00000 0x20000>;
+ read-only;
+ };
+
+ partition@20000 {
+ label = "uboot_env";
+ reg = <0x20000 0x20000>;
+ read-only;
+ };
+
+ partition@240000 {
+ label = "linux";
+ reg = <0x40000 0xf00000>;
+ };
+
+ partition@fe0000 {
+ label = "boardconfig";
+ reg = <0xfe0000 0x10000>;
+ read-only;
+ };
+ };
+
+ mac_addr {
+ compatible = "lantiq,eth-mac";
+ reg = <0 0xff0016 0x6>;
+ mac-increment = <2>;
+ };
+ };
+ gpio: pinmux@E100B10 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&state_default>;
+
+ state_default: pinmux {
+ stp {
+ lantiq,groups = "stp";
+ lantiq,function = "stp";
+ };
+ exin {
+ lantiq,groups = "exin2";
+ lantiq,function = "exin";
+ };
+ pci_in {
+ lantiq,groups = "req1", "req2";
+ lantiq,function = "pci";
+ lantiq,open-drain = <1>;
+ lantiq,pull = <2>;
+ lantiq,output = <0>;
+ };
+ pci_out {
+ lantiq,groups = "gnt1";
+ lantiq,function = "pci";
+ lantiq,output = <1>;
+ };
+ pci_rst {
+ lantiq,pins = "io21";
+ lantiq,pull = <0>;
+ lantiq,output = <1>;
+ };
+ };
+ };
+
+ gpios: stp@E100BB0 {
+ status = "okay";
+ };
+
+ etop@E180000 {
+ phy-mode = "rmii";
+ };
+
+ pci@E105400 {
+ status = "okay";
+ lantiq,external-clock;
+ interrupt-map = <
+ 0x7000 0 0 1 &icu0 30
+ 0x7800 0 0 1 &icu0 135
+ 0x7800 0 0 2 &icu0 135
+ 0x7800 0 0 3 &icu0 135
+ >;
+ gpio-reset = <&gpio 21 0>;
+ req-mask = <0x3>;
+ };
+
+ };
+};
diff --git a/target/linux/lantiq/image/ARV4518PW.dts b/target/linux/lantiq/image/ARV4518PW.dts
new file mode 100644
index 0000000000..9d0f0cd110
--- /dev/null
+++ b/target/linux/lantiq/image/ARV4518PW.dts
@@ -0,0 +1,192 @@
+/dts-v1/;
+
+/include/ "danube.dtsi"
+
+/ {
+ model = "ARV4518PW - SMC7908A-ISP, Airties WAV-221";
+
+ chosen {
+ bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
+ };
+
+ memory@0 {
+ reg = <0x0 0x4000000>;
+ };
+
+ sram@1F000000 {
+ vmmc@107000 {
+ status = "okay";
+ gpios = <&gpio 31 0>;
+ };
+ };
+
+ fpi@10000000 {
+ localbus@0 {
+ nor-boot@0 {
+ compatible = "lantiq,nor";
+ bank-width = <2>;
+ reg = <0 0x0 0x2000000>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "uboot";
+ reg = <0x00000 0x10000>; /* 64 KB */
+ read-only;
+ };
+
+ partition@10000 {
+ label = "uboot_env";
+ reg = <0x10000 0x10000>; /* 64 KB */
+ read-only;
+ };
+
+ partition@20000 {
+ label = "linux";
+ reg = <0x20000 0x3d0000>;
+ };
+
+ partition@400000 {
+ label = "boardconfig";
+ reg = <0x3f0000 0x10000>;
+ read-only;
+ };
+ };
+
+ gpiomm: gpiomm@4000000 {
+ compatible = "lantiq,gpio-mm";
+ reg = <1 0x0 0x10 >;
+ #address-cells = <1>;
+ #size-cells = <1>;
+ #gpio-cells = <2>;
+ gpio-controller;
+ lantiq,shadow = <0x0>;
+ };
+
+ mac_addr {
+ compatible = "lantiq,eth-mac";
+ reg = <0 0x3f0016 0x6>;
+ mac-increment = <2>;
+ };
+
+ ath5k_eep {
+ compatible = "ath5k,eeprom";
+ reg = <0 0x3f0400 0x800
+ 0 0x3f0016 0x6>;
+ ath,mac-increment = <1>;
+ ath,eep-swap;
+ };
+ };
+
+ gpio: pinmux@E100B10 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&state_default>;
+
+ state_default: pinmux {
+ ebu {
+ lantiq,groups = "ebu cs1";
+ lantiq,function = "ebu";
+ };
+ pci_in {
+ lantiq,groups = "req1", "req2";
+ lantiq,function = "pci";
+ lantiq,open-drain = <1>;
+ lantiq,pull = <2>;
+ lantiq,output = <0>;
+ };
+ pci_out {
+ lantiq,groups = "gnt1", "gnt2";
+ lantiq,function = "pci";
+ lantiq,pull = <0>;
+ lantiq,output = <1>;
+ };
+ };
+ };
+
+ etop@E180000 {
+ phy-mode = "rmii";
+ };
+
+ ifxhcd@E101000 {
+ status = "okay";
+ gpios = <&gpio 14 1>;
+ };
+
+ pci@E105400 {
+ status = "okay";
+ lantiq,external-clock;
+ gpio-reset = <&gpio 21 0>;
+ req-mask = <0xf>;
+ };
+
+ };
+
+/*
+#define ARV4518PW_SWITCH_RESET 13
+*/
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <100>;
+
+ rfkill {
+ label = "rfkill";
+ gpios = <&gpio 28 1>;
+ linux,code = <0xf7>;
+ };
+ reset {
+ label = "reset";
+ gpios = <&gpio 30 1>;
+ linux,code = <0x100>;
+ };
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ power {
+ label = "power";
+ gpios = <&gpio 3 0>;
+ };
+ dsl {
+ label = "dsl";
+ gpios = <&gpio 4 1>;
+ };
+ online {
+ label = "online";
+ gpios = <&gpio 5 1>;
+ };
+ wifi {
+ label = "wifi";
+ gpios = <&gpio 6 1>;
+ };
+ wps {
+ label = "wps";
+ gpios = <&gpio 7 1>;
+ };
+ dsl2 {
+ label = "dsl2";
+ gpios = <&gpio 8 1>;
+ };
+ usb {
+ label = "usb";
+ gpios = <&gpio 19 1>;
+ };
+ voice {
+ label = "voice";
+ gpios = <&gpiomm 0 1>;
+ };
+ fxs1 {
+ label = "fxs1";
+ gpios = <&gpiomm 1 1>;
+ };
+ fxs2 {
+ label = "fxs2";
+ gpios = <&gpiomm 2 1>;
+ };
+ fxo {
+ label = "fxo";
+ gpios = <&gpiomm 3 1>;
+ };
+ };
+};
diff --git a/target/linux/lantiq/image/ARV4520PW.dts b/target/linux/lantiq/image/ARV4520PW.dts
new file mode 100644
index 0000000000..7d280e23b1
--- /dev/null
+++ b/target/linux/lantiq/image/ARV4520PW.dts
@@ -0,0 +1,200 @@
+/dts-v1/;
+
+/include/ "danube.dtsi"
+
+/ {
+ model = "ARV4520PW - Easybox 800, WAV-281";
+
+ chosen {
+ bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
+ };
+
+ memory@0 {
+ reg = <0x0 0x2000000>;
+ };
+
+ sram@1F000000 {
+ vmmc@107000 {
+ status = "okay";
+ gpios = <&gpio 31 0
+ &gpiomm 7 0>;
+ };
+ };
+
+ fpi@10000000 {
+ localbus@0 {
+ nor-boot@0 {
+ compatible = "lantiq,nor";
+ bank-width = <2>;
+ reg = <0 0x0 0x800000>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "uboot";
+ reg = <0x00000 0x20000>;
+ read-only;
+ };
+
+ partition@20000 {
+ label = "uboot_env";
+ reg = <0x20000 0x10000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "linux";
+ reg = <0x30000 0x3c0000>;
+ };
+
+ partition@7f0000 {
+ label = "boardconfig";
+ reg = <0x3f0000 0x10000>;
+ read-only;
+ };
+ };
+
+ mac_addr {
+ compatible = "lantiq,eth-mac";
+ reg = <0 0x3f0016 0x6>;
+ mac-increment = <2>;
+ };
+
+ gpiomm: gpiomm@4000000 {
+ compatible = "lantiq,gpio-mm";
+ reg = <1 0x0 0x10 >;
+ #address-cells = <1>;
+ #size-cells = <1>;
+ #gpio-cells = <2>;
+ gpio-controller;
+ lantiq,shadow = <0x400>;
+ };
+ };
+
+ gpio: pinmux@E100B10 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&state_default>;
+
+ state_default: pinmux {
+ ebu {
+ lantiq,groups = "ebu cs1";
+ lantiq,function = "ebu";
+ };
+ pci_in {
+ lantiq,groups = "req1";
+ lantiq,function = "pci";
+ lantiq,open-drain = <1>;
+ lantiq,pull = <2>;
+ lantiq,output = <0>;
+ };
+ pci_out {
+ lantiq,groups = "gnt1";
+ lantiq,function = "pci";
+ lantiq,output = <1>;
+ };
+ pci_rst {
+ lantiq,pins = "io21";
+ lantiq,open-drain = <0>;
+ lantiq,pull = <0>;
+ };
+ };
+ };
+
+ etop@E180000 {
+ phy-mode = "rmii";
+ };
+
+ ifxhcd@E101000 {
+ status = "okay";
+ gpios = <&gpio 28 0>;
+ };
+
+ pci@E105400 {
+ status = "okay";
+ lantiq,external-clock;
+ gpio-reset = <&gpio 21 0>;
+ };
+
+ };
+
+// gpiomm 10 - switch
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <100>;
+
+ rfkill {
+ label = "wps";
+ gpios = <&gpio 29 1>;
+ linux,code = <0x211>;
+ };
+ reset {
+ label = "reset";
+ gpios = <&gpio 30 1>;
+ linux,code = <0x100>;
+ };
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+
+ power {
+ label = "power";
+ gpios = <&gpio 3 1>;
+ };
+ adsl {
+ label = "adsl";
+ gpios = <&gpio 4 1>;
+ };
+ internet {
+ label = "internet";
+ gpios = <&gpio 5 1>;
+ };
+ power2 {
+ label = "power2";
+ gpios = <&gpio 6 1>;
+ };
+ wps {
+ label = "wps";
+ gpios = <&gpio 7 1>;
+ };
+ wps2 {
+ label = "wps2";
+ gpios = <&gpio 9 1>;
+ };
+ fxs1 {
+ label = "fxs1";
+ gpios = <&gpiomm 0 1>;
+ };
+ fxs2 {
+ label = "fxs2";
+ gpios = <&gpiomm 1 1>;
+ };
+ isdn {
+ label = "isdn";
+ gpios = <&gpiomm 2 1>;
+ };
+ fxo {
+ label = "fxo";
+ gpios = <&gpiomm 3 1>;
+ };
+ voice {
+ label = "voice";
+ gpios = <&gpiomm 4 1>;
+ };
+ usb {
+ label = "usb";
+ gpios = <&gpiomm 5 1>;
+ };
+ wifi {
+ label = "wifi";
+ gpios = <&gpiomm 6 1>;
+ };
+ internet2 {
+ label = "internet2";
+ gpios = <&gpiomm 9 1>;
+ };
+ };
+};
diff --git a/target/linux/lantiq/image/ARV4525PW.dts b/target/linux/lantiq/image/ARV4525PW.dts
new file mode 100644
index 0000000000..23c2f86406
--- /dev/null
+++ b/target/linux/lantiq/image/ARV4525PW.dts
@@ -0,0 +1,153 @@
+/dts-v1/;
+
+/include/ "danube.dtsi"
+
+/ {
+ model = "ARV4525PW - Speedport W501V Typ A";
+
+ memory@0 {
+ reg = <0x0 0x2000000>;
+ };
+
+ sram@1F000000 {
+ vmmc@107000 {
+ status = "okay";
+ gpios = <&gpio 31 0>;
+ };
+ };
+
+ fpi@10000000 {
+ localbus@0 {
+ nor-boot@0 {
+ compatible = "lantiq,nor";
+ bank-width = <2>;
+ reg = <0 0x0 0x2000000>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "uboot";
+ reg = <0x00000 0x10000>;
+ read-only;
+ };
+
+ partition@10000 {
+ label = "uboot_env";
+ reg = <0x10000 0x10000>;
+ read-only;
+ };
+
+ partition@20000 {
+ label = "linux";
+ reg = <0x20000 0x3d0000>;
+ };
+
+ partition@400000 {
+ label = "boardconfig";
+ reg = <0x3f0000 0x10000>;
+ read-only;
+ };
+ };
+
+ mac_addr {
+ compatible = "lantiq,eth-mac";
+ reg = <0 0x3f0016 0x6>;
+ mac-increment = <2>;
+ };
+
+ ath5k_eep {
+ compatible = "ath5k,eeprom";
+ reg = <0 0x3f0400 0x800>;
+ ath,mac-offset = <0>;
+ ath,eep-swap;
+ };
+ };
+
+ gpio: pinmux@E100B10 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&state_default>;
+
+ state_default: pinmux {
+ pci_in {
+ lantiq,groups = "req1";
+ lantiq,function = "pci";
+ lantiq,open-drain = <1>;
+ lantiq,pull = <2>;
+ lantiq,output = <0>;
+ };
+ pci_out {
+ lantiq,groups = "gnt1";
+ lantiq,function = "pci";
+ lantiq,output = <1>;
+ };
+ pci_rst {
+ lantiq,pins = "io21";
+ lantiq,pull = <2>;
+ lantiq,output = <1>;
+ };
+ relay {
+ lantiq,pins = "io31";
+ lantiq,output = <1>;
+ };
+ };
+ };
+
+ etop@E180000 {
+ phy-mode = "mii";
+ };
+
+ pci@E105400 {
+ status = "okay";
+ gpio-reset = <&gpio 21 0>;
+ };
+
+ };
+
+/*
+#define ARV4525PW_PHYRESET 13
+#define ARV4525PW_RELAY 31
+*/
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <100>;
+
+ wps {
+ label = "wps";
+ gpios = <&gpio 29 1>;
+ linux,code = <0x211>;
+ };
+ reset {
+ label = "reset";
+ gpios = <&gpio 30 1>;
+ linux,code = <0x100>;
+ };
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ fxo {
+ label = "fxo";
+ gpios = <&gpio 4 1>;
+ };
+ fxs {
+ label = "fxs";
+ gpios = <&gpio 5 1>;
+ };
+ dsl {
+ label = "dsl";
+ gpios = <&gpio 6 1>;
+ };
+ wifi {
+ label = "wifi";
+ gpios = <&gpio 8 1>;
+ };
+ online {
+ /*label = "online"; - we dont have a power led, lets use this one */
+ label = "power";
+ gpios = <&gpio 9 1>;
+ };
+ };
+};
diff --git a/target/linux/lantiq/image/ARV452CQW.dts b/target/linux/lantiq/image/ARV452CQW.dts
new file mode 100644
index 0000000000..6ab251c6df
--- /dev/null
+++ b/target/linux/lantiq/image/ARV452CQW.dts
@@ -0,0 +1,219 @@
+/dts-v1/;
+
+/include/ "danube.dtsi"
+
+/ {
+ model = "ARV452CQW - Arcor 801";
+
+ chosen {
+ bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
+ };
+
+ memory@0 {
+ reg = <0x0 0x2000000>;
+ };
+
+ sram@1F000000 {
+ vmmc@107000 {
+ status = "okay";
+ gpios = <&gpio 31 0
+ &gpiomm 7 0>;
+ };
+ };
+
+ fpi@10000000 {
+ localbus@0 {
+ nor-boot@0 {
+ compatible = "lantiq,nor";
+ bank-width = <2>;
+ reg = <0 0x0 0x400000>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "uboot";
+ reg = <0x00000 0x10000>;
+ read-only;
+ };
+
+ partition@10000 {
+ label = "uboot_env";
+ reg = <0x10000 0x10000>;
+ read-only;
+ };
+
+ partition@20000 {
+ label = "linux";
+ reg = <0x20000 0x3d0000>;
+ };
+
+ partition@3f0000 {
+ label = "boardconfig";
+ reg = <0x3f0000 0x10000>;
+ read-only;
+ };
+ };
+
+ mac_addr {
+ compatible = "lantiq,eth-mac";
+ reg = <0 0x3f0016 0x6>;
+ mac-increment = <2>;
+ };
+
+ ath5k_eep {
+ compatible = "ath5k,eeprom";
+ reg = <0 0x3f0400 0x800>;
+ ath,mac-offset = <0>;
+ ath,eep-swap;
+ };
+ gpiomm: gpiomm@4000000 {
+ compatible = "lantiq,gpio-mm";
+ reg = <1 0x0 0x10>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+ #gpio-cells = <2>;
+ gpio-controller;
+ lantiq,shadow = <0x77f>;
+ };
+ };
+
+ gpio: pinmux@E100B10 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&state_default>;
+
+ state_default: pinmux {
+ ebu {
+ lantiq,groups = "ebu cs1";
+ lantiq,function = "ebu";
+ };
+ pci_in {
+ lantiq,groups = "req1";
+ lantiq,function = "pci";
+ lantiq,open-drain = <1>;
+ lantiq,pull = <2>;
+ lantiq,output = <0>;
+ };
+ pci_out {
+ lantiq,groups = "gnt1";
+ lantiq,function = "pci";
+ lantiq,output = <1>;
+ };
+ pci_rst {
+ lantiq,pins = "io21";
+ lantiq,pull = <0>;
+ lantiq,output = <1>;
+ };
+ leds {
+ lantiq,pins = "io3", "io5", "io6", "io7", "io9";
+ lantiq,output = <1>;
+ };
+ };
+ };
+
+ ifxhcd@E101000 {
+ status = "okay";
+ gpios = <&gpio 28 0>;
+ };
+
+ etop@E180000 {
+ phy-mode = "rmii";
+ };
+
+ pci@E105400 {
+ status = "okay";
+ lantiq,external-clock;
+ gpio-reset = <&gpio 21 0>;
+ };
+
+ };
+
+/*
+#define ARV452CPW_SWITCH_RESET 110
+*/
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled1";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <100>;
+
+ wps {
+ label = "wps";
+ gpios = <&gpio 11 1>;
+ linux,code = <0x101>;
+ };
+ restart {
+ label = "restart";
+ gpios = <&gpio 12 1>;
+ linux,code = <0x110>;
+ };
+ reset {
+ label = "reset";
+ gpios = <&gpio 28 1>;
+ linux,code = <0x100>;
+ };
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ power0 {
+ label = "power0";
+ gpios = <&gpio 3 1>;
+ };
+ dsl {
+ label = "dsl";
+ gpios = <&gpio 4 1>;
+ };
+ isdn {
+ label = "isdn";
+ gpios = <&gpio 5 1>;
+ };
+ power1 {
+ label = "power1";
+ gpios = <&gpio 6 1>;
+ };
+ wps {
+ label = "wps";
+ gpios = <&gpio 7 1>;
+ };
+ wps1 {
+ label = "wps1";
+ gpios = <&gpio 9 1>;
+ };
+ fxs1 {
+ label = "fxs1";
+ gpios = <&gpiomm 0 1>;
+ };
+ fxs2 {
+ label = "fxs2";
+ gpios = <&gpiomm 1 1>;
+ };
+ wps2 {
+ label = "wps2";
+ gpios = <&gpiomm 2 1>;
+ };
+ fxo {
+ label = "fxo";
+ gpios = <&gpiomm 3 1>;
+ };
+ voice {
+ label = "voice";
+ gpios = <&gpiomm 4 1>;
+ };
+ usb {
+ label = "usb";
+ gpios = <&gpiomm 5 1>;
+ };
+ wifi {
+ label = "wifi";
+ gpios = <&gpiomm 6 1>;
+ };
+ dsl2 {
+ label = "dsl2";
+ gpios = <&gpiomm 8 1>;
+ };
+ dsl3 {
+ label = "dsl3";
+ gpios = <&gpiomm 9 1>;
+ };
+ };
+};
diff --git a/target/linux/lantiq/image/ARV7518PW.dts b/target/linux/lantiq/image/ARV7518PW.dts
new file mode 100644
index 0000000000..e48bd46750
--- /dev/null
+++ b/target/linux/lantiq/image/ARV7518PW.dts
@@ -0,0 +1,207 @@
+/dts-v1/;
+
+/include/ "danube.dtsi"
+
+/ {
+ model = "ARV7518PW - Astoria Networks";
+
+ chosen {
+ bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
+ };
+
+ memory@0 {
+ reg = <0x0 0x4000000>;
+ };
+
+ sram@1F000000 {
+ vmmc@107000 {
+ status = "okay";
+ };
+ };
+
+ fpi@10000000 {
+ localbus@0 {
+ nor-boot@0 {
+ compatible = "lantiq,nor";
+ bank-width = <2>;
+ reg = <0 0x0 0x2000000>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "uboot";
+ reg = <0x00000 0x10000>;
+ read-only;
+ };
+
+ partition@10000 {
+ label = "uboot_env";
+ reg = <0x10000 0x10000>;
+ };
+
+ partition@20000 {
+ label = "linux";
+ reg = <0x20000 0x7d0000>;
+ };
+
+ partition@400000 {
+ label = "boardconfig";
+ reg = <0x7f0000 0x10000>;
+ read-only;
+ };
+ };
+
+ gpiomm: gpiomm@4000000 {
+ compatible = "lantiq,gpio-mm";
+ reg = <1 0x0 0x10 >;
+ #address-cells = <1>;
+ #size-cells = <1>;
+ #gpio-cells = <2>;
+ gpio-controller;
+ lantiq,shadow = <0x0>;
+ };
+
+ mac_addr {
+ compatible = "lantiq,eth-mac";
+ reg = <0 0x7f0016 0x6>;
+ mac-increment = <2>;
+ };
+
+ ath9k_eep {
+ compatible = "ath9k,eeprom";
+ reg = <0 0x7f0400 0x800
+ 0 0x7f0016 0x6>;
+ ath,mac-increment = <1>;
+ ath,eep-swap;
+ };
+ };
+
+ gpio: pinmux@E100B10 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&state_default>;
+
+ state_default: pinmux {
+ ebu {
+ lantiq,groups = "ebu cs1";
+ lantiq,function = "ebu";
+ };
+ pci_in {
+ lantiq,groups = "req1", "req2";
+ lantiq,function = "pci";
+ lantiq,open-drain = <1>;
+ lantiq,pull = <2>;
+ lantiq,output = <0>;
+ };
+ pci_out {
+ lantiq,groups = "gnt1", "gnt2";
+ lantiq,function = "pci";
+ lantiq,pull = <0>;
+ lantiq,output = <1>;
+ };
+ pci_rst {
+ lantiq,pins = "io21";
+ lantiq,pull = <2>;
+ lantiq,output = <1>;
+ };
+ };
+ };
+
+ etop@E180000 {
+ phy-mode = "rmii";
+ };
+
+ ifxhcd@E101000 {
+ status = "okay";
+ gpio-reset = <&gpio 14 0>;
+ };
+
+ pci@E105400 {
+ status = "okay";
+ lantiq,external-clock;
+ gpio-reset = <&gpio 21 0>;
+ req-mask = <0xf>;
+ };
+
+ };
+
+/*
+#define SWITCH_RESET 13
+*/
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <100>;
+
+ rfkill {
+ label = "rfkill";
+ gpios = <&gpio 25 1>;
+ linux,code = <0xf7>;
+ };
+/* reset {
+ label = "reset";
+ gpios = <&gpio 30 1>;
+ linux,code = <0x100>;
+ };*/
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ power {
+ label = "power";
+ gpios = <&gpio 2 0>;
+ };
+ dsl {
+ label = "dsl";
+ gpios = <&gpio 4 1>;
+ };
+ online {
+ label = "online";
+ gpios = <&gpio 5 1>;
+ };
+ wifi {
+ label = "wifi";
+ gpios = <&gpio 6 1>;
+ };
+ power2 {
+ label = "power2";
+ gpios = <&gpio 7 1>;
+ };
+ online2 {
+ label = "online2";
+ gpios = <&gpio 8 1>;
+ };
+ usb {
+ label = "usb";
+ gpios = <&gpio 19 1>;
+ };
+ voice {
+ label = "voice";
+ gpios = <&gpiomm 0 1>;
+ };
+ fxs1 {
+ label = "fxs1";
+ gpios = <&gpiomm 1 1>;
+ };
+ fxs2 {
+ label = "fxs2";
+ gpios = <&gpiomm 2 1>;
+ };
+ fxo {
+ label = "fxo";
+ gpios = <&gpiomm 3 1>;
+ };
+ wps {
+ label = "wps";
+ gpios = <&gpiomm 4 1>;
+ };
+ wps2 {
+ label = "wps2";
+ gpios = <&gpiomm 5 1>;
+ };
+ wps3 {
+ label = "wps3";
+ gpios = <&gpiomm 6 1>;
+ };
+ };
+};
diff --git a/target/linux/lantiq/image/ARV7525PW.dts b/target/linux/lantiq/image/ARV7525PW.dts
index 080ed8e877..7ad70d5e63 100644
--- a/target/linux/lantiq/image/ARV7525PW.dts
+++ b/target/linux/lantiq/image/ARV7525PW.dts
@@ -3,6 +3,8 @@
/include/ "danube.dtsi"
/ {
+ model = "ARV7525PW - Speedport W303V Typ A";
+
chosen {
bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
};
@@ -11,16 +13,15 @@
reg = <0x0 0x2000000>;
};
+ sram@1F000000 {
+ vmmc@107000 {
+ status = "okay";
+ gpios = <&gpio 31 0>;
+ };
+ };
+
fpi@10000000 {
- #address-cells = <1>;
- #size-cells = <1>;
localbus@0 {
- #address-cells = <2>;
- #size-cells = <1>;
- ranges = <0 0 0x0 0x3ffffff /* addrsel0 */
- 1 0 0x4000000 0x4000010>; /* addsel1 */
- compatible = "lantiq,localbus", "simple-bus";
-
nor-boot@0 {
compatible = "lantiq,nor";
bank-width = <2>;
@@ -30,35 +31,45 @@
partition@0 {
label = "uboot";
- reg = <0x00000 0x10000>; /* 64 KB */
+ reg = <0x00000 0x10000>;
+ read-only;
};
partition@10000 {
label = "uboot_env";
- reg = <0x10000 0x10000>; /* 64 KB */
+ reg = <0x10000 0x10000>;
+ read-only;
};
partition@20000 {
label = "linux";
- reg = <0x20000 0x3c0000>;
+ reg = <0x20000 0x3d0000>;
};
partition@400000 {
- label = "boardconfig";
+ label = "board_config";
reg = <0x3f0000 0x10000>;
+ read-only;
};
};
+
+ mac_addr {
+ compatible = "lantiq,eth-mac";
+ reg = <0 0x3f0016 0x6>;
+ mac-increment = <2>;
+ };
+
+ ralink_eep {
+ compatible = "ralink,eeprom";
+ ralink,eeprom = "RT2860.eeprom";
+ reg = <0 0x3f0410 0x110>;
+ };
};
gpio: pinmux@E100B10 {
- compatible = "lantiq,pinctrl-xway";
pinctrl-names = "default";
pinctrl-0 = <&state_default>;
- #gpio-cells = <2>;
- gpio-controller;
- reg = <0xE100B10 0xA0>;
-
state_default: pinmux {
exin {
lantiq,groups = "exin1";
@@ -71,69 +82,61 @@
};
};
- adsl: dsl@E116000 {
- compatible = "lantiq,dsl-xway";
- interrupt-parent = <&icu0>;
- interrupts = <63 96>;
- };
-
etop@E180000 {
- compatible = "lantiq,etop-xway";
- reg = <0xE180000 0x40000>;
- interrupt-parent = <&icu0>;
- interrupts = <73 78>;
- phy-mode = "rmii";
- mac-address = [ 00 11 22 33 44 55 ];
+ phy-mode = "mii";
};
pci@E105400 {
- lantiq,bus-clock = <33333333>;
- interrupt-map-mask = <0xf800 0x0 0x0 0x7>;
- interrupt-map = <
- 0x7000 0 0 1 &icu0 30 1 // slot 14, irq 29
- >;
- gpio-reset = <&gpio 21 0>;
- req-mask = <0x1>; /* GNT1 */
+ status = "okay";
+ interrupt-map = <0x7000 0 0 1 &icu0 135 1>;
+ req-mask = <0x1>;
};
};
- gpio-keys {
- compatible = "gpio-keys1";
- reset {
- label = "Reset";
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <100>;
+
+ wps {
+ label = "wps";
gpios = <&gpio 29 1>;
- gpio-key,wakeup;
+ linux,code = <0x211>;
+ };
+ reset {
+ label = "reset";
+ gpios = <&gpio 30 1>;
linux,code = <0x100>;
};
};
gpio-leds {
compatible = "gpio-leds";
- festnetz {
- label = "Festnetz";
+ power {
+ label = "power";
+ gpios = <&gpio 3 1>;
+ };
+ power1 {
+ label = "power1";
gpios = <&gpio 4 1>;
- default-state = "on";
};
- internet {
- label = "Internet";
+ online {
+ label = "online";
gpios = <&gpio 5 1>;
- default-state = "on";
};
- wlan {
- label = "WLan";
+ voice {
+ label = "voice";
gpios = <&gpio 6 1>;
- default-state = "on";
};
- online {
- label = "Online";
+ voice2 {
+ label = "voice2";
gpios = <&gpio 8 1>;
- default-state = "on";
};
- dsl {
- label = "DSL";
+ wifi {
+ label = "wifi";
gpios = <&gpio 9 1>;
- default-state = "on";
};
};
};
diff --git a/target/linux/lantiq/image/ARV752DPW.dts b/target/linux/lantiq/image/ARV752DPW.dts
index eb28b9b6fa..3c58f7e2ea 100644
--- a/target/linux/lantiq/image/ARV752DPW.dts
+++ b/target/linux/lantiq/image/ARV752DPW.dts
@@ -3,6 +3,8 @@
/include/ "danube.dtsi"
/ {
+ model = "ARV752DPW - Arcor 802";
+
chosen {
bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
};
@@ -11,16 +13,15 @@
reg = <0x0 0x4000000>;
};
+ sram@1F000000 {
+ vmmc@107000 {
+ status = "okay";
+ gpios = <&gpiomm 1 0>;
+ };
+ };
+
fpi@10000000 {
- #address-cells = <1>;
- #size-cells = <1>;
localbus@0 {
- #address-cells = <2>;
- #size-cells = <1>;
- ranges = <0 0 0x0 0x3ffffff /* addrsel0 */
- 1 0 0x4000000 0x4000010>; /* addsel1 */
- compatible = "lantiq,localbus", "simple-bus";
-
nor-boot@0 {
compatible = "lantiq,nor";
bank-width = <2>;
@@ -37,6 +38,7 @@
partition@10000 {
label = "uboot_env";
reg = <0x10000 0x10000>;
+ read-only;
};
partition@20000 {
@@ -45,11 +47,18 @@
};
partition@7f0000 {
- label = "boardconfig";
+ label = "board_config";
reg = <0x7f0000 0x10000>;
read-only;
};
};
+
+ mac_addr {
+ compatible = "lantiq,eth-mac";
+ reg = <0 0x7f0016 0x6>;
+ mac-increment = <2>;
+ };
+
gpiomm: gpiomm@4000000 {
compatible = "lantiq,gpio-mm";
reg = <1 0x0 0x10 >;
@@ -57,130 +66,154 @@
#size-cells = <1>;
#gpio-cells = <2>;
gpio-controller;
- lantiq,shadow = <2>;
+ lantiq,shadow = <0x3>;
};
};
gpio: pinmux@E100B10 {
- compatible = "lantiq,pinctrl-xway";
pinctrl-names = "default";
pinctrl-0 = <&state_default>;
- #gpio-cells = <2>;
- gpio-controller;
- reg = <0xE100B10 0xA0>;
-
state_default: pinmux {
ebu {
lantiq,groups = "ebu cs1";
lantiq,function = "ebu";
};
- pci {
- lantiq,groups = "gnt1", "req1";
+ exin {
+ lantiq,groups = "exin1";
+ lantiq,function = "exin";
+ lantiq,pull = <2>;
+ lantiq,output = <0>;
+ };
+ pci_in {
+ lantiq,groups = "req2", "req1";
+ lantiq,function = "pci";
+ lantiq,open-drain = <1>;
+ lantiq,pull = <2>;
+ lantiq,output = <0>;
+ };
+ pci_out {
+ lantiq,groups = "gnt1";
lantiq,function = "pci";
+ lantiq,output = <1>;
};
- conf_out {
- lantiq,pins = "io3", "io5", "io6", "io8", /* leds */
- "io21"; /* pci-rst */
- lantiq,open-drain;
+ pci_rst {
+ lantiq,pins = "io21";
+ lantiq,pull = <2>;
+ lantiq,output = <1>;
+ };
+ leds {
+ lantiq,pins = "io3", "io5", "io6", "io8";
+ lantiq,output = <1>;
lantiq,pull = <0>;
};
+ keys {
+ lantiq,pins = "io11", "io12", "io13", "io28";
+ lantiq,output = <0>;
+ lantiq,pull = <2>;
+ lantiq,open-drain = <1>;
+ };
};
};
- adsl: dsl@E116000 {
- compatible = "lantiq,dsl-xway";
- interrupt-parent = <&icu0>;
- interrupts = <63 96>;
+ ifxhcd@E101000 {
+ status = "okay";
+ gpios = <&gpiomm 0 0>;
};
etop@E180000 {
- compatible = "lantiq,etop-xway";
- reg = <0xE180000 0x40000>;
- interrupt-parent = <&icu0>;
- interrupts = <73 78>;
phy-mode = "rmii";
- mac-address = [ 00 11 22 33 44 55 ];
};
pci@E105400 {
- lantiq,bus-clock = <33333333>;
- interrupt-map-mask = <0xf800 0x0 0x0 0x7>;
- interrupt-map = <
- 0x7000 0 0 1 &icu0 30 1 // slot 14, irq 29
- >;
+ status = "okay";
lantiq,external-clock;
gpio-reset = <&gpio 21 0>;
+ interrupt-map = <0x7000 0 0 1 &icu0 135>;
req-mask = <0x3>;
};
};
- gpio-keys {
- compatible = "gpio-keys1";
+ ralink_eep {
+ compatible = "ralink,eeprom";
+ ralink,eeprom = "RT2860.eeprom";
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <100>;
+
+ /* wps {
+ label = "wps";
+ gpios = <&gpio 11 1>;
+ linux,code = <0x211>;
+ };*/
+ restart {
+ label = "restart";
+ gpios = <&gpio 12 0>;
+ linux,code = <0x110>;
+ };
+ dsl {
+ label = "dsl";
+ gpios = <&gpio 13 0>;
+ linux,code = <0x111>;
+ };
reset {
- label = "Reset";
- gpios = <&gpio 29 1>;
- gpio-key,wakeup;
+ label = "reset";
+ gpios = <&gpio 28 0>;
linux,code = <0x100>;
};
};
+
gpio-leds {
compatible = "gpio-leds";
- power0 {
- label = "power0";
+ power {
+ label = "power";
gpios = <&gpio 3 1>;
- default-state = "on";
};
message {
label = "message";
gpios = <&gpio 5 1>;
- default-state = "on";
};
power1 {
label = "power1";
gpios = <&gpio 6 1>;
- default-state = "on";
};
voice1 {
label = "voice1";
gpios = <&gpio 8 1>;
- default-state = "on";
};
microphone {
- label = "microphone";
+ /* use this led as te usb led */
+ label = "usb";
gpios = <&gpiomm 3 1>;
- default-state = "on";
};
wifi {
label = "wifi";
gpios = <&gpiomm 4 1>;
- default-state = "on";
};
fxs1 {
label = "fxs1";
gpios = <&gpiomm 5 1>;
- default-state = "on";
};
fx2 {
label = "fxs2";
gpios = <&gpiomm 6 1>;
- default-state = "on";
};
fxo {
label = "fxo";
gpios = <&gpiomm 7 1>;
- default-state = "on";
};
internet {
label = "internet";
gpios = <&gpiomm 8 1>;
- default-state = "on";
};
voice2 {
label = "voice2";
gpios = <&gpiomm 9 1>;
- default-state = "on";
};
};
};
diff --git a/target/linux/lantiq/image/ARV752DPW22.dts b/target/linux/lantiq/image/ARV752DPW22.dts
index 7349bdb446..6057f7d904 100644
--- a/target/linux/lantiq/image/ARV752DPW22.dts
+++ b/target/linux/lantiq/image/ARV752DPW22.dts
@@ -3,6 +3,8 @@
/include/ "danube.dtsi"
/ {
+ model = "ARV752DPW22 - Arcor 803";
+
chosen {
bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
};
@@ -11,16 +13,15 @@
reg = <0x0 0x4000000>;
};
+ sram@1F000000 {
+ vmmc@107000 {
+ status = "okay";
+ gpios = <&gpiomm 1 0>;
+ };
+ };
+
fpi@10000000 {
- #address-cells = <1>;
- #size-cells = <1>;
localbus@0 {
- #address-cells = <2>;
- #size-cells = <1>;
- ranges = <0 0 0x0 0x3ffffff /* addrsel0 */
- 1 0 0x4000000 0x4000010>; /* addsel1 */
- compatible = "lantiq,localbus", "simple-bus";
-
nor-boot@0 {
compatible = "lantiq,nor";
bank-width = <2>;
@@ -37,6 +38,7 @@
partition@10000 {
label = "uboot_env";
reg = <0x10000 0x10000>;
+ read-only;
};
partition@20000 {
@@ -45,11 +47,18 @@
};
partition@7f0000 {
- label = "boardconfig";
+ label = "board_config";
reg = <0x7f0000 0x10000>;
read-only;
};
};
+
+ mac_addr {
+ compatible = "lantiq,eth-mac";
+ reg = <0 0x7f0016 0x6>;
+ mac-increment = <2>;
+ };
+
gpiomm: gpiomm@4000000 {
compatible = "lantiq,gpio-mm";
reg = <1 0x0 0x10 >;
@@ -57,78 +66,105 @@
#size-cells = <1>;
#gpio-cells = <2>;
gpio-controller;
- lantiq,shadow = <2>;
+ lantiq,shadow = <3>;
};
};
gpio: pinmux@E100B10 {
- compatible = "lantiq,pinctrl-xway";
pinctrl-names = "default";
pinctrl-0 = <&state_default>;
- #gpio-cells = <2>;
- gpio-controller;
- reg = <0xE100B10 0xA0>;
-
state_default: pinmux {
+ ebu {
+ lantiq,groups = "ebu cs1";
+ lantiq,function = "ebu";
+ };
exin {
lantiq,groups = "exin1";
lantiq,function = "exin";
+ lantiq,pull = <2>;
+ lantiq,output = <0>;
};
- pci {
- lantiq,groups = "gnt1", "gnt2", "req1", "req2";
+ pci_in {
+ lantiq,groups = "req1", "req2";
lantiq,function = "pci";
+ lantiq,open-drain = <1>;
+ lantiq,pull = <2>;
+ lantiq,output = <0>;
+ };
+ pci_out {
+ lantiq,groups = "gnt1";
+ lantiq,function = "pci";
+ lantiq,output = <1>;
+ };
+ pci_rst {
+ lantiq,pins = "io21";
+ lantiq,pull = <2>;
+ lantiq,output = <1>;
};
- conf_out {
- lantiq,pins = "io3", "io5", "io6", "io8", /* leds */
- "io21"; /* pci-rst */
- lantiq,open-drain;
- lantiq,pull = <0>;
+ leds {
+ lantiq,pins = "io3", "io5", "io6", "io8";
+ lantiq,output = <1>;
};
};
};
- adsl: dsl@E116000 {
- compatible = "lantiq,dsl-xway";
- interrupt-parent = <&icu0>;
- interrupts = <63 96>;
+ ifxhcd@E101000 {
+ status = "okay";
+ gpios = <&gpiomm 0 0>;
};
etop@E180000 {
- compatible = "lantiq,etop-xway";
- reg = <0xE180000 0x40000>;
- interrupt-parent = <&icu0>;
- interrupts = <73 78>;
phy-mode = "rmii";
- mac-address = [ 00 11 22 33 44 55 ];
};
pci@E105400 {
- lantiq,bus-clock = <33333333>;
- interrupt-map-mask = <0xf800 0x0 0x0 0x7>;
+ status = "okay";
+ lantiq,external-clock;
interrupt-map = <
- 0x7000 0 0 1 &icu0 30 1 // slot 14, irq 29
+ 0x7000 0 0 1 &icu0 30
+ 0x7800 0 0 1 &icu0 135
+ 0x7800 0 0 2 &icu0 135
+ 0x7800 0 0 3 &icu0 135
>;
- lantiq,external-clock;
gpio-reset = <&gpio 21 0>;
req-mask = <0x3>;
};
};
- gpio-keys {
- compatible = "gpio-keys1";
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <100>;
+
+ wps {
+ label = "wps";
+ gpios = <&gpio 11 1>;
+ linux,code = <0x211>;
+ };
+ restart {
+ label = "restart";
+ gpios = <&gpio 12 1>;
+ linux,code = <0x110>;
+ };
+ dsl {
+ label = "dsl";
+ gpios = <&gpio 13 1>;
+ linux,code = <0x111>;
+ };
reset {
- label = "Reset";
- gpios = <&gpio 29 1>;
- gpio-key,wakeup;
+ label = "reset";
+ gpios = <&gpio 28 1>;
linux,code = <0x100>;
};
};
+
gpio-leds {
compatible = "gpio-leds";
- power0 {
- label = "power0";
+ power {
+ label = "power";
gpios = <&gpio 3 1>;
default-state = "on";
};
@@ -153,7 +189,7 @@
default-state = "on";
};
wifi {
- label = "wifi";
+ label = "wifi_rt";
gpios = <&gpiomm 4 1>;
default-state = "on";
};
@@ -162,7 +198,7 @@
gpios = <&gpiomm 5 1>;
default-state = "on";
};
- fx2 {
+ fxs2 {
label = "fxs2";
gpios = <&gpiomm 6 1>;
default-state = "on";
@@ -172,8 +208,8 @@
gpios = <&gpiomm 7 1>;
default-state = "on";
};
- internet {
- label = "internet";
+ dsl {
+ label = "dsl";
gpios = <&gpiomm 8 1>;
default-state = "on";
};
diff --git a/target/linux/lantiq/image/DGN1000B.dts b/target/linux/lantiq/image/DGN1000B.dts
index 9fac104b2f..1fc8052e21 100644
--- a/target/linux/lantiq/image/DGN1000B.dts
+++ b/target/linux/lantiq/image/DGN1000B.dts
@@ -3,6 +3,8 @@
/include/ "amazonse.dtsi"
/ {
+ model = "DGN1000B - Netgear DGN1000B";
+
chosen {
bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
};
@@ -12,18 +14,10 @@
};
fpi@10000000 {
- #address-cells = <1>;
- #size-cells = <1>;
-
gpio: pinmux@E100B10 {
- compatible = "lantiq,pinctrl-ase";
pinctrl-names = "default";
pinctrl-0 = <&state_default>;
- #gpio-cells = <2>;
- gpio-controller;
- reg = <0xE100B10 0xA0>;
-
state_default: pinmux {
spi {
lantiq,groups = "spi", "spi_cs1";
@@ -33,46 +27,26 @@
lantiq,groups = "asc";
lantiq,function = "asc";
};
- exin {
- lantiq,groups = "exin1", "exin2";
- lantiq,function = "exin";
- };
- conf_in {
- lantiq,pins = "io0", "io29"; /* nand rdy */
+ keys_in {
+ lantiq,pins = "io0",/* "io25", */"io29";
lantiq,pull = <2>;
+ lantiq,open-drain = <1>;
};
};
};
- adsl: dsl@E116000 {
- compatible = "lantiq,dsl-xway";
- interrupt-parent = <&icu0>;
- interrupts = <63 96>;
- };
-
etop@E180000 {
- compatible = "lantiq,etop-xway";
- reg = <0xE180000 0x40000>;
- interrupt-parent = <&icu0>;
- interrupts = <105 109>;
- phy-mode = "ephy";
+ phy-mode = "mii";
mac-address = [ 00 11 22 33 44 55 ];
};
spi@E100800 {
- compatible = "lantiq,spi-xway";
- reg = <0xE100800 0x100>;
- interrupt-parent = <&icu0>;
- interrupts = <24 25 26>;
- #address-cells = <1>;
- #size-cells = <1>;
-
m25p80@0 {
#address-cells = <1>;
#size-cells = <1>;
- compatible = "s25fl129p0";
+ compatible = "mx25l3205d";
reg = <0 0>;
- linux,modalias = "m25p80", "mx25l3205d";
+ linux,modalias = "m25p80", "mx25l64";
spi-max-frequency = <5000000>;
partition@0 {
@@ -105,46 +79,53 @@
};
};
};
+ ifxhcd@E101000 {
+ status = "okay";
+ };
};
-
- /* missing button on <&gpio 25 0> */
-/* gpio-keys {
- compatible = "gpio-keys";
- interrupt-parent = <&icu0>;
- interrupts = <30 31>;
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <100>;
+
reset {
- label = "Reset";
- gpios = <&gpio 0 0>;
- gpio-key,wakeup;
+ label = "reset";
+ gpios = <&gpio 0 1>;
linux,code = <0x100>;
};
+ rfkill {
+ label = "rfkill";
+ gpios = <&gpio 25 1>;
+ linux,code = <0xf7>;
+ };
wps {
- label = "WPS";
+ label = "wps";
gpios = <&gpio 29 1>;
- gpio-key,wakeup;
- linux,code = <0x100>;
+ linux,code = <0x211>;
};
};
-*/
+
gpio-leds {
- compatible = "gpio-leds";
- festnetz {
- label = "DSL";
+ cmpatible = "gpio-leds";
+ dsl {
+ label = "dsl";
gpios = <&gpio 1 1>;
default-state = "on";
};
- internet1 {
- label = "Internet1";
+ online {
+ label = "online";
gpios = <&gpio 2 1>;
default-state = "on";
};
- internet2 {
- label = "Internet2";
+ online2 {
+ label = "online2";
gpios = <&gpio 3 1>;
default-state = "on";
};
wps {
- label = "WPS";
+ label = "wps";
gpios = <&gpio 4 1>;
default-state = "on";
};
diff --git a/target/linux/lantiq/image/DGN3500.dtsi b/target/linux/lantiq/image/DGN3500.dtsi
new file mode 100644
index 0000000000..12e1e80935
--- /dev/null
+++ b/target/linux/lantiq/image/DGN3500.dtsi
@@ -0,0 +1,179 @@
+/include/ "ar9.dtsi"
+
+/ {
+ chosen {
+ bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
+ };
+
+ memory@0 {
+ reg = <0x0 0x4000000>;
+ };
+
+ fpi@10000000 {
+ gpio: pinmux@E100B10 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&state_default>;
+
+ state_default: pinmux {
+ exin {
+ lantiq,groups = "exin1";
+ lantiq,function = "exin";
+ };
+ pci {
+ lantiq,groups = "gnt1", "req1";
+ lantiq,function = "pci";
+ };
+ pci-in {
+ lantiq,groups = "req1";
+ lantiq,output = <0>;
+ lantiq,open-drain = <1>;
+ lantiq,pull = <2>;
+ };
+ pci-out {
+ lantiq,groups = "gnt1";
+ lantiq,output = <1>;
+ lantiq,pull = <0>;
+ };
+ spi-in {
+ lantiq,pins = "io16";
+ lantiq,open-drain = <1>;
+ lantiq,pull = <2>;
+ };
+ spi-out {
+ lantiq,pins = "io10", "io17", "io18", "io21";
+ lantiq,open-drain = <0>;
+ lantiq,pull = <2>;
+ };
+ };
+ };
+
+ etop@E180000 {
+ phy-mode = "mii";
+ mac-address = [ 00 11 22 33 44 55 ];
+ };
+
+ ifxhcd@E101000 {
+ status = "okay";
+ };
+
+ pci@E105400 {
+ status = "okay";
+
+ lantiq,bus-clock = <33333333>;
+ interrupt-map-mask = <0xf800 0x0 0x0 0x7>;
+ interrupt-map = <0x7000 0 0 1 &icu0 30 1>;
+ gpio-reset = <&gpio 21 0>;
+ req-mask = <0x1>; /* GNT1 */
+ };
+ };
+
+ spi {
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ compatible = "spi-gpio";
+
+ gpio-miso = <&gpio 16 0>;
+ gpio-mosi = <&gpio 17 0>;
+ gpio-sck = <&gpio 18 0>;
+ num-chipselects = <1>;
+ cs-gpios = <&gpio 10 0>;
+
+ m25p80@0 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "s25fl129p0";
+ reg = <0 0>;
+ linux,modalias = "m25p80", "mx25l3205d";
+ spi-max-frequency = <1000000>;
+ spi-cpha;
+ spi-cpol;
+ spi-cs-high;
+
+ partition@0 {
+ reg = <0x0 0x10000>;
+ label = "uboot";
+ read-only;
+ };
+
+ partition@10000 {
+ reg = <0x10000 0x10000>;
+ label = "uboot-env";
+ read-only;
+ };
+
+ partition@20000 {
+ reg = <0x20000 0x10000>;
+ label = "calibration";
+ read-only;
+ };
+
+ partition@50000 {
+ reg = <0x50000 0xfa0000>;
+ label = "linux";
+ };
+ };
+ };
+
+ rtl8366rb {
+ compatible = "rtl8366rb";
+ gpio-sda = <&gpio 35 0>;
+ gpio-sck = <&gpio 37 0>;
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <100>;
+
+ rfkill {
+ label = "rfkill";
+ gpios = <&gpio 36 1>;
+ linux,code = <0xf7>;
+ };
+ wps {
+ label = "wps";
+ gpios = <&gpio 54 1>;
+ linux,code = <0x211>;
+ };
+ reset {
+ label = "reset";
+ gpios = <&gpio 53 1>;
+ linux,code = <0x100>;
+ };
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ internet {
+ label = "inernet";
+ gpios = <&gpio 2 1>;
+ };
+ dsl {
+ label = "dsl";
+ gpios = <&gpio 4 1>;
+ };
+ usb {
+ label = "usb";
+ gpios = <&gpio 22 1>;
+ };
+ power {
+ label = "power";
+ gpios = <&gpio 34 1>;
+ default-state = "on";
+ };
+ power2 {
+ label = "power2";
+ gpios = <&gpio 39 1>;
+ };
+ wifi {
+ label = "wifi";
+ gpios = <&gpio 51 1>;
+ };
+ wps {
+ label = "wps";
+ gpios = <&gpio 52 1>;
+ };
+ };
+};
diff --git a/target/linux/lantiq/image/DGN3500B.dts b/target/linux/lantiq/image/DGN3500B.dts
new file mode 100644
index 0000000000..71a4e58c13
--- /dev/null
+++ b/target/linux/lantiq/image/DGN3500B.dts
@@ -0,0 +1,7 @@
+/dts-v1/;
+
+/include/ "DGN3500.dtsi"
+
+/ {
+ model = "DGN3500B - Netgear DGN3500B";
+};
diff --git a/target/linux/lantiq/image/EASY50810.dts b/target/linux/lantiq/image/EASY50810.dts
new file mode 100644
index 0000000000..9e5fad782b
--- /dev/null
+++ b/target/linux/lantiq/image/EASY50810.dts
@@ -0,0 +1,114 @@
+/dts-v1/;
+
+/include/ "ar9.dtsi"
+
+/ {
+ chosen {
+ bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
+ };
+
+ memory@0 {
+ reg = <0x0 0x2000000>;
+ };
+
+ fpi@10000000 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ localbus@0 {
+ #address-cells = <2>;
+ #size-cells = <1>;
+ ranges = <0 0 0x0 0x3ffffff /* addrsel0 */
+ 1 0 0x4000000 0x4000010>; /* addsel1 */
+ compatible = "lantiq,localbus", "simple-bus";
+
+ nor-boot@0 {
+ compatible = "lantiq,nor";
+ bank-width = <2>;
+ reg = <0 0x0 0x2000000>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "uboot";
+ reg = <0x00000 0x10000>; /* 64 KB */
+ };
+
+ partition@10000 {
+ label = "uboot_env";
+ reg = <0x10000 0x10000>; /* 64 KB */
+ };
+
+ partition@20000 {
+ label = "linux";
+ reg = <0x20000 0x3d0000>;
+ };
+
+ partition@400000 {
+ label = "rootfs";
+ reg = <0x400000 0x400000>;
+ };
+ };
+ };
+
+ gpio: pinmux@E100B10 {
+ compatible = "lantiq,pinctrl-xr9";
+ pinctrl-names = "default";
+ pinctrl-0 = <&state_default>;
+
+ #gpio-cells = <2>;
+ gpio-controller;
+ reg = <0xE100B10 0xA0>;
+
+ state_default: pinmux {
+ stp {
+ lantiq,groups = "stp";
+ lantiq,function = "stp";
+ };
+ exin {
+ lantiq,groups = "exin1";
+ lantiq,function = "exin";
+ };
+ pci {
+ lantiq,groups = "gnt1";
+ lantiq,function = "pci";
+ };
+ conf_out {
+ lantiq,pins = "io4", "io5", "io6"; /* stp */
+ lantiq,open-drain;
+ lantiq,pull = <0>;
+ };
+ };
+ };
+
+ etop@E180000 {
+ compatible = "lantiq,etop-xway";
+ reg = <0xE180000 0x40000
+ 0xE108000 0x200>;
+ interrupt-parent = <&icu0>;
+ interrupts = <72 73>;
+ phy-mode = "rmii";
+ mac-address = [ 00 11 22 33 44 55 ];
+ };
+
+ stp0: stp@E100BB0 {
+ #gpio-cells = <2>;
+ compatible = "lantiq,gpio-stp-xway";
+ gpio-controller;
+ reg = <0xE100BB0 0x40>;
+
+ lantiq,shadow = <0xfff>;
+ lantiq,groups = <0x3>;
+ };
+
+ pci@E105400 {
+ lantiq,bus-clock = <33333333>;
+ interrupt-map-mask = <0xf800 0x0 0x0 0x7>;
+ interrupt-map = <
+ 0x7000 0 0 1 &icu0 29 1 // slot 14, irq 29
+ >;
+ gpios-reset = <&gpio 21 0>;
+ req-mask = <0x1>; /* GNT1 */
+ };
+
+ };
+};
diff --git a/target/linux/lantiq/image/EASY80920.dtsi b/target/linux/lantiq/image/EASY80920.dtsi
index 332df3d147..660f3cfdfe 100644
--- a/target/linux/lantiq/image/EASY80920.dtsi
+++ b/target/linux/lantiq/image/EASY80920.dtsi
@@ -23,25 +23,50 @@
};
- sflash@E100800 {
- compatible = "lantiq,sflash";
+ spi@E100800 {
+ compatible = "lantiq,spi-xway-broken";
reg = <0xE100800 0x100>;
+ interrupt-parent = <&icu0>;
+ interrupts = <22 23 24>;
#address-cells = <1>;
#size-cells = <1>;
-
- partition@0 {
- label = "uboot";
- reg = <0x00000 0x10000>;
- };
- partition@10000 {
- label = "uboot_env";
- reg = <0x10000 0x10000>;
- };
+ m25p80@0 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "s25fl129p0";
+ reg = <0 0>;
+ linux,modalias = "m25p80", "mx25l3205d";
+ spi-max-frequency = <1000000>;
+
+ partition@0 {
+ reg = <0x0 0x20000>;
+ label = "SPI (RO) U-Boot Image";
+ read-only;
+ };
- partition@20000 {
- label = "linux";
- reg = <0x20000 0x1d0000>;
+ partition@20000 {
+ reg = <0x20000 0x10000>;
+ label = "ENV_MAC";
+ read-only;
+ };
+
+ partition@30000 {
+ reg = <0x30000 0x10000>;
+ label = "DPF";
+ read-only;
+ };
+
+ partition@40000 {
+ reg = <0x40000 0x10000>;
+ label = "NVRAM";
+ read-only;
+ };
+
+ partition@500000 {
+ reg = <0x50000 0x003a0000>;
+ label = "kernel";
+ };
};
};
@@ -58,14 +83,18 @@
reg = <0xE100B10 0xA0>;
state_default: pinmux {
+ exin3 {
+ lantiq,groups = "exin3";
+ lantiq,function = "exin";
+ };
stp {
lantiq,groups = "stp";
lantiq,function = "stp";
};
- /*spi {
+ spi {
lantiq,groups = "spi", "spi_cs4";
lantiq,function = "spi";
- };*/
+ };
nand {
lantiq,groups = "nand cle", "nand ale",
"nand rd", "nand rdy";
@@ -79,18 +108,19 @@
lantiq,groups = "gnt1", "req1";
lantiq,function = "pci";
};
- exin {
- lantiq,groups = "exin3";
- lantiq,function = "exin";
- };
conf_out {
lantiq,pins = "io24", "io13", "io49", /* nand cle, ale and rd */
"io4", "io5", "io6", /* stp */
- "io17", "io18", /* spi dout & clk */
- "io21", /* pci-rst */
- "io38"; /* pcie-rst */
+ "io21",
+ "io33";
lantiq,open-drain;
lantiq,pull = <0>;
+ lantiq,output = <1>;
+ };
+ pcie-rst {
+ lantiq,pins = "io38";
+ lantiq,pull = <0>;
+ lantiq,output = <1>;
};
conf_in {
lantiq,pins = "io39", /* exin3 */
@@ -100,7 +130,7 @@
};
};
- eth@0xE108000 {
+ eth@E108000 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "lantiq,xrx200-net";
@@ -137,12 +167,6 @@
phy-mode = "gmii";
phy-handle = <&phy11>;
};
- ethernet@4 {
- compatible = "lantiq,xrx200-pdi-port";
- reg = <4>;
- phynmode0 = "gmii";
- phy-handle = <&phy13>;
- };
};
wan: interface@1 {
@@ -151,7 +175,7 @@
#size-cells = <0>;
reg = <1>;
mac-address = [ 00 11 22 33 44 56 ];
-
+ lantiq,wan;
ethernet@5 {
compatible = "lantiq,xrx200-pdi-port";
reg = <5>;
@@ -160,6 +184,20 @@
};
};
+ test: interface@2 {
+ compatible = "lantiq,xrx200-pdi";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg = <2>;
+ mac-address = [ 00 11 22 33 44 57 ];
+ ethernet@4 {
+ compatible = "lantiq,xrx200-pdi-port";
+ reg = <4>;
+ phynmode0 = "gmii";
+ phy-handle = <&phy13>;
+ };
+ };
+
mdio@0 {
#address-cells = <1>;
#size-cells = <0>;
@@ -205,7 +243,12 @@
lantiq,phy2 = <0x7>;
/* lantiq,rising; */
};
-
+
+ ifxhcd@E101000 {
+ status = "okay";
+ gpios = <&gpio 33 0>;
+ };
+
pci@E105400 {
#address-cells = <3>;
#size-cells = <2>;
@@ -229,12 +272,6 @@
};
};
- ifxhcd {
- compatible = "lantiq,ifxhcd";
- interrupt-parent = <&icu0>;
- interrupts = <62 91>;
- };
-
gphy-xrx200 {
compatible = "lantiq,phy-xrx200";
firmware = "lantiq/vr9_phy11g_a2x.bin";
@@ -248,7 +285,7 @@
poll-interval = <100>;
reset {
label = "Reset";
- gpios = <&gpio 7 0>;
+ gpios = <&gpio 7 1>;
linux,code = <0x100>;
};
paging {
@@ -261,7 +298,7 @@
/* gpio-keys {
compatible = "gpio-keys";
wps {
- gpios = <&gpio 39 0>;
+ gpios = <&gpio 2 0>;
linux,code = <0x100>;
};
};*/
@@ -269,50 +306,42 @@
gpio-leds {
compatible = "gpio-leds";
- led0 {
- label = "led0";
+ power {
+ label = "power";
gpios = <&stp 9 0>;
default-state = "on";
};
warning {
label = "warning";
gpios = <&stp 22 0>;
- default-state = "on";
};
fxs1 {
label = "fxs1";
gpios = <&stp 21 0>;
- default-state = "on";
};
fxs2 {
label = "fxs2";
gpios = <&stp 20 0>;
- default-state = "on";
};
fxo {
label = "fxo";
gpios = <&stp 19 0>;
- default-state = "on";
};
usb1 {
label = "usb1";
gpios = <&stp 18 0>;
- default-state = "on";
};
usb2 {
label = "usb2";
gpios = <&stp 15 0>;
- default-state = "on";
};
sd {
label = "sd";
gpios = <&stp 14 0>;
- default-state = "on";
};
wps {
label = "wps";
gpios = <&stp 12 0>;
- default-state = "on";
};
};
};
diff --git a/target/linux/lantiq/image/EASY80920-NAND.dts b/target/linux/lantiq/image/EASY80920NAND.dts
index afa2157247..afa2157247 100644
--- a/target/linux/lantiq/image/EASY80920-NAND.dts
+++ b/target/linux/lantiq/image/EASY80920NAND.dts
diff --git a/target/linux/lantiq/image/EASY80920-NOR.dts b/target/linux/lantiq/image/EASY80920NOR.dts
index 94f4cc1ec5..94f4cc1ec5 100644
--- a/target/linux/lantiq/image/EASY80920-NOR.dts
+++ b/target/linux/lantiq/image/EASY80920NOR.dts
diff --git a/target/linux/lantiq/image/FRITZ7320.dts b/target/linux/lantiq/image/FRITZ7320.dts
new file mode 100644
index 0000000000..2a7b76693d
--- /dev/null
+++ b/target/linux/lantiq/image/FRITZ7320.dts
@@ -0,0 +1,138 @@
+/dts-v1/;
+
+/include/ "ar9.dtsi"
+
+/ {
+ model = "FRITZ7320 - 1&1 HomeServer";
+
+ chosen {
+ bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
+ };
+
+ memory@0 {
+ reg = <0x0 0x4000000>;
+ };
+
+ fpi@10000000 {
+ localbus@0 {
+ nor-boot@0 {
+ compatible = "lantiq,nor";
+ bank-width = <2>;
+ reg = <0 0x0 0x800000>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "urlader";
+ reg = <0x00000 0x20000>;
+ read-only;
+ };
+
+ partition@20000 {
+ label = "linux";
+ reg = <0x20000 0xf60000>;
+ };
+
+ partition@f80000 {
+ label = "tffs (1)";
+ reg = <0xf80000 0x40000>;
+ read-only;
+ };
+
+ partition@fc0000 {
+ label = "tffs (2)";
+ reg = <0xfc0000 0x40000>;
+ read-only;
+ };
+ };
+ };
+
+ gpio: pinmux@E100B10 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&state_default>;
+
+ state_default: pinmux {
+ pci {
+ lantiq,groups = "gnt1", "req1", "req2", "req3", "req4", "gnt2", "gnt3", "gnt4";
+ lantiq,function = "pci";
+ };
+ pci-in {
+ lantiq,groups = "req1", "req2", "req3", "req4";
+ lantiq,output = <0>;
+ lantiq,open-drain = <1>;
+ lantiq,pull = <2>;
+ };
+ pci-out {
+ lantiq,groups = "gnt1", "gnt2", "gnt3", "gnt4";
+ lantiq,output = <1>;
+ lantiq,pull = <0>;
+ };
+ };
+ };
+
+ etop@E180000 {
+ phy-mode = "mii";
+ mac-address = [ 00 11 22 33 44 55 ];
+ };
+
+ ifxhcd@E101000 {
+ status = "okay";
+ };
+
+ pci@E105400 {
+ status = "okay";
+ req-mask = <0xf>;
+ lantiq,bus-clock = <33333333>;
+ interrupt-map-mask = <0xf800 0x0 0x0 0x7>;
+ interrupt-map = <0x7000 0 0 1 &icu0 30 1>;
+ gpio-reset = <&gpio 21 0>;
+ req-mask = <0xf>; /* GNT1 */
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <100>;
+
+ rfkill {
+ label = "rfkill";
+ gpios = <&gpio 1 1>;
+ linux,code = <0xf7>;
+ };
+ dect {
+ label = "dect";
+ gpios = <&gpio 2 1>;
+ linux,code = <0x102>;
+ };
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ power {
+ label = "power";
+ gpios = <&gpio 44 1>;
+ };
+ voice {
+ label = "voice";
+ gpios = <&gpio 47 1>;
+ };
+ dect {
+ label = "dect";
+ gpios = <&gpio 38 1>;
+ };
+ wlan {
+ label = "wlan";
+ gpios = <&gpio 37 1>;
+ };
+ online {
+ label = "online";
+ gpios = <&gpio 35 1>;
+ };
+ online2 {
+ label = "online2";
+ gpios = <&gpio 45 1>;
+ };
+ };
+};
diff --git a/target/linux/lantiq/image/Makefile b/target/linux/lantiq/image/Makefile
index f0f4d4f8ed..019bd58696 100644
--- a/target/linux/lantiq/image/Makefile
+++ b/target/linux/lantiq/image/Makefile
@@ -4,17 +4,16 @@
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
+
+# boards missing since devicetree update
+#EASY50712 ARV3527P GIGASX76X ARV4519PW BTHOMEHUBV2B BTHOMEHUBV2BOPENRG
+#WBMR P2601HNFX H201L
+
include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/image.mk
JFFS2_BLOCKSIZE = 64k 128k 256k
-ase_cmdline=-console=ttyLTQ0,115200 rootfstype=squashfs,jffs2
-xway_cmdline=-console=ttyLTQ1,115200 rootfstype=squashfs,jffs2
-falcon_cmdline=-console=ttyLTQ0,115200 rootfstype=squashfs,jffs2
-svip_cmdline=-console=ttyLTQ0,115200 rootfstype=squashfs,jffs2
-sx76x_cmdline=console=ttyLTQ1,115200 rootfstype=squashfs,jffs2
-
define CompressLzma
$(STAGING_DIR_HOST)/bin/lzma e $(1) $(2)
endef
@@ -104,90 +103,18 @@ define Image/BuildKernelGzip/Template
$(CP) $(KDIR)/uImage-$(1) $(BIN_DIR)/$(IMG_PREFIX)-$(1)-uImage
endef
-ifeq ($(CONFIG_TARGET_lantiq_danube),y)
-
-Image/BuildKernel/Profile/EASY50712=$(call Image/BuildKernel/Template,EASY50712,$(xway_cmdline))
-Image/BuildKernel/Profile/ARV3527P=$(call Image/BuildKernel/Template,ARV3527P,$(xway_cmdline))
-Image/BuildKernel/Profile/ARV4510PW=$(call Image/BuildKernel/Template,ARV4510PW,$(xway_cmdline))
-Image/BuildKernel/Profile/ARV4518PW=$(call Image/BuildKernel/Template,ARV4518PW,$(xway_cmdline))
-Image/BuildKernel/Profile/ARV4519PW=$(call Image/BuildKernel/Template,ARV4519PW,$(xway_cmdline))
-Image/BuildKernel/Profile/ARV4520PW=$(call Image/BuildKernel/Template,ARV4520PW,$(xway_cmdline))
-Image/BuildKernel/Profile/ARV4525PW=$(call Image/BuildKernel/Template,ARV4525PW,$(xway_cmdline))
-Image/BuildKernel/Profile/ARV7525PW=$(call Image/BuildKernel/Template,ARV7525PW,$(xway_cmdline))
-Image/BuildKernel/Profile/ARV452CPW=$(call Image/BuildKernel/Template,ARV452CPW,$(xway_cmdline))
-Image/BuildKernel/Profile/ARV7518PW=$(call Image/BuildKernel/Template,ARV7518PW,$(xway_cmdline))
-Image/BuildKernel/Profile/ARV752DPW=$(call Image/BuildKernel/Template,ARV752DPW,$(xway_cmdline))
-Image/BuildKernel/Profile/ARV752DPW22=$(call Image/BuildKernel/Template,ARV752DPW22,$(xway_cmdline))
-Image/BuildKernel/Profile/GIGASX76X=$(call Image/BuildKernel/Template,GIGASX76X,$(sx76x_cmdline))
-Image/BuildKernel/Profile/BTHOMEHUBV2B=$(call Image/BuildKernel/Template,BTHOMEHUBV2B,$(xway_cmdline))
-Image/BuildKernel/Profile/BTHOMEHUBV2BOPENRG=$(call Image/BuildKernel/Template,BTHOMEHUBV2BOPENRG,$(xway_cmdline))
-Image/Build/Profile/EASY50712=$(call Image/Build/$(1),$(1),EASY50712)
-Image/Build/Profile/ARV3527P=$(call Image/Build/$(1),$(1),ARV3527P)
-Image/Build/Profile/ARV4510PW=$(call Image/Build/$(1),$(1),ARV4510PW)
-Image/Build/Profile/ARV4518PW=$(call Image/Build/$(1),$(1),ARV4518PW)
-Image/Build/Profile/ARV4519PW=$(call Image/Build/$(1),$(1),ARV4519PW,BRNDA4519,0x12345678,memsize=32)
-Image/Build/Profile/ARV4520PW=$(call Image/Build/$(1),$(1),ARV4520PW,BRNDANUBE,0x12345678,memsize=32)
-Image/Build/Profile/ARV4525PW=$(call Image/Build/$(1),$(1),ARV4525PW,BRNDTW502,0x12345678,memsize=32)
-Image/Build/Profile/ARV7525PW=$(call Image/Build/$(1),$(1),ARV7525PW)
-Image/Build/Profile/ARV452CPW=$(call Image/Build/$(1),$(1),ARV452CPW)
-Image/Build/Profile/ARV7518PW=$(call Image/Build/$(1),$(1),ARV7518PW,BRNDA7519,0x12345678,memsize=64)
-Image/Build/Profile/ARV752DPW=$(call Image/Build/$(1),$(1),ARV752DPW)
-Image/Build/Profile/ARV752DPW22=$(call Image/Build/$(1),$(1),ARV752DPW22)
-Image/Build/Profile/GIGASX76X=$(call Image/Build/$(1),$(1),GIGASX76X)
-Image/Build/Profile/BTHOMEHUBV2B=$(call Image/Build/$(1),$(1),BTHOMEHUBV2B)
-Image/Build/Profile/BTHOMEHUBV2BOPENRG=$(call Image/Build/$(1),$(1),BTHOMEHUBV2BOPENRG)
+ifeq ($(CONFIG_TARGET_lantiq_falcon),y)
-define Image/BuildKernel/Profile/Generic
- $(call Image/BuildKernel/Template,NONE)
-endef
-
-define Image/Build/Profile/Generic
- $(call Image/Build/$(1),$(1),NONE)
- $(CP) $(KDIR)/root.$(1) $(BIN_DIR)/$(IMG_PREFIX)-$(1).rootfs
-endef
-endif
-
-ifeq ($(CONFIG_TARGET_lantiq_ar9),y)
-Image/BuildKernel/Profile/WBMR=$(call Image/BuildKernel/Template,WBMR,$(xway_cmdline))
-Image/BuildKernel/Profile/DGN3500B=$(call Image/BuildKernel/Template,DGN3500B,$(xway_cmdline))
-Image/BuildKernel/Profile/P2601HNFX=$(call Image/BuildKernel/Template,P2601HNFX,$(xway_cmdline))
-Image/BuildKernel/Profile/H201L=$(call Image/BuildKernel/Template,H201L,$(xway_cmdline))
-Image/BuildKernel/Profile/FRITZ7320=$(call Image/BuildKernelEVA/Template,FRITZ7320,$(xway_cmdline))
-
-Image/Build/Profile/WBMR=$(call Image/Build/$(1),$(1),WBMR)
-Image/Build/Profile/DGN3500B=$(call Image/Build/$(1),$(1),DGN3500B)
-Image/Build/Profile/P2601HNFX=$(call Image/Build/$(1),$(1),P2601HNFX)
-Image/Build/Profile/H201L=$(call Image/Build/$(1),$(1),H201L)
-Image/Build/Profile/FRITZ7320=$(call Image/BuildEVA/$(1),$(1),FRITZ7320)
+Image/BuildKernel/Profile/EASY98000=$(call Image/BuildKernel/Template,EASY98000)
+Image/Build/Profile/EASY98000=$(call Image/Build/$(1),$(1),EASY98000)
-define Image/BuildKernel/Profile/Generic
- $(call Image/BuildKernel/Template,NONE)
-endef
+Image/BuildKernel/Profile/EASY98020=$(call Image/BuildKernel/Template,EASY98020)
+Image/Build/Profile/EASY98020=$(call Image/Build/$(1),$(1),EASY98020)
-define Image/Build/Profile/Generic
- $(call Image/Build/$(1),$(1),NONE)
- $(CP) $(KDIR)/root.$(1) $(BIN_DIR)/$(IMG_PREFIX)-$(1).rootfs
-endef
endif
-ifeq ($(CONFIG_TARGET_lantiq_falcon)$(CONFIG_TARGET_lantiq_falcon_stable),y)
-
-Image/BuildKernel/Profile/EASY98000=$(call Image/BuildKernel/Template,EASY98000,$(falcon_cmdline))
-Image/BuildKernel/Profile/EASY98020=$(call Image/BuildKernel/Template,EASY98020,$(falcon_cmdline))
-Image/Build/Profile/EASY98000=$(call Image/Build/$(1),$(1),EASY98000)
-Image/Build/Profile/EASY98020=$(call Image/Build/$(1),$(1),EASY98020)
-
-define Image/BuildKernel/Profile/Generic
- $(call Image/BuildKernel/Template,NONE)
-endef
-
-define Image/Build/Profile/Generic
- $(call Image/Build/$(1),$(1),NONE)
- $(CP) $(KDIR)/root.$(1) $(BIN_DIR)/$(IMG_PREFIX)-$(1).rootfs
-endef
-endif
ifeq ($(CONFIG_TARGET_lantiq_ase),y)
@@ -196,99 +123,69 @@ Image/Build/Profile/DGN1000B=$(call Image/Build/$(1),$(1),DGN1000B)
endif
-ifeq ($(CONFIG_TARGET_lantiq_xway),y)
-# VR9
-Image/BuildKernel/Profile/EASY80920-NAND=$(call Image/BuildKernel/Template,EASY80920-NAND)
-Image/Build/Profile/EASY80920-NAND=$(call Image/Build/$(1),$(1),EASY80920-NAND)
-Image/BuildKernel/Profile/EASY80920-NOR=$(call Image/BuildKernel/Template,EASY80920-NOR)
-Image/Build/Profile/EASY80920-NOR=$(call Image/Build/$(1),$(1),EASY80920-NOR)
+
+ifeq ($(CONFIG_TARGET_lantiq_xway),y)
# Danube
+Image/BuildKernel/Profile/EASY50712=$(call Image/BuildKernel/Template,EASY50712)
+Image/Build/Profile/EASY50712=$(call Image/Build/$(1),$(1),EASY50712)
+
+Image/BuildKernel/Profile/ARV4510PW=$(call Image/BuildKernel/Template,ARV4510PW)
+Image/Build/Profile/ARV4510PW=$(call Image/Build/$(1),$(1),ARV4510PW)
+
+Image/BuildKernel/Profile/ARV4525PW=$(call Image/BuildKernel/Template,ARV4525PW)
+Image/Build/Profile/ARV4525PW=$(call Image/Build/$(1),$(1),ARV4525PW)
+
Image/BuildKernel/Profile/ARV7525PW=$(call Image/BuildKernel/Template,ARV7525PW)
Image/Build/Profile/ARV7525PW=$(call Image/Build/$(1),$(1),ARV7525PW)
+Image/BuildKernel/Profile/ARV4518PW=$(call Image/BuildKernel/Template,ARV4518PW)
+Image/Build/Profile/ARV4518PW=$(call Image/Build/$(1),$(1),ARV4518PW)
+
Image/BuildKernel/Profile/ARV4520PW=$(call Image/BuildKernel/Template,ARV4520PW)
Image/Build/Profile/ARV4520PW=$(call Image/Build/$(1),$(1),ARV4520PW)
+Image/BuildKernel/Profile/ARV452CQW=$(call Image/BuildKernel/Template,ARV452CQW)
+Image/Build/Profile/ARV452CQW=$(call Image/Build/$(1),$(1),ARV452CQW)
+
+Image/BuildKernel/Profile/ARV7518PW=$(call Image/BuildKernel/Template,ARV7518PW)
+Image/Build/Profile/ARV7518PW=$(call Image/Build/$(1),$(1),ARV7518PW)
+
Image/BuildKernel/Profile/ARV752DPW=$(call Image/BuildKernel/Template,ARV752DPW)
Image/Build/Profile/ARV752DPW=$(call Image/Build/$(1),$(1),ARV752DPW)
Image/BuildKernel/Profile/ARV752DPW22=$(call Image/BuildKernel/Template,ARV752DPW22)
Image/Build/Profile/ARV752DPW22=$(call Image/Build/$(1),$(1),ARV752DPW22)
-endif
-
-ifeq ($(CONFIG_TARGET_lantiq_vr9),y)
-define Image/BuildKernel/Profile/FRITZ3370
- $(call Image/BuildKernel/Template,FRITZ3370,$(xway_cmdline))
- $(call Image/BuildKernelEVA/Template,FRITZ3370,$(xway_cmdline))
-endef
-
-Image/Build/Profile/FRITZ3370=$(call Image/Build/$(1),$(1),FRITZ3370)
-
-define Image/BuildKernel/Profile/Generic
- $(call Image/BuildKernel/Template,NONE)
-endef
-
-define Image/Build/Profile/Generic
- $(call Image/Build/$(1),$(1),NONE)
- $(CP) $(KDIR)/root.$(1) $(BIN_DIR)/$(IMG_PREFIX)-$(1).rootfs
-endef
-endif
-ifeq ($(CONFIG_TARGET_lantiq_svip_be),y)
-define Image/BuildKernel/Profile/EASY33016
- $(call Image/BuildKernelGzip/Template,EASY33016,$(svip_cmdline))
-endef
+# AR9
+Image/BuildKernel/Profile/DGN3500B=$(call Image/BuildKernel/Template,DGN3500B)
+Image/Build/Profile/DGN3500B=$(call Image/Build/$(1),$(1),DGN3500B)
-define Image/Build/Profile/EASY33016
- $(call Image/Build/$(1),$(1),EASY33016)
-endef
+Image/BuildKernel/Profile/FRITZ7320=$(call Image/BuildKernelEVA/Template,FRITZ7320)
+Image/Build/Profile/FRITZ7320=$(call Image/BuildEVA/$(1),$(1),FRITZ7320)
-define Image/BuildKernel/Profile/EASY336
- $(call Image/BuildKernelGzip/Template,EASY33016,$(svip_cmdline))
-endef
-define Image/Build/Profile/EASY336
- $(call Image/Build/$(1),$(1),EASY33016)
-endef
+# VR9
+Image/BuildKernel/Profile/EASY80920NAND=$(call Image/BuildKernel/Template,EASY80920NAND)
+Image/Build/Profile/EASY80920NAND=$(call Image/Build/$(1),$(1),EASY80920NAND)
-define Image/BuildKernel/Profile/Generic
- $(call Image/BuildKernelGzip/Template,EASY33016,$(svip_cmdline))
- $(call Image/BuildKernelGzip/Template,EASY336,$(svip_cmdline))
- $(call Image/BuildKernelGzip/Template,NONE)
-endef
+Image/BuildKernel/Profile/EASY80920NOR=$(call Image/BuildKernel/Template,EASY80920NOR)
+Image/Build/Profile/EASY80920NOR=$(call Image/Build/$(1),$(1),EASY80920NOR)
-define Image/Build/Profile/Generic
- $(call Image/Build/$(1),$(1),EASY33016)
- $(call Image/Build/$(1),$(1),EASY336)
- $(call Image/Build/$(1),$(1),NONE)
- $(CP) $(KDIR)/root.$(1) $(BIN_DIR)/$(IMG_PREFIX)-$(1).rootfs
-endef
endif
-ifeq ($(CONFIG_TARGET_lantiq_svip_le),y)
-define Image/BuildKernel/Profile/EASY336
- $(call Image/BuildKernelGzip/Template,EASY33016,$(svip_cmdline))
-endef
-define Image/Build/Profile/EASY336
- $(call Image/Build/$(1),$(1),EASY33016)
-endef
-define Image/BuildKernel/Profile/Generic
- $(call Image/BuildKernelGzip/Template,EASY336,$(svip_cmdline))
- $(call Image/BuildKernelGzip/Template,NONE)
-endef
+ifeq ($(CONFIG_TARGET_lantiq_svip_be),y)
+
+Image/BuildKernel/Profile/EASY33016=$(call Image/BuildKernelGzip/Template,EASY33016)
+Image/Build/Profile/EASY33016=$(call Image/Build/$(1),$(1),EASY33016)
-define Image/Build/Profile/Generic
- $(call Image/Build/$(1),$(1),EASY336)
- $(call Image/Build/$(1),$(1),NONE)
- $(CP) $(KDIR)/root.$(1) $(BIN_DIR)/$(IMG_PREFIX)-$(1).rootfs
-endef
endif
+
define Image/BuildKernel
$(call Image/BuildKernel/Profile/$(PROFILE))
endef
diff --git a/target/linux/lantiq/image/amazonse.dtsi b/target/linux/lantiq/image/amazonse.dtsi
index f8e6f594ed..13d3e73860 100644
--- a/target/linux/lantiq/image/amazonse.dtsi
+++ b/target/linux/lantiq/image/amazonse.dtsi
@@ -28,7 +28,7 @@
};
watchdog@803F0 {
- compatible = "lantiq,wdt1";
+ compatible = "lantiq,wdt";
reg = <0x803F0 0x10>;
};
};
@@ -42,11 +42,10 @@
eiu0: eiu@101000 {
#interrupt-cells = <1>;
- interrupt-controller;
- interrupt-parent;
- compatible = "lantiq,eiu";
+ compatible = "lantiq,eiu-xway";
reg = <0x101000 0x1000>;
- lantiq,count = <3>;
+ interrupt-parent = <&icu0>;
+ interrupts = <29 30 31>;
};
pmu0: pmu@102000 {
@@ -73,11 +72,28 @@
ranges = <0x0 0x10000000 0xEEFFFFF>;
reg = <0x10000000 0xEF00000>;
+ spi@E100800 {
+ compatible = "lantiq,spi-xway";
+ reg = <0xE100800 0x100>;
+ interrupt-parent = <&icu0>;
+ interrupts = <24 25 26>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+ };
+
gptu@E100A00 {
compatible = "lantiq,gptu-xway";
reg = <0xE100A00 0x100>;
interrupt-parent = <&icu0>;
interrupts = <97 98 99 100 101 102>;
+ status = "disabled";
+ };
+
+ gpio: pinmux@E100B10 {
+ compatible = "lantiq,pinctrl-ase";
+ #gpio-cells = <2>;
+ gpio-controller;
+ reg = <0xE100B10 0xA0>;
};
serial@E100C00 {
@@ -87,11 +103,19 @@
interrupts = <72 74 75>;
};
- hcd@E101000 {
- compatible = "lantiq,hcd";
- reg = <0xE101000 0x100>;
+ mei@E116000 {
+ compatible = "lantiq,mei-xway";
+ interrupt-parent = <&icu0>;
+ interrupts = <63>;
+ };
+
+ ifxhcd@E101000 {
+ compatible = "lantiq,ifxhcd-ase";
+ reg = <0xE101000 0x1000
+ 0xE120000 0x3f000>;
interrupt-parent = <&icu0>;
interrupts = <39>;
+ status = "disabled";
};
dma0: dma@E104100 {
@@ -103,5 +127,22 @@
compatible = "lantiq,ebu-xway";
reg = <0xE105300 0x100>;
};
+
+ ppe@E234000 {
+ compatible = "lantiq,ppe-ase";
+ interrupt-parent = <&icu0>;
+ interrupts = <85>;
+ };
+
+ etop@E180000 {
+ compatible = "lantiq,etop-xway";
+ reg = <0xE180000 0x40000>;
+ interrupt-parent = <&icu0>;
+ interrupts = <105 109>;
+ };
+ };
+
+ adsl {
+ compatible = "lantiq,adsl-ase";
};
};
diff --git a/target/linux/lantiq/image/ar9.dtsi b/target/linux/lantiq/image/ar9.dtsi
new file mode 100644
index 0000000000..8046449f73
--- /dev/null
+++ b/target/linux/lantiq/image/ar9.dtsi
@@ -0,0 +1,179 @@
+/ {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "lantiq,xway", "lantiq,ar9";
+
+ cpus {
+ cpu@0 {
+ compatible = "mips,mips34K";
+ };
+ };
+
+ biu@1F800000 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "lantiq,biu", "simple-bus";
+ reg = <0x1F800000 0x800000>;
+ ranges = <0x0 0x1F800000 0x7FFFFF>;
+
+ icu0: icu@80200 {
+ #interrupt-cells = <1>;
+ interrupt-controller;
+ compatible = "lantiq,icu";
+ reg = <0x80200 0x28
+ 0x80228 0x28
+ 0x80250 0x28
+ 0x80278 0x28
+ 0x802a0 0x28>;
+ };
+
+ watchdog@803F0 {
+ compatible = "lantiq,wdt";
+ reg = <0x803F0 0x10>;
+ };
+ };
+
+ sram@1F000000 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "lantiq,sram";
+ reg = <0x1F000000 0x800000>;
+ ranges = <0x0 0x1F000000 0x7FFFFF>;
+
+ eiu0: eiu@101000 {
+ #interrupt-cells = <1>;
+ interrupt-controller;
+ compatible = "lantiq,eiu-xway";
+ reg = <0x101000 0x1000>;
+ interrupt-parent = <&icu0>;
+ interrupts = <166 135 66 40 41 42>;
+ };
+
+ pmu0: pmu@102000 {
+ compatible = "lantiq,pmu-xway";
+ reg = <0x102000 0x1000>;
+ };
+
+ cgu0: cgu@103000 {
+ compatible = "lantiq,cgu-xway";
+ reg = <0x103000 0x1000>;
+ #clock-cells = <1>;
+ };
+
+ rcu0: rcu@203000 {
+ compatible = "lantiq,rcu-xway";
+ reg = <0x203000 0x1000>;
+ };
+ };
+
+ fpi@10000000 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "lantiq,fpi", "simple-bus";
+ ranges = <0x0 0x10000000 0xEEFFFFF>;
+ reg = <0x10000000 0xEF00000>;
+
+ localbus@0 {
+ #address-cells = <2>;
+ #size-cells = <1>;
+ ranges = <0 0 0x0 0x3ffffff /* addrsel0 */
+ 1 0 0x4000000 0x4000010>; /* addsel1 */
+ compatible = "lantiq,localbus", "simple-bus";
+ };
+
+ gptu@E100A00 {
+ compatible = "lantiq,gptu-xway";
+ reg = <0xE100A00 0x100>;
+ interrupt-parent = <&icu0>;
+ interrupts = <126 127 128 129 130 131>;
+ status = "disabled";
+ };
+
+ asc0: serial@E100400 {
+ compatible = "lantiq,asc";
+ reg = <0xE100400 0x400>;
+ interrupt-parent = <&icu0>;
+ interrupts = <104 105 106>;
+ status = "disabled";
+ };
+
+ gpio: pinmux@E100B10 {
+ compatible = "lantiq,pinctrl-xr9";
+ #gpio-cells = <2>;
+ gpio-controller;
+ reg = <0xE100B10 0xA0>;
+ };
+
+ asc1: serial@E100C00 {
+ compatible = "lantiq,asc";
+ reg = <0xE100C00 0x400>;
+ interrupt-parent = <&icu0>;
+ interrupts = <112 113 114>;
+ };
+
+ ifxhcd@E101000 {
+ compatible = "lantiq,ifxhcd-arx100";
+ reg = <0xE101000 0x1000
+ 0xE120000 0x3f000>;
+ interrupt-parent = <&icu0>;
+ interrupts = <62 91>;
+ status = "disabled";
+ };
+
+ deu@E103100 {
+ compatible = "lantiq,deu-ar9";
+ reg = <0xE103100 0xf00>;
+ };
+
+ dma0: dma@E104100 {
+ compatible = "lantiq,dma-xway";
+ reg = <0xE104100 0x800>;
+ };
+
+ ebu0: ebu@E105300 {
+ compatible = "lantiq,ebu-xway";
+ reg = <0xE105300 0x100>;
+ };
+
+ mei@E116000 {
+ compatible = "lantiq,mei-xway";
+ interrupt-parent = <&icu0>;
+ interrupts = <63>;
+ };
+
+ etop@E180000 {
+ compatible = "lantiq,etop-xway";
+ reg = <0xE180000 0x40000
+ 0xE108000 0x200>;
+ interrupt-parent = <&icu0>;
+ interrupts = <73 72>;
+ };
+
+ ppe@E234000 {
+ compatible = "lantiq,ppe-ar9";
+ interrupt-parent = <&icu0>;
+ interrupts = <96>;
+ };
+
+ pci0: pci@E105400 {
+ status = "disabled";
+ #address-cells = <3>;
+ #size-cells = <2>;
+ #interrupt-cells = <1>;
+ compatible = "lantiq,pci-xway";
+ bus-range = <0x0 0x0>;
+ ranges = <0x2000000 0 0x8000000 0x8000000 0 0x2000000 /* pci memory */
+ 0x1000000 0 0x00000000 0xAE00000 0 0x200000>; /* io space */
+ reg = <0x7000000 0x8000 /* config space */
+ 0xE105400 0x400>; /* pci bridge */
+ lantiq,bus-clock = <33333333>;
+ interrupt-map-mask = <0xf800 0x0 0x0 0x7>;
+ interrupt-map = <0x7000 0 0 1 &icu0 30 1>;
+ req-mask = <0x1>;
+ };
+ };
+
+ adsl {
+ compatible = "lantiq,adsl-ar9";
+ };
+};
diff --git a/target/linux/lantiq/image/danube.dtsi b/target/linux/lantiq/image/danube.dtsi
index 9f0fae009c..67432b16b3 100644
--- a/target/linux/lantiq/image/danube.dtsi
+++ b/target/linux/lantiq/image/danube.dtsi
@@ -3,6 +3,10 @@
#size-cells = <1>;
compatible = "lantiq,xway", "lantiq,danube";
+ chosen {
+ bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
+ };
+
cpus {
cpu@0 {
compatible = "mips,mips24Kc";
@@ -36,16 +40,17 @@
sram@1F000000 {
#address-cells = <1>;
#size-cells = <1>;
- compatible = "lantiq,sram";
+ compatible = "lantiq,sram", "simple-bus";
reg = <0x1F000000 0x800000>;
ranges = <0x0 0x1F000000 0x7FFFFF>;
eiu0: eiu@101000 {
#interrupt-cells = <1>;
interrupt-controller;
- interrupt-parent;
compatible = "lantiq,eiu-xway";
reg = <0x101000 0x1000>;
+ interrupt-parent = <&icu0>;
+ interrupts = <166 135 66>;
};
pmu0: pmu@102000 {
@@ -59,6 +64,14 @@
#clock-cells = <1>;
};
+ vmmc@107000 {
+ status = "disabled";
+ compatible = "lantiq,vmmc";
+ reg = <0x103000 0x400>;
+ interrupt-parent = <&icu0>;
+ interrupts = <150 151 152 153 154 155>;
+ };
+
rcu0: rcu@203000 {
compatible = "lantiq,rcu-xway";
reg = <0x203000 0x1000>;
@@ -72,6 +85,14 @@
ranges = <0x0 0x10000000 0xEEFFFFF>;
reg = <0x10000000 0xEF00000>;
+ localbus@0 {
+ #address-cells = <2>;
+ #size-cells = <1>;
+ ranges = <0 0 0x0 0x3ffffff /* addrsel0 */
+ 1 0 0x4000000 0x4000010>; /* addsel1 */
+ compatible = "lantiq,localbus", "simple-bus";
+ };
+
gptu@E100A00 {
compatible = "lantiq,gptu-xway";
reg = <0xE100A00 0x100>;
@@ -79,13 +100,52 @@
interrupts = <126 127 128 129 130 131>;
};
- serial@E100C00 {
+ gpios: stp@E100BB0 {
+ #gpio-cells = <2>;
+ compatible = "lantiq,gpio-stp-xway";
+ gpio-controller;
+ reg = <0xE100BB0 0x40>;
+ lantiq,shadow = <0xfff>;
+ lantiq,groups = <0x3>;
+ status = "disabled";
+ };
+
+ asc0: serial@E100400 {
+ compatible = "lantiq,asc";
+ reg = <0xE100400 0x400>;
+ interrupt-parent = <&icu0>;
+ interrupts = <104 105 106>;
+ status = "disabled";
+ };
+
+ gpio: pinmux@E100B10 {
+ compatible = "lantiq,pinctrl-xway";
+ #gpio-cells = <2>;
+ gpio-controller;
+ reg = <0xE100B10 0xA0>;
+ };
+
+ asc1: serial@E100C00 {
compatible = "lantiq,asc";
reg = <0xE100C00 0x400>;
interrupt-parent = <&icu0>;
interrupts = <112 113 114>;
};
+ ifxhcd@E101000 {
+ compatible = "lantiq,ifxhcd-danube";
+ reg = <0xE101000 0x1000
+ 0xE120000 0x3f000>;
+ interrupt-parent = <&icu0>;
+ interrupts = <62>;
+ status = "disabled";
+ };
+
+ deu@E103100 {
+ compatible = "lantiq,deu-danube";
+ reg = <0xE103100 0xf00>;
+ };
+
dma0: dma@E104100 {
compatible = "lantiq,dma-xway";
reg = <0xE104100 0x800>;
@@ -96,7 +156,28 @@
reg = <0xE105300 0x100>;
};
+ mei@E116000 {
+ compatible = "lantiq,mei-xway";
+ interrupt-parent = <&icu0>;
+ interrupts = <63>;
+ };
+
+ etop@E180000 {
+ compatible = "lantiq,etop-xway";
+ reg = <0xE180000 0x40000>;
+ interrupt-parent = <&icu0>;
+ interrupts = <73 78>;
+ };
+
+ ppe@E234000 {
+ compatible = "lantiq,ppe-danube";
+ interrupt-parent = <&icu0>;
+ interrupts = <96>;
+ };
+
pci0: pci@E105400 {
+ status = "disabled";
+
#address-cells = <3>;
#size-cells = <2>;
#interrupt-cells = <1>;
@@ -106,6 +187,14 @@
0x1000000 0 0x00000000 0xAE00000 0 0x200000>; /* io space */
reg = <0x7000000 0x8000 /* config space */
0xE105400 0x400>; /* pci bridge */
+ lantiq,bus-clock = <33333333>;
+ interrupt-map-mask = <0xf800 0x0 0x0 0x7>;
+ interrupt-map = <0x7000 0 0 1 &icu0 30 1>;
+ req-mask = <0x1>;
};
};
+
+ adsl {
+ compatible = "lantiq,adsl-danube";
+ };
};
diff --git a/target/linux/lantiq/image/vr9.dtsi b/target/linux/lantiq/image/vr9.dtsi
index f82faad17a..4c1923be84 100644
--- a/target/linux/lantiq/image/vr9.dtsi
+++ b/target/linux/lantiq/image/vr9.dtsi
@@ -36,16 +36,17 @@
sram@1F000000 {
#address-cells = <1>;
#size-cells = <1>;
- compatible = "lantiq,sram";
+ compatible = "lantiq,sram", "simple-bus";
reg = <0x1F000000 0x800000>;
ranges = <0x0 0x1F000000 0x7FFFFF>;
eiu0: eiu@101000 {
#interrupt-cells = <1>;
interrupt-controller;
- interrupt-parent;
compatible = "lantiq,eiu-xway";
reg = <0x101000 0x1000>;
+ interrupt-parent = <&icu0>;
+ interrupts = <166 135 66 40 41 42>;
};
pmu0: pmu@102000 {
@@ -56,11 +57,15 @@
cgu0: cgu@103000 {
compatible = "lantiq,cgu-xway";
reg = <0x103000 0x1000>;
- #clock-cells = <1>;
+ };
+
+ dcdc@106a00 {
+ compatible = "lantiq,dcdc-xrx200";
+ reg = <0x106a00 0x200>;
};
rcu0: rcu@203000 {
- compatible = "lantiq,rcu-xway";
+ compatible = "lantiq,rcu-xrx200";
reg = <0x203000 0x1000>;
/* irq for thermal sensor */
interrupt-parent = <&icu0>;
@@ -99,6 +104,27 @@
reg = <0xE105300 0x100>;
};
+ ifxhcd@E101000 {
+ status = "disabled";
+ compatible = "lantiq,ifxhcd-xrx200";
+ reg = <0xE101000 0x1000
+ 0xE120000 0x3f000>;
+ interrupt-parent = <&icu0>;
+ interrupts = <62 91>;
+ };
+
+ ppe@E234000 {
+ compatible = "lantiq,atm-xrx200";
+ interrupt-parent = <&icu0>;
+ interrupts = <96>;
+ };
+
+ pcie@d900000 {
+ interrupt-parent = <&icu0>;
+ interrupts = <161 144>;
+ compatible = "lantiq,pcie-xrx200";
+ };
+
pci0: pci@E105400 {
#address-cells = <3>;
#size-cells = <2>;