aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/lantiq/files/arch/mips/boot/dts/DGN3500.dtsi
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/lantiq/files/arch/mips/boot/dts/DGN3500.dtsi')
-rw-r--r--target/linux/lantiq/files/arch/mips/boot/dts/DGN3500.dtsi214
1 files changed, 214 insertions, 0 deletions
diff --git a/target/linux/lantiq/files/arch/mips/boot/dts/DGN3500.dtsi b/target/linux/lantiq/files/arch/mips/boot/dts/DGN3500.dtsi
new file mode 100644
index 0000000000..b0facb4107
--- /dev/null
+++ b/target/linux/lantiq/files/arch/mips/boot/dts/DGN3500.dtsi
@@ -0,0 +1,214 @@
+#include "ar9.dtsi"
+
+#include <dt-bindings/input/input.h>
+
+/ {
+ chosen {
+ bootargs = "root= console=ttyLTQ0,115200";
+ };
+
+ aliases {
+ led-boot = &power_green;
+ led-failsafe = &power_red;
+ led-running = &power_green;
+ led-upgrade = &power_green;
+
+ led-dsl = &dsl;
+ led-internet = &internet;
+ led-usb = &led_usb;
+ led-wifi = &wifi_green;
+ };
+
+ memory@0 {
+ reg = <0x0 0x4000000>;
+ };
+
+ rtl8366rb {
+ compatible = "realtek,rtl8366rb";
+ gpio-sda = <&gpio 35 GPIO_ACTIVE_HIGH>;
+ gpio-sck = <&gpio 37 GPIO_ACTIVE_HIGH>;
+
+ realtek,initvals = <
+ 0x0000 0x0830
+ 0x0400 0x8130
+ 0x000A 0x83ED
+ 0x0F51 0x0017
+ 0x02F5 0x0048
+ 0x02FA 0xFFDF
+ 0x02FB 0xFFE0
+ 0x0450 0x0000
+ 0x0401 0x0000
+ 0x0431 0x0960
+ >;
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <100>;
+
+ rfkill {
+ label = "rfkill";
+ gpios = <&gpio 36 GPIO_ACTIVE_LOW>;
+ linux,code = <KEY_RFKILL>;
+ };
+ wps {
+ label = "wps";
+ gpios = <&gpio 54 GPIO_ACTIVE_LOW>;
+ linux,code = <KEY_WPS_BUTTON>;
+ };
+ reset {
+ label = "reset";
+ gpios = <&gpio 53 GPIO_ACTIVE_LOW>;
+ linux,code = <KEY_RESTART>;
+ };
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ internet: internet {
+ label = "dgn3500:green:internet";
+ gpios = <&gpio 2 GPIO_ACTIVE_LOW>;
+ };
+ internet2 {
+ label = "dgn3500:red:internet";
+ gpios = <&gpio 30 GPIO_ACTIVE_LOW>;
+ };
+ dsl: dsl {
+ label = "dgn3500:green:dsl";
+ gpios = <&gpio 4 GPIO_ACTIVE_LOW>;
+ };
+ led_usb: usb {
+ label = "dgn3500:green:usb";
+ gpios = <&gpio 22 GPIO_ACTIVE_LOW>;
+ };
+ power_green: power {
+ label = "dgn3500:green:power";
+ gpios = <&gpio 34 GPIO_ACTIVE_LOW>;
+ default-state = "keep";
+ };
+ power_red: power2 {
+ label = "dgn3500:red:power";
+ gpios = <&gpio 39 GPIO_ACTIVE_LOW>;
+ };
+ wifi_green: wifi {
+ label = "dgn3500:green:wireless";
+ gpios = <&gpio 14 GPIO_ACTIVE_LOW>;
+ };
+ wifi2 {
+ label = "dgn3500:amber:wireless";
+ gpios = <&gpio 51 GPIO_ACTIVE_LOW>;
+ };
+ wps {
+ label = "dgn3500:green:wps";
+ gpios = <&gpio 52 GPIO_ACTIVE_LOW>;
+ };
+ };
+};
+
+&gpio {
+ pinctrl-names = "default";
+ pinctrl-0 = <&state_default>;
+
+ state_default: pinmux {
+ exin {
+ lantiq,groups = "exin1";
+ lantiq,function = "exin";
+ };
+ pci {
+ lantiq,groups = "gnt1", "req1";
+ lantiq,function = "pci";
+ };
+ pci-in {
+ lantiq,groups = "req1";
+ lantiq,output = <0>;
+ lantiq,open-drain = <1>;
+ lantiq,pull = <2>;
+ };
+ pci-out {
+ lantiq,groups = "gnt1";
+ lantiq,output = <1>;
+ lantiq,pull = <0>;
+ };
+ };
+ pins_spi_default: pins_spi_default {
+ spi_in {
+ lantiq,groups = "spi_di";
+ lantiq,function = "spi";
+ };
+ spi_out {
+ lantiq,groups = "spi_do", "spi_clk",
+ "spi_cs4";
+ lantiq,function = "spi";
+ lantiq,output = <1>;
+ };
+ };
+};
+
+&gsw {
+ phy-mode = "mii";
+};
+
+&pci0 {
+ status = "okay";
+ gpio-reset = <&gpio 21 GPIO_ACTIVE_HIGH>;
+
+ wifi@168c,0029 {
+ compatible = "pci168c,0029";
+ reg = <0x7000 0 0 0 0>;
+ qca,no-eeprom; /* load from ath9k-eeprom-pci-0000:00:0e.0.bin */
+ };
+};
+
+&spi {
+ status = "okay";
+
+ pinctrl-names = "default";
+ pinctrl-0 = <&pins_spi_default>;
+
+ m25p80@4 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "jedec,spi-nor";
+ reg = <4 0>;
+ spi-max-frequency = <20000000>;
+
+ partitions {
+ compatible = "fixed-partitions";
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ reg = <0x0 0x10000>;
+ label = "uboot";
+ read-only;
+ };
+
+ partition@10000 {
+ reg = <0x10000 0x10000>;
+ label = "uboot-env";
+ read-only;
+ };
+
+ ath9k_cal: partition@20000 {
+ reg = <0x20000 0x10000>;
+ label = "calibration";
+ read-only;
+ };
+
+ partition@50000 {
+ reg = <0x50000 0xfa0000>;
+ label = "firmware";
+ };
+ };
+ };
+};
+
+&usb_phy0 {
+ status = "okay";
+};
+
+&usb0 {
+ status = "okay";
+};