aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohn Crispin <john@openwrt.org>2013-06-10 08:24:50 +0000
committerJohn Crispin <john@openwrt.org>2013-06-10 08:24:50 +0000
commit30786d2dd0e0063b56ba5e616e868f4e6775eaad (patch)
treee5d71773bc593d9bc67bc429515f20f6ffd970e8
parente078f649b5a5aa9f585b0a226fd14aad90c084af (diff)
downloadupstream-30786d2dd0e0063b56ba5e616e868f4e6775eaad.tar.gz
upstream-30786d2dd0e0063b56ba5e616e868f4e6775eaad.tar.bz2
upstream-30786d2dd0e0063b56ba5e616e868f4e6775eaad.zip
ramips: add support for belkin F7C027 wemo/homeautomatisation plug
Signed-off-by: Alexander Couzens <lynxis@fe80.eu> SVN-Revision: 36897
-rwxr-xr-xtarget/linux/ramips/base-files/etc/diag.sh3
-rw-r--r--target/linux/ramips/base-files/etc/hotplug.d/firmware/10-rt2x00-eeprom1
-rwxr-xr-xtarget/linux/ramips/base-files/lib/ramips.sh3
-rwxr-xr-xtarget/linux/ramips/base-files/lib/upgrade/platform.sh1
-rw-r--r--target/linux/ramips/dts/F7C027.dts126
-rw-r--r--target/linux/ramips/image/Makefile5
-rw-r--r--target/linux/ramips/rt305x/profiles/belkin.mk12
7 files changed, 151 insertions, 0 deletions
diff --git a/target/linux/ramips/base-files/etc/diag.sh b/target/linux/ramips/base-files/etc/diag.sh
index 1970ae0bcd..be2fa56faf 100755
--- a/target/linux/ramips/base-files/etc/diag.sh
+++ b/target/linux/ramips/base-files/etc/diag.sh
@@ -129,6 +129,9 @@ get_status_led() {
xdxrn502j)
status_led="xdxrn502j:green:power"
;;
+ f7c027)
+ status_led="belkin:orange:status"
+ ;;
esac
}
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 320e01d904..41dabd9f01 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
@@ -71,6 +71,7 @@ case "$FIRMWARE" in
dir-620-a1 | \
dir-620-d1 | \
esr-9753 | \
+ f7c027 | \
fonera20n | \
rt-n13u | \
freestation5 | \
diff --git a/target/linux/ramips/base-files/lib/ramips.sh b/target/linux/ramips/base-files/lib/ramips.sh
index 63af00d031..03ae25bcb1 100755
--- a/target/linux/ramips/base-files/lib/ramips.sh
+++ b/target/linux/ramips/base-files/lib/ramips.sh
@@ -91,6 +91,9 @@ ramips_board_detect() {
*"ESR-9753")
name="esr-9753"
;;
+ *"F7C027")
+ name="f7c027"
+ ;;
*"F5D8235 v1")
name="f5d8235-v1"
;;
diff --git a/target/linux/ramips/base-files/lib/upgrade/platform.sh b/target/linux/ramips/base-files/lib/upgrade/platform.sh
index b2fa0bd957..2d24f182d7 100755
--- a/target/linux/ramips/base-files/lib/upgrade/platform.sh
+++ b/target/linux/ramips/base-files/lib/upgrade/platform.sh
@@ -37,6 +37,7 @@ platform_check_image() {
dir-620-d1 | \
dap-1350 | \
esr-9753 | \
+ f7c027 | \
fonera20n | \
rt-n13u | \
freestation5 | \
diff --git a/target/linux/ramips/dts/F7C027.dts b/target/linux/ramips/dts/F7C027.dts
new file mode 100644
index 0000000000..91d4383812
--- /dev/null
+++ b/target/linux/ramips/dts/F7C027.dts
@@ -0,0 +1,126 @@
+/dts-v1/;
+
+/include/ "rt5350.dtsi"
+
+/ {
+ compatible = "F7C027", "ralink,rt5350-soc";
+ model = "Belkin F7C027";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "spi", "uartlite", "jtag", "sdram";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+
+ spi@b00 {
+ status = "okay";
+ m25p80@0 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "mx25l12805d";
+ reg = <0 0>;
+ linux,modalias = "m25p80", "mx25l12805d";
+ spi-max-frequency = <10000000>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "u-boot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x770000>;
+ };
+
+ partition@7c0000 {
+ label = "firmware2";
+ reg = <0x7c0000 0x770000>;
+ };
+
+ partition@f30000 {
+ label = "belkin_settings";
+ reg = <0xf30000 0xa0000>;
+ };
+
+ partition@fd0000 {
+ label = "unknown";
+ reg = <0xfd0000 0x10000>;
+ };
+
+ partition@fe0000 {
+ label = "nvram";
+ reg = <0xfe0000 0x10000>;
+ };
+
+ partition@ff0000 {
+ label = "user_factory";
+ reg = <0xff0000 0x10000>;
+ };
+ };
+ };
+ };
+
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ status {
+ label = "belkin:blue:status";
+ gpios = <&gpio0 7 1>;
+ };
+ power {
+ label = "belkin:blue:power";
+ gpios = <&gpio0 9 1>;
+ };
+ orange {
+ label = "belkin:orange:status";
+ gpios = <&gpio0 11 1>;
+ };
+ relay {
+ label = "belkin:device:relay";
+ gpios = <&gpio0 13 0>;
+ };
+ };
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ top {
+ label = "top";
+ gpios = <&gpio0 10 1>;
+ linux,code = <0x198>;
+ };
+ power {
+ label = "power";
+ gpios = <&gpio0 12 1>;
+ linux,code = <0x100>;
+ };
+ sensor {
+ label = "sensor";
+ gpios = <&gpio0 14 1>;
+ linux,code = <0x101>;
+ };
+ };
+};
diff --git a/target/linux/ramips/image/Makefile b/target/linux/ramips/image/Makefile
index 5e2d6b7762..ed7932b705 100644
--- a/target/linux/ramips/image/Makefile
+++ b/target/linux/ramips/image/Makefile
@@ -322,6 +322,10 @@ Image/Build/Profile/HW550-3G=$(call BuildFirmware/Default8M/$(1),$(1),hw550-3g,H
belkin_f5d8235v2_mtd_size=7929856
Image/Build/Profile/F5D8235V2=$(call BuildFirmware/CustomFlash/$(1),$(1),f5d8235v2,F5D8235_V2,$(belkin_f5d8235v2_mtd_size))
+# 0x770000
+belkin_f7c027_mtd_size=7798784
+Image/Build/Profile/F7C027=$(call BuildFirmware/CustomFlash/$(1),$(1),belkinf7c027,F7C027,$(belkin_f7c027_mtd_size))
+
Image/Build/Profile/FONERA20N=$(call BuildFirmware/Edimax/$(1),$(1),fonera20n,FONERA20N,$(ralink_default_fw_size_8M),RSDK,NL1T,0x50000,0xc0000)
Image/Build/Profile/RT-N13U=$(call BuildFirmware/Default8M/$(1),$(1),rt-n13u,RT-N13U)
@@ -451,6 +455,7 @@ define Image/Build/Profile/Default
$(call Image/Build/Profile/DAP1350,$(1))
$(call Image/Build/Profile/DAP1350WW,$(1))
$(call Image/Build/Profile/ESR-9753,$(1))
+ $(call Image/Build/Profile/F7C027,$(1))
$(call Image/Build/Profile/F5D8235V2,$(1))
$(call Image/Build/Profile/FONERA20N,$(1))
$(call Image/Build/Profile/FREESTATION5,$(1))
diff --git a/target/linux/ramips/rt305x/profiles/belkin.mk b/target/linux/ramips/rt305x/profiles/belkin.mk
index 70d3fa9408..47968ed410 100644
--- a/target/linux/ramips/rt305x/profiles/belkin.mk
+++ b/target/linux/ramips/rt305x/profiles/belkin.mk
@@ -17,4 +17,16 @@ define Profile/F5D8235V2/Description
Package set for Belkin F5D8235 v2
endef
+define Profile/F7C027
+ NAME:=Belkin F7C027
+ PACKAGES:=\
+ -kmod-usb-core -kmod-usb-rt305x-dwc_otg \
+ -kmod-ledtrig-usbdev
+endef
+
+define Profile/F7C027/Description
+ Package set for Belkin F7C027 - Plug with soc_ap and a relay
+endef
+
$(eval $(call Profile,F5D8235V2))
+$(eval $(call Profile,F7C027))