Add support for ARV4518PW R01 and rename R01A.
authorJohn Crispin <john@openwrt.org>
Mon, 28 Jan 2013 17:42:59 +0000 (17:42 +0000)
committerJohn Crispin <john@openwrt.org>
Mon, 28 Jan 2013 17:42:59 +0000 (17:42 +0000)
There are two different versions of SMC7908A-ISP: R01 and R01A.
R01 has an internal clock for PCI, meanwhile R01A has an external clock.

This fixes: https://dev.openwrt.org/ticket/12884

Signed-off-by: John Crispin <blogic@openwrt.org>
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
SVN-Revision: 35352

target/linux/lantiq/image/ARV4518PW.dts [deleted file]
target/linux/lantiq/image/ARV4518PWR01.dts [new file with mode: 0644]
target/linux/lantiq/image/ARV4518PWR01A.dts [new file with mode: 0644]
target/linux/lantiq/image/Makefile
target/linux/lantiq/xway/profiles/arv.mk

diff --git a/target/linux/lantiq/image/ARV4518PW.dts b/target/linux/lantiq/image/ARV4518PW.dts
deleted file mode 100644 (file)
index 11ad342..0000000
+++ /dev/null
@@ -1,192 +0,0 @@
-/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 0>;
-               };
-
-               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 = <0x198>;
-               };
-       };
-
-       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/ARV4518PWR01.dts b/target/linux/lantiq/image/ARV4518PWR01.dts
new file mode 100644 (file)
index 0000000..5536af5
--- /dev/null
@@ -0,0 +1,192 @@
+/dts-v1/;
+
+/include/ "danube.dtsi"
+
+/ {
+       model = "ARV4518PWR01 - SMC7908A-ISP";
+
+       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 0>;
+               };
+
+               pci@E105400 {
+                       status = "okay";
+                       lantiq,internal-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 = <0x198>;
+               };
+       };
+
+       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/ARV4518PWR01A.dts b/target/linux/lantiq/image/ARV4518PWR01A.dts
new file mode 100644 (file)
index 0000000..cf960e0
--- /dev/null
@@ -0,0 +1,192 @@
+/dts-v1/;
+
+/include/ "danube.dtsi"
+
+/ {
+       model = "ARV4518PWR01A - 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 0>;
+               };
+
+               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 = <0x198>;
+               };
+       };
+
+       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>;
+               };
+       };
+};
index 440c1486c487cf52d421df68b31609b94a0afec2..a68d65b2df63bc3492e868e566941126c42ac90f 100644 (file)
@@ -140,8 +140,11 @@ 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/ARV4518PWR01=$(call Image/BuildKernel/Template,ARV4518PWR01)
+Image/Build/Profile/ARV4518PWR01=$(call Image/Build/$(1),$(1),ARV4518PWR01)
+
+Image/BuildKernel/Profile/ARV4518PWR01A=$(call Image/BuildKernel/Template,ARV4518PWR01A)
+Image/Build/Profile/ARV4518PWR01A=$(call Image/Build/$(1),$(1),ARV4518PWR01A)
 
 Image/BuildKernel/Profile/ARV4520PW=$(call Image/BuildKernel/Template,ARV4520PW)
 Image/Build/Profile/ARV4520PW=$(call Image/Build/$(1),$(1),ARV4520PW)
index c0c7c7c810cb19ce4d15344653d68f2cd1eaceea..a4f11ca2389c4d238f9d65c7ff6be1c0c2388f53 100644 (file)
@@ -18,8 +18,8 @@ endef
 
 $(eval $(call Profile,ARV7525PW))
 
-define Profile/ARV4518PW
-  NAME:=SMC7908A-ISP, Airties WAV-221 - ARV4518PW
+define Profile/ARV4518PWR01
+  NAME:=ARV4518PWR01
   PACKAGES:=kmod-ltq-hcd-danube kmod-ledtrig-usbdev \
        kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
        kmod-ltq-adsl-danube-fw-b kmod-ltq-atm-danube \
@@ -28,7 +28,19 @@ define Profile/ARV4518PW
        swconfig
 endef
 
-$(eval $(call Profile,ARV4518PW))
+$(eval $(call Profile,ARV4518PWR01))
+
+define Profile/ARV4518PWR01A
+  NAME:=ARV4518PWR01A
+  PACKAGES:=kmod-ltq-hcd-danube kmod-ledtrig-usbdev \
+        kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
+        kmod-ltq-adsl-danube-fw-b kmod-ltq-atm-danube \
+        ltq-adsl-app ppp-mod-pppoa \
+        kmod-ath5k wpad-mini \
+        swconfig
+endef
+
+$(eval $(call Profile,ARV4518PWR01A))
 
 define Profile/ARV4510PW
   NAME:=Wippies Homebox - ARV4510PW