/dts-v1/; #include "danube.dtsi" #include / { compatible = "bt,homehub-v2b", "lantiq,xway", "lantiq,danube"; model = "BT Home Hub 2B"; /* SoC: Lantiq Danube-S PSB 50712 @ 333MHz V1.3/1.5 */ chosen { bootargs = "console=ttyLTQ0,115200"; }; aliases { led-boot = &power_orange; led-failsafe = &power_red; led-running = &power_blue; led-upgrade = &power_blue; led-dsl = &broadband_blue; led-wifi = &wireless_blue; }; memory@0 { /* RAM: Samsung K4H511638F-LC 64MB */ device_type = "memory"; reg = <0x0 0x4000000>; }; keys { compatible = "gpio-keys-polled"; poll-interval = <100>; reset { label = "reset"; gpios = <&gpio 2 GPIO_ACTIVE_LOW>; linux,code = ; }; findhandset { label = "findhandset"; gpios = <&gpio 15 GPIO_ACTIVE_LOW>; linux,code = ; }; wps { label = "wps"; gpios = <&gpio 22 GPIO_ACTIVE_LOW>; linux,code = ; }; }; leds { compatible = "gpio-leds"; upgrading-orange { label = "bthomehubv2b:orange:upgrading"; gpios = <&gpios 5 GPIO_ACTIVE_HIGH>; }; phone-orange { label = "bthomehubv2b:orange:phone"; gpios = <&gpios 6 GPIO_ACTIVE_HIGH>; }; phone-blue { label = "bthomehubv2b:blue:phone"; gpios = <&gpios 7 GPIO_ACTIVE_HIGH>; }; wireless-orange { label = "bthomehubv2b:orange:wireless"; gpios = <&gpios 8 GPIO_ACTIVE_HIGH>; }; wireless_blue: wireless-blue { label = "bthomehubv2b:blue:wireless"; gpios = <&gpios 9 GPIO_ACTIVE_HIGH>; }; broadband-red { label = "bthomehubv2b:red:broadband"; gpios = <&gpios 10 GPIO_ACTIVE_HIGH>; }; broadband-orange { label = "bthomehubv2b:orange:broadband"; gpios = <&gpios 11 GPIO_ACTIVE_HIGH>; }; broadband_blue: broadband-blue { label = "bthomehubv2b:blue:broadband"; gpios = <&gpios 12 GPIO_ACTIVE_HIGH>; }; power_red: power-red { label = "bthomehubv2b:red:power"; gpios = <&gpios 13 GPIO_ACTIVE_HIGH>; }; power_orange: power-orange { label = "bthomehubv2b:orange:power"; gpios = <&gpios 14 GPIO_ACTIVE_HIGH>; default-state = "keep"; }; power_blue: power-blue { label = "bthomehubv2b:blue:power"; gpios = <&gpios 15 GPIO_ACTIVE_HIGH>; }; }; }; &gpio { pinctrl-names = "default"; pinctrl-0 = <&state_default>; state_default: pinmux { exin { lantiq,groups = "exin1"; lantiq,function = "exin"; }; pci_rst { lantiq,pins = "io21"; lantiq,output = <1>; lantiq,open-drain = <0>; }; btn_in { lantiq,pins = "io2", "io15", "io22"; lantiq,output = <0>; lantiq,open-drain = <1>; lantiq,pull = <2>; }; }; }; &gpios { status = "okay"; }; &gsw { phy-mode = "rmii"; }; &localbus { flash@0 { /* NOR Flash: Spansion S29AL004D 512KB */ compatible = "lantiq,nor"; /* "AMD AM29LV400BB" compatible on 3.3.8 */ lantiq,cs = <0>; bank-width = <2>; reg = <0 0x0 0x80000>; partitions { compatible = "fixed-partitions"; #address-cells = <1>; #size-cells = <1>; partition@0 { label = "uboot"; reg = <0x00000 0x40000>; /* 256KB */ }; partition@40000 { label = "uboot_env"; reg = <0x40000 0x10000>; /* 64KB */ }; partition@50000 { label = "rg_conf_1"; reg = <0x50000 0x10000>; }; partition@60000 { label = "rg_conf_2"; reg = <0x60000 0x10000>; }; partition@70000 { label = "rg_conf_factory"; reg = <0x70000 0x10000>; }; }; }; flash@1 { /* NAND Flash: Samsung K9F5608U0D-JIB0 32MB */ compatible = "lantiq,nand-xway"; lantiq,cs = <1>; bank-width = <2>; reg = <1 0x0 0x2000000 >; req-mask = <0x1>; /* PCI request lines to mask during NAND access */ pinctrl-0 = <&nand_pins>, <&nand_cs1_pins>; pinctrl-names = "default"; partitions { compatible = "fixed-partitions"; #address-cells = <1>; #size-cells = <1>; ath9k_cal: partition@0 { label = "art"; /* Atheros 9160 wifi b/g/n radio EEPROM */ reg = <0x00000 0x4000>; read-only; }; partition@4000 { label = "kernel"; reg = <0x4000 0x200000>; }; partition@164000 { label = "ubi"; reg = <0x204000 0x1dfc000>; }; }; }; }; &pci0 { status = "okay"; pinctrl-0 = <&pci_gnt1_pins>, <&pci_req1_pins>; pinctrl-names = "default"; gpio-reset = <&gpio 21 GPIO_ACTIVE_HIGH>; wifi@168c,0027 { compatible = "pci168c,0027"; reg = <0x7000 0 0 0 0>; qca,no-eeprom; /* load from ath9k-eeprom-pci-0000:00:0e.0.bin */ }; }; &usb_phy { status = "okay"; }; &usb { status = "okay"; }; &vmmc { status = "okay"; gpios = <&gpio 31 GPIO_ACTIVE_HIGH>; };