openwrt/target/linux/lantiq/dts/ARV4525PW.dts
John Crispin 76c79f50d7 lantiq: Fixes to athxk EEPROM loading
Use platform data array for storing ath5k EEPROM instead of creating another one.
EEPROM size is 2048 words (2 bytes), so we must read 4096 bytes from flash.
No need to keep the checksum fix now that the EEPROM is loaded completely.
Add a manual eeprom swap for ath9k and keep the endian way.
Use mac-offset property retrieved from the DTS.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

SVN-Revision: 36901
2013-06-10 08:25:12 +00:00

154 lines
2.4 KiB
Plaintext

/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 0x1000>;
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 = <0x198>;
};
};
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>;
};
};
};