Bläddra i källkod

ramips: add support for belkin F7C027 wemo/homeautomatisation plug

Signed-off-by: Alexander Couzens <[email protected]>

SVN-Revision: 36897
John Crispin 12 år sedan
förälder
incheckning
30786d2dd0

+ 3 - 0
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
 }
 

+ 1 - 0
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 | \

+ 3 - 0
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"
 		;;

+ 1 - 0
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 | \

+ 126 - 0
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>;
+		};
+	};
+};

+ 5 - 0
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))

+ 12 - 0
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))