From 083ef3fefecd024b2b9cdc496e1f7811c225041e Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Fri, 9 Sep 2016 00:57:31 +0200 Subject: [PATCH] ramips: add support for Mercury MAC1200R v2 MT7628AN + MT7612E, 8MB SPI flash, 64MB DDR RAM reset button GPIO is still missing (anyone?) bootloader password is 'slp' Signed-off-by: Daniel Golle --- .../ramips/base-files/etc/board.d/02_network | 5 + target/linux/ramips/base-files/etc/diag.sh | 1 + target/linux/ramips/base-files/lib/ramips.sh | 3 + .../ramips/base-files/lib/upgrade/platform.sh | 1 + target/linux/ramips/dts/MAC1200RV2.dts | 94 +++++++++++++++++++ target/linux/ramips/image/mt7628.mk | 7 ++ 6 files changed, 111 insertions(+) create mode 100644 target/linux/ramips/dts/MAC1200RV2.dts diff --git a/target/linux/ramips/base-files/etc/board.d/02_network b/target/linux/ramips/base-files/etc/board.d/02_network index 32bfa77f70..e9df34524b 100755 --- a/target/linux/ramips/base-files/etc/board.d/02_network +++ b/target/linux/ramips/base-files/etc/board.d/02_network @@ -72,6 +72,7 @@ ramips_setup_interfaces() dir-615-h1|\ firewrt|\ hlk-rm04|\ + mac1200rv2|\ miwifi-mini|\ miwifi-nano|\ mt7621|\ @@ -313,6 +314,10 @@ ramips_setup_macs() wan_mac=$(mtd_get_mac_binary factory 4) lan_mac=$(mtd_get_mac_binary factory 46) ;; + mac1200rv2) + lan_mac=$(mtd_get_mac_binary factory_info 13) + wan_mac=$(macaddr_add "$lan_mac" 1) + ;; m3|\ m4|\ x5|\ diff --git a/target/linux/ramips/base-files/etc/diag.sh b/target/linux/ramips/base-files/etc/diag.sh index 5693f6307e..969594d8a6 100644 --- a/target/linux/ramips/base-files/etc/diag.sh +++ b/target/linux/ramips/base-files/etc/diag.sh @@ -65,6 +65,7 @@ get_status_led() { dir-620-d1|\ hpm|\ hw550-3g|\ + mac1200rv2|\ miniembwifi|\ mofi3500-3gn|\ rut5xx|\ diff --git a/target/linux/ramips/base-files/lib/ramips.sh b/target/linux/ramips/base-files/lib/ramips.sh index 1e9fa90b5d..98bc68c397 100755 --- a/target/linux/ramips/base-files/lib/ramips.sh +++ b/target/linux/ramips/base-files/lib/ramips.sh @@ -250,6 +250,9 @@ ramips_board_detect() { *"Memory 2 Move") name="m2m" ;; + *"Mercury MAC1200R v2") + name="mac1200rv2" + ;; *"MicroWRT") name="microwrt" ;; diff --git a/target/linux/ramips/base-files/lib/upgrade/platform.sh b/target/linux/ramips/base-files/lib/upgrade/platform.sh index d7f5a73e77..e3a74e0928 100755 --- a/target/linux/ramips/base-files/lib/upgrade/platform.sh +++ b/target/linux/ramips/base-files/lib/upgrade/platform.sh @@ -76,6 +76,7 @@ platform_check_image() { m2m|\ m3|\ m4|\ + mac1200rv2|\ microwrt|\ miniembplug|\ miniembwifi|\ diff --git a/target/linux/ramips/dts/MAC1200RV2.dts b/target/linux/ramips/dts/MAC1200RV2.dts new file mode 100644 index 0000000000..9576081c82 --- /dev/null +++ b/target/linux/ramips/dts/MAC1200RV2.dts @@ -0,0 +1,94 @@ +/dts-v1/; + +/include/ "mt7628an.dtsi" + +/ { + compatible = "mercury,mac1200rv2", "mediatek,mt7628an-soc"; + model = "Mercury MAC1200R v2"; + + chosen { + bootargs = "console=ttyS0,57600"; + }; + + memory@0 { + device_type = "memory"; + reg = <0x0 0x2000000>; + }; + + gpio-leds { + compatible = "gpio-leds"; + status { + label = "mac1200rv2:green:status"; + gpios = <&gpio0 11 1>; + }; + }; +}; + +&spi0 { + status = "okay"; + + m25p80@0 { + #address-cells = <1>; + #size-cells = <1>; + compatible = "w25q128"; + reg = <0 0>; + linux,modalias = "m25p80", "w25q128"; + spi-max-frequency = <10000000>; + m25p,chunked-io = <32>; + + partition@0 { + label = "u-boot"; + reg = <0x0 0x1d800>; + }; + + factory: partition@0x1d800 { + label = "factory_info"; + reg = <0x1d800 0x800>; + read-only; + }; + + art: partition@0x1e000 { + label = "art"; + reg = <0x1e000 0x2000>; + read-only; + }; + + partition@20000 { + label = "config"; + reg = <0x20000 0x10000>; + }; + + partition@30000 { + label = "u-boot2"; + reg = <0x30000 0x10000>; + }; + + partition@40000 { + label = "firmware"; + reg = <0x40000 0x7c0000>; + }; + }; +}; + +ðernet { + pinctrl-names = "default"; + mtd-mac-address = <&factory 0xd>; + ralink,port-map = "llllw"; +}; + +&wmac { + status = "okay"; + ralink,mtd-eeprom = <&art 0x0>; +}; + +&pcie { + status = "okay"; + pcie-bridge { + mt76@0,0 { + reg = <0x0000 0 0 0 0>; + device_type = "pci"; + mediatek,mtd-eeprom = <&art 0x1000>; + mediatek,2ghz = <0>; + }; + }; +}; diff --git a/target/linux/ramips/image/mt7628.mk b/target/linux/ramips/image/mt7628.mk index fa7d1e77f2..0647acf3ad 100644 --- a/target/linux/ramips/image/mt7628.mk +++ b/target/linux/ramips/image/mt7628.mk @@ -33,3 +33,10 @@ define Device/duzun-dm06 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-ledtrig-usbdev endef TARGET_DEVICES += duzun-dm06 + +define Device/mac1200r-v2 + DTS := MAC1200RV2 + IMAGE_SIZE := $(ralink_default_fw_size_8M) + DEVICE_TITLE := Mercury MAC1200R v2.0 +endef +TARGET_DEVICES += mac1200r-v2 -- 2.30.2