Add support for ARV4518PW R01 and rename R01A.

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
This commit is contained in:
John Crispin 2013-01-28 17:42:59 +00:00
parent 509f39a10a
commit 5eb43d4cf8
4 changed files with 213 additions and 6 deletions

View file

@ -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>;
};
};
};

View file

@ -3,7 +3,7 @@
/include/ "danube.dtsi" /include/ "danube.dtsi"
/ { / {
model = "ARV4518PW - SMC7908A-ISP, Airties WAV-221"; model = "ARV4518PWR01A - SMC7908A-ISP, Airties WAV-221";
chosen { chosen {
bootargs = "console=ttyLTQ0,115200 init=/etc/preinit"; bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";

View 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/BuildKernel/Profile/ARV7525PW=$(call Image/BuildKernel/Template,ARV7525PW)
Image/Build/Profile/ARV7525PW=$(call Image/Build/$(1),$(1),ARV7525PW) Image/Build/Profile/ARV7525PW=$(call Image/Build/$(1),$(1),ARV7525PW)
Image/BuildKernel/Profile/ARV4518PW=$(call Image/BuildKernel/Template,ARV4518PW) Image/BuildKernel/Profile/ARV4518PWR01=$(call Image/BuildKernel/Template,ARV4518PWR01)
Image/Build/Profile/ARV4518PW=$(call Image/Build/$(1),$(1),ARV4518PW) 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/BuildKernel/Profile/ARV4520PW=$(call Image/BuildKernel/Template,ARV4520PW)
Image/Build/Profile/ARV4520PW=$(call Image/Build/$(1),$(1),ARV4520PW) Image/Build/Profile/ARV4520PW=$(call Image/Build/$(1),$(1),ARV4520PW)

View file

@ -18,8 +18,8 @@ endef
$(eval $(call Profile,ARV7525PW)) $(eval $(call Profile,ARV7525PW))
define Profile/ARV4518PW define Profile/ARV4518PWR01
NAME:=SMC7908A-ISP, Airties WAV-221 - ARV4518PW NAME:=ARV4518PWR01
PACKAGES:=kmod-ltq-hcd-danube kmod-ledtrig-usbdev \ PACKAGES:=kmod-ltq-hcd-danube kmod-ledtrig-usbdev \
kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \ kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
kmod-ltq-adsl-danube-fw-b kmod-ltq-atm-danube \ kmod-ltq-adsl-danube-fw-b kmod-ltq-atm-danube \
@ -28,7 +28,19 @@ define Profile/ARV4518PW
swconfig swconfig
endef 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 define Profile/ARV4510PW
NAME:=Wippies Homebox - ARV4510PW NAME:=Wippies Homebox - ARV4510PW