aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/lantiq
diff options
context:
space:
mode:
authorJohn Crispin <blogic@openwrt.org>2012-12-21 13:47:55 +0000
committerJohn Crispin <blogic@openwrt.org>2012-12-21 13:47:55 +0000
commite975fbe3fb9495bb369c77045efd476e63254ed3 (patch)
tree6b74f2d768103d9cfec826496132f5a4a35398c3 /target/linux/lantiq
parent3973731301776ab81546fe09058a9df470aec666 (diff)
downloadupstream-e975fbe3fb9495bb369c77045efd476e63254ed3.tar.gz
upstream-e975fbe3fb9495bb369c77045efd476e63254ed3.tar.bz2
upstream-e975fbe3fb9495bb369c77045efd476e63254ed3.zip
[lantiq] more devicetree fixes
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34824 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/lantiq')
-rw-r--r--target/linux/lantiq/image/EASY80920.dtsi2
-rw-r--r--target/linux/lantiq/image/FRITZ3370.dts278
-rw-r--r--target/linux/lantiq/image/Makefile3
-rw-r--r--target/linux/lantiq/image/WBMR.dts8
-rw-r--r--target/linux/lantiq/image/ar9.dtsi4
-rw-r--r--target/linux/lantiq/image/vr9.dtsi41
-rw-r--r--target/linux/lantiq/xway/profiles/avm.mk11
7 files changed, 341 insertions, 6 deletions
diff --git a/target/linux/lantiq/image/EASY80920.dtsi b/target/linux/lantiq/image/EASY80920.dtsi
index 03cebd7120..e32ad53d37 100644
--- a/target/linux/lantiq/image/EASY80920.dtsi
+++ b/target/linux/lantiq/image/EASY80920.dtsi
@@ -254,7 +254,7 @@
#address-cells = <3>;
#size-cells = <2>;
#interrupt-cells = <1>;
- compatible = "lantiq,pci-xway";
+ compatible = "lantiq,pci-xway1";
bus-range = <0x0 0x0>;
ranges = <0x2000000 0 0x8000000 0x8000000 0 0x2000000 /* pci memory */
0x1000000 0 0x00000000 0xAE00000 0 0x200000>; /* io space */
diff --git a/target/linux/lantiq/image/FRITZ3370.dts b/target/linux/lantiq/image/FRITZ3370.dts
new file mode 100644
index 0000000000..f0c7e34610
--- /dev/null
+++ b/target/linux/lantiq/image/FRITZ3370.dts
@@ -0,0 +1,278 @@
+/dts-v1/;
+
+/include/ "vr9.dtsi"
+
+/ {
+ model = "FRITZ3370 - Fritz!Box WLAN 3370";
+
+ chosen {
+ bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
+ };
+
+ memory@0 {
+ reg = <0x0 0x4000000>;
+ };
+
+ fpi@10000000 {
+ localbus@0 {
+ nand-parts@0 {
+ compatible = "gen_nand", "lantiq,nand-xway";
+ bank-width = <2>;
+ reg = <1 0x0 0x2000000>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "linux";
+ reg = <0x00000 0x400000>;
+ };
+
+ partition@400000 {
+ label = "filesystem";
+ reg = <0x400000 0x3000000>;
+ };
+
+ partition@3400000 {
+ label = "reserved-kernel";
+ reg = <0x3400000 0x400000>;
+ };
+ partition@3800000 {
+ label = "reserved";
+ reg = <0x3800000 0x3000000>;
+ };
+ partition@6800000 {
+ label = "config";
+ reg = <0x6800000 0x200000>;
+ };
+ partition@6a00000 {
+ label = "nand-filesystem";
+ reg = <0x6a00000 0x1600000>;
+ };
+ };
+ };
+
+ spi@E100800 {
+ compatible = "lantiq,spi-xway-broken";
+ reg = <0xE100800 0x100>;
+ interrupt-parent = <&icu0>;
+ interrupts = <22 23 24>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ 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 {
+ 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";
+ };
+ };
+ };
+
+ gpio: pinmux@E100B10 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&state_default>;
+
+ state_default: pinmux {
+ spi {
+ lantiq,groups = "spi", "spi_cs4";
+ lantiq,function = "spi";
+ };
+ nand_out {
+ lantiq,groups = "nand cle", "nand ale", "nand rd", "ebu a23", "ebu a24";
+ lantiq,function = "ebu";
+ lantiq,direction = <1>;
+ lantiq,pull = <0>;
+ };
+ nand_in {
+ lantiq,groups = "nand rdy";
+ lantiq,function = "ebu";
+ lantiq,direction = <0>;
+ lantiq,open-drain = <1>;
+ lantiq,pull = <2>;
+ };
+ mdio {
+ lantiq,groups = "mdio";
+ lantiq,function = "mdio";
+ };
+ phy-rst {
+ lantiq,pins = "io37", "io44";
+ lantiq,pull = <0>;
+ lantiq,open-drain = <0>;
+ lantiq,output = <1>;
+ };
+ pcie-rst {
+ lantiq,pins = "io38";
+ lantiq,pull = <0>;
+ lantiq,output = <1>;
+ };
+ };
+ };
+
+ eth@E108000 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ compatible = "lantiq,xrx200-net";
+ reg = < 0xE108000 0x3000 /* switch */
+ 0xE10B100 0x70 /* mdio */
+ 0xE10B1D8 0x30 /* mii */
+ 0xE10B308 0x30 /* pmac */
+ >;
+ interrupt-parent = <&icu0>;
+ interrupts = <73 72>;
+
+ lan: interface@0 {
+ compatible = "lantiq,xrx200-pdi";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg = <0>;
+ mac-address = [ 00 11 22 33 44 55 ];
+
+ ethernet@0 {
+ compatible = "lantiq,xrx200-pdi-port";
+ reg = <0>;
+ phy-mode = "rgmii";
+ phy-handle = <&phy0>;
+ gpios = <&gpio 37 0>;
+ };
+ ethernet@1 {
+ compatible = "lantiq,xrx200-pdi-port";
+ reg = <1>;
+ phy-mode = "rgmii";
+ phy-handle = <&phy1>;
+ gpios = <&gpio 44 0>;
+ };
+ ethernet@2 {
+ compatible = "lantiq,xrx200-pdi-port";
+ reg = <2>;
+ phy-mode = "gmii";
+ phy-handle = <&phy11>;
+ };
+ ethernet@3 {
+ compatible = "lantiq,xrx200-pdi-port";
+ reg = <4>;
+ phynmode0 = "gmii";
+ phy-handle = <&phy13>;
+ };
+ };
+
+ mdio@0 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ compatible = "lantiq,xrx200-mdio";
+ phy0: ethernet-phy@0 {
+ reg = <0x0>;
+ compatible = "lantiq,phy11g", "ethernet-phy-ieee802.3-c22";
+ lantiq,c45-reg-init = <1 0 0 0>;
+ };
+ phy1: ethernet-phy@1 {
+ reg = <0x1>;
+ compatible = "lantiq,phy11g", "ethernet-phy-ieee802.3-c22";
+ lantiq,c45-reg-init = <1 0 0 0>;
+ };
+ phy11: ethernet-phy@11 {
+ reg = <0x11>;
+ compatible = "lantiq,phy11g", "ethernet-phy-ieee802.3-c22";
+ lantiq,c45-reg-init = <1 0 0 0>;
+ };
+ phy13: ethernet-phy@13 {
+ reg = <0x13>;
+ compatible = "lantiq,phy11g", "ethernet-phy-ieee802.3-c22";
+ lantiq,c45-reg-init = <1 0 0 0>;
+ };
+ };
+ };
+
+ ifxhcd@E101000 {
+ status = "okay";
+ gpios = <&gpio 5 0
+ &gpio 14 0>;
+ lantiq,portmask = <0x3>;
+ };
+ };
+
+ gphy-xrx200 {
+ compatible = "lantiq,phy-xrx200";
+ firmware = "lantiq/vr9_phy11g_a1x.bin";
+ phys = [ 00 01 ];
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <100>;
+ power {
+ label = "power";
+ gpios = <&gpio 1 0>;
+ linux,code = <0x100>;
+ };
+/* wifi {
+ label = "wifi";
+ gpios = <&gpio 29 0>;
+ linux,code = <0x101>;
+ };*/
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+
+ power {
+ label = "power";
+ gpios = <&gpio 32 1>;
+ };
+ power2 {
+ label = "power2";
+ gpios = <&gpio 33 1>;
+ };
+ info_red {
+ label = "info_red";
+ gpios = <&gpio 34 1>;
+ };
+ wifi {
+ label = "wifi";
+ gpios = <&gpio 35 1>;
+ };
+ dsl {
+ label = "dsl";
+ gpios = <&gpio 36 1>;
+ };
+ lan {
+ label = "lan";
+ gpios = <&gpio 38 1>;
+ };
+ info_green {
+ label = "info_green";
+ gpios = <&gpio 47 1>;
+ };
+ };
+};
diff --git a/target/linux/lantiq/image/Makefile b/target/linux/lantiq/image/Makefile
index 2c206339f4..440c1486c4 100644
--- a/target/linux/lantiq/image/Makefile
+++ b/target/linux/lantiq/image/Makefile
@@ -183,6 +183,9 @@ Image/Build/Profile/EASY80920NAND=$(call Image/Build/$(1),$(1),EASY80920NAND)
Image/BuildKernel/Profile/EASY80920NOR=$(call Image/BuildKernel/Template,EASY80920NOR)
Image/Build/Profile/EASY80920NOR=$(call Image/Build/$(1),$(1),EASY80920NOR)
+Image/BuildKernel/Profile/FRITZ3370=$(call Image/BuildKernelEVA/Template,FRITZ3370)
+Image/Build/Profile/FRITZ3370=$(call Image/BuildEVA/$(1),$(1),FRITZ3370)
+
endif
diff --git a/target/linux/lantiq/image/WBMR.dts b/target/linux/lantiq/image/WBMR.dts
index d9c976741f..1291c86d80 100644
--- a/target/linux/lantiq/image/WBMR.dts
+++ b/target/linux/lantiq/image/WBMR.dts
@@ -39,6 +39,12 @@
reg = <0x60000 0x1f20000>;
};
+ partition@0x1fc0000 {
+ label = "board";
+ reg = <0x1fc0000 0x20000>;
+ read-only;
+ };
+
partition@0x1fe0000 {
label = "calibration";
reg = <0x1fe0000 0x20000>;
@@ -109,7 +115,7 @@
eject {
label = "eject";
gpios = <&gpio 34 1>;
- linux,code = <0x108>;
+ linux,code = <0xf7>;
};
movie {
label = "movie";
diff --git a/target/linux/lantiq/image/ar9.dtsi b/target/linux/lantiq/image/ar9.dtsi
index 2398563595..63c7d61678 100644
--- a/target/linux/lantiq/image/ar9.dtsi
+++ b/target/linux/lantiq/image/ar9.dtsi
@@ -120,7 +120,7 @@
};
deu@E103100 {
- compatible = "lantiq,deu-ar9";
+ compatible = "lantiq,deu-arx100";
reg = <0xE103100 0xf00>;
};
@@ -174,6 +174,6 @@
};
adsl {
- compatible = "lantiq,adsl-ar9";
+ compatible = "lantiq,adsl-arx100";
};
};
diff --git a/target/linux/lantiq/image/vr9.dtsi b/target/linux/lantiq/image/vr9.dtsi
index 4c1923be84..c7a28d77aa 100644
--- a/target/linux/lantiq/image/vr9.dtsi
+++ b/target/linux/lantiq/image/vr9.dtsi
@@ -80,6 +80,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>;
@@ -87,6 +95,21 @@
interrupts = <126 127 128 129 130 131>;
};
+ 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>;
@@ -94,6 +117,11 @@
interrupts = <112 113 114>;
};
+ deu@E103100 {
+ compatible = "lantiq,deu-xrx200";
+ reg = <0xE103100 0xf00>;
+ };
+
dma0: dma@E104100 {
compatible = "lantiq,dma-xway";
reg = <0xE104100 0x800>;
@@ -113,8 +141,14 @@
interrupts = <62 91>;
};
+ mei@E116000 {
+ compatible = "lantiq,mei-xrx200";
+ interrupt-parent = <&icu0>;
+ interrupts = <63>;
+ };
+
ppe@E234000 {
- compatible = "lantiq,atm-xrx200";
+ compatible = "lantiq,ppe-xrx200";
interrupt-parent = <&icu0>;
interrupts = <96>;
};
@@ -135,7 +169,12 @@
0x1000000 0 0x00000000 0xAE00000 0 0x200000>; /* io space */
reg = <0x7000000 0x8000 /* config space */
0xE105400 0x400>; /* pci bridge */
+ status = "disabled";
};
};
+
+ vdsl {
+ compatible = "lantiq,vdsl-vrx200";
+ };
};
diff --git a/target/linux/lantiq/xway/profiles/avm.mk b/target/linux/lantiq/xway/profiles/avm.mk
index 75db65e31b..f0a93d8f7d 100644
--- a/target/linux/lantiq/xway/profiles/avm.mk
+++ b/target/linux/lantiq/xway/profiles/avm.mk
@@ -4,7 +4,16 @@ define Profile/FRITZ7320
kmod-ltq-adsl-ar9-mei kmod-ltq-adsl-ar9 \
kmod-ltq-adsl-ar9-fw-b kmod-ltq-atm-ar9 \
ltq-adsl-app ppp-mod-pppoa \
- kmod-ltq-deu-ar9
+ kmod-ltq-deu-ar9 kmod-ltq-hcd-ar9
endef
$(eval $(call Profile,FRITZ7320))
+
+define Profile/FRITZ3370
+ NAME:=Fritz!Box WLan - FRITZ3370
+ PACKAGES:=kmod-ath9k wpad-mini \
+ kmod-ltq-deu-vr9 kmod-ltq-hcd-vr9 \
+ ppp-mod-pppoa
+endef
+
+$(eval $(call Profile,FRITZ3370))