summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xtarget/linux/ramips/base-files/etc/diag.sh2
-rw-r--r--target/linux/ramips/base-files/etc/hotplug.d/firmware/10-rt2x00-eeprom1
-rwxr-xr-xtarget/linux/ramips/base-files/etc/uci-defaults/01_leds1
-rwxr-xr-xtarget/linux/ramips/base-files/etc/uci-defaults/02_network4
-rw-r--r--target/linux/ramips/base-files/lib/preinit/06_set_iface_mac3
-rwxr-xr-xtarget/linux/ramips/base-files/lib/ramips.sh3
-rw-r--r--target/linux/ramips/dts/DIR-610-A1.dts100
-rw-r--r--target/linux/ramips/image/Makefile3
-rw-r--r--target/linux/ramips/rt305x/profiles/dlink.mk10
9 files changed, 124 insertions, 3 deletions
diff --git a/target/linux/ramips/base-files/etc/diag.sh b/target/linux/ramips/base-files/etc/diag.sh
index 6ecb13352c..c0fdc88877 100755
--- a/target/linux/ramips/base-files/etc/diag.sh
+++ b/target/linux/ramips/base-files/etc/diag.sh
@@ -27,7 +27,7 @@ get_status_led() {
d105)
status_led="d105:red:power"
;;
- dir-300-b1 | dir-600-b1 | dir-600-b2 | dir-615-h1 | dir-615-d | dir-620-a1| dir-620-d1)
+ dir-300-b1 | dir-600-b1 | dir-600-b2 | dir-610-a1 | dir-615-h1 | dir-615-d | dir-620-a1| dir-620-d1)
status_led="d-link:green:status"
;;
dir-645)
diff --git a/target/linux/ramips/base-files/etc/hotplug.d/firmware/10-rt2x00-eeprom b/target/linux/ramips/base-files/etc/hotplug.d/firmware/10-rt2x00-eeprom
index 9e9e09be3d..a80ea4ff49 100644
--- a/target/linux/ramips/base-files/etc/hotplug.d/firmware/10-rt2x00-eeprom
+++ b/target/linux/ramips/base-files/etc/hotplug.d/firmware/10-rt2x00-eeprom
@@ -68,6 +68,7 @@ case "$FIRMWARE" in
br6524n | \
carambola | \
d105 | \
+ dir-610-a1 | \
dir-615-h1 | \
dir-620-a1 | \
dir-620-d1 | \
diff --git a/target/linux/ramips/base-files/etc/uci-defaults/01_leds b/target/linux/ramips/base-files/etc/uci-defaults/01_leds
index 7bec16f491..64c7c5e469 100755
--- a/target/linux/ramips/base-files/etc/uci-defaults/01_leds
+++ b/target/linux/ramips/base-files/etc/uci-defaults/01_leds
@@ -77,6 +77,7 @@ case $board in
dir-810l)
ucidef_set_led_default "power" "POWER" "dlink:green:power" "1"
;;
+ dir-610-a1 |\
esr-9753)
set_wifi_led "rt2800pci-phy0::radio"
;;
diff --git a/target/linux/ramips/base-files/etc/uci-defaults/02_network b/target/linux/ramips/base-files/etc/uci-defaults/02_network
index 1d77e7c886..e444ef246d 100755
--- a/target/linux/ramips/base-files/etc/uci-defaults/02_network
+++ b/target/linux/ramips/base-files/etc/uci-defaults/02_network
@@ -77,6 +77,7 @@ ramips_setup_interfaces()
ucidef_add_switch_vlan "switch0" "2" "0 6t"
;;
+ dir-610-a1 | \
dir-615-h1 | \
mzk-w300nh2)
ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
@@ -205,7 +206,8 @@ ramips_setup_macs()
dir-300-b1 |\
dir-300-b2 |\
- dir-600-b1)
+ dir-600-b1 |\
+ dir-610-a1)
lan_mac=$(mtd_get_mac_binary devdata 16388)
wan_mac=$(macaddr_add "$lan_mac" 1)
;;
diff --git a/target/linux/ramips/base-files/lib/preinit/06_set_iface_mac b/target/linux/ramips/base-files/lib/preinit/06_set_iface_mac
index a0d9b6123b..44cab3aa19 100644
--- a/target/linux/ramips/base-files/lib/preinit/06_set_iface_mac
+++ b/target/linux/ramips/base-files/lib/preinit/06_set_iface_mac
@@ -39,7 +39,8 @@ preinit_set_mac_address() {
asl26555 |\
dir-300-b1 |\
dir-300-b2 |\
- dir-600-b1)
+ dir-600-b1 |\
+ dir-610-a1)
mac=$(mtd_get_mac_binary devdata 16388)
ifconfig eth0 hw ether $mac 2>/dev/null
;;
diff --git a/target/linux/ramips/base-files/lib/ramips.sh b/target/linux/ramips/base-files/lib/ramips.sh
index 3ec44d2fff..066f3bdb40 100755
--- a/target/linux/ramips/base-files/lib/ramips.sh
+++ b/target/linux/ramips/base-files/lib/ramips.sh
@@ -73,6 +73,9 @@ ramips_board_detect() {
*"DIR-600 B2")
name="dir-600-b2"
;;
+ *"DIR-610 A1")
+ name="dir-610-a1"
+ ;;
*"DIR-620 A1")
name="dir-620-a1"
;;
diff --git a/target/linux/ramips/dts/DIR-610-A1.dts b/target/linux/ramips/dts/DIR-610-A1.dts
new file mode 100644
index 0000000000..ed5606af89
--- /dev/null
+++ b/target/linux/ramips/dts/DIR-610-A1.dts
@@ -0,0 +1,100 @@
+/dts-v1/;
+
+/include/ "rt5350.dtsi"
+
+/ {
+ compatible = "DIR-610-A1", "ralink,rt5350-soc";
+ model = "D-Link DIR-610 A1";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "jtag", "uartlite", "mdio", "sdram", "rgmii";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+
+ spi@b00 {
+ status = "okay";
+ m25p80@0 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "f25l32pa", "m25p80";
+ reg = <0 0>;
+ linux,modalias = "m25p80";
+ spi-max-frequency = <10000000>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "devdata";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x3b0000>;
+ };
+ };
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x1f>;
+ ralink,led-polarity = <0>;
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ status {
+ label = "d-link:green:status";
+ gpios = <&gpio0 9 1>;
+ };
+ wps {
+ label = "d-link:green:wps";
+ gpios = <&gpio0 13 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset {
+ label = "reset";
+ gpios = <&gpio0 10 1>;
+ linux,code = <0x198>;
+ };
+ wps {
+ label = "wps";
+ gpios = <&gpio0 0 1>;
+ linux,code = <0x211>;
+ };
+ };
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+};
diff --git a/target/linux/ramips/image/Makefile b/target/linux/ramips/image/Makefile
index ccae6bee77..18f0fe5e0e 100644
--- a/target/linux/ramips/image/Makefile
+++ b/target/linux/ramips/image/Makefile
@@ -280,6 +280,8 @@ endif
# RT305X Profiles
#
+Image/Build/Profile/DIR610A1=$(call BuildFirmware/Seama/$(1),$(1),dir-610-a1,DIR-610-A1,wrgn59_dlob.hans_dir610,ralink_default_fw_size_4M)
+
edimax_3g6200n_mtd_size=3735552
Image/Build/Profile/3G6200N=$(call BuildFirmware/Edimax/$(1),$(1),3g-6200n,3G-6200N,$(edimax_3g6200n_mtd_size),CSYS,3G62,0x50000,0xc0000)
@@ -505,6 +507,7 @@ define Image/Build/Profile/Default
$(call Image/Build/Profile/DIR-300-B1,$(1))
$(call Image/Build/Profile/DIR-600-B1,$(1))
$(call Image/Build/Profile/DIR-600-B2,$(1))
+ $(call Image/Build/Profile/DIR610A1,$(1))
$(call Image/Build/Profile/DIR-615-D,$(1))
$(call Image/Build/Profile/DIR-620-A1,$(1))
$(call Image/Build/Profile/DIR-620-D1,$(1))
diff --git a/target/linux/ramips/rt305x/profiles/dlink.mk b/target/linux/ramips/rt305x/profiles/dlink.mk
index 29d8b7c38a..877724d886 100644
--- a/target/linux/ramips/rt305x/profiles/dlink.mk
+++ b/target/linux/ramips/rt305x/profiles/dlink.mk
@@ -18,3 +18,13 @@ endef
$(eval $(call Profile,DIR615H1))
+define Profile/DIR610A1
+ NAME:=Dlink DIR-610 A1
+ PACKAGES:=kmod-ledtrig-netdev kmod-ledtrig-timer
+endef
+
+define Profile/DIR610A1/Description
+ Package set for Dlink DIR610 A1 board
+endef
+
+$(eval $(call Profile,DIR610A1))