ramips:support Lenovo AC1200 Wireless router
Lenovo AC1200 series has two types, Y1 and Y1S. Y1S has 256MB DDR2, Y1 only has 128MB and Y1 have no Giga Port. Signed-off-by: Lintel <lintel.huang@gmail.com> SVN-Revision: 41961
This commit is contained in:
parent
44cb68c038
commit
04e4ff282a
10 changed files with 262 additions and 2 deletions
|
@ -188,6 +188,10 @@ get_status_led() {
|
||||||
na930)
|
na930)
|
||||||
status_led="na930:blue:power"
|
status_led="na930:blue:power"
|
||||||
;;
|
;;
|
||||||
|
y1 | \
|
||||||
|
y1s)
|
||||||
|
status_led="lenovo:blue:power"
|
||||||
|
;;
|
||||||
esac
|
esac
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -199,6 +199,12 @@ case $board in
|
||||||
set_usb_led "wr8305rt:usb"
|
set_usb_led "wr8305rt:usb"
|
||||||
set_wifi_led "wr8305rt:wifi"
|
set_wifi_led "wr8305rt:wifi"
|
||||||
;;
|
;;
|
||||||
|
y1 |\
|
||||||
|
y1s)
|
||||||
|
ucidef_set_led_default "power" "power" "lenovo:blue:power" "1"
|
||||||
|
set_usb_led "lenovo:blue:usb"
|
||||||
|
set_wifi_led "lenovo:blue:wifi"
|
||||||
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
ucidef_commit_leds
|
ucidef_commit_leds
|
||||||
|
|
|
@ -184,6 +184,13 @@ ramips_setup_interfaces()
|
||||||
ucidef_add_switch_vlan "switch0" "2" "4 6t"
|
ucidef_add_switch_vlan "switch0" "2" "4 6t"
|
||||||
;;
|
;;
|
||||||
|
|
||||||
|
y1 |\
|
||||||
|
y1s)
|
||||||
|
ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
|
||||||
|
ucidef_add_switch "switch0" "1" "1"
|
||||||
|
ucidef_add_switch_vlan "switch0" "1" "1 2 3 4 5 6t"
|
||||||
|
ucidef_add_switch_vlan "switch0" "2" "0 6t"
|
||||||
|
;;
|
||||||
d105 | \
|
d105 | \
|
||||||
na930 | \
|
na930 | \
|
||||||
omni-emb-hpm|\
|
omni-emb-hpm|\
|
||||||
|
@ -249,7 +256,9 @@ ramips_setup_macs()
|
||||||
dir-300-b7 | \
|
dir-300-b7 | \
|
||||||
dir-320-b1 | \
|
dir-320-b1 | \
|
||||||
psr-680w |\
|
psr-680w |\
|
||||||
sl-r7205)
|
sl-r7205 |\
|
||||||
|
y1 |\
|
||||||
|
y1s)
|
||||||
lan_mac=$(cat /sys/class/net/eth0/address)
|
lan_mac=$(cat /sys/class/net/eth0/address)
|
||||||
lan_mac=$(macaddr_setbit_la "$lan_mac")
|
lan_mac=$(macaddr_setbit_la "$lan_mac")
|
||||||
wan_mac=$(macaddr_add "$lan_mac" 1)
|
wan_mac=$(macaddr_add "$lan_mac" 1)
|
||||||
|
|
|
@ -325,6 +325,12 @@ ramips_board_detect() {
|
||||||
*"ZBT WR8305RT")
|
*"ZBT WR8305RT")
|
||||||
name="wr8305rt"
|
name="wr8305rt"
|
||||||
;;
|
;;
|
||||||
|
*"Lenovo Y1")
|
||||||
|
name="y1"
|
||||||
|
;;
|
||||||
|
*"Lenovo Y1S")
|
||||||
|
name="y1s"
|
||||||
|
;;
|
||||||
*)
|
*)
|
||||||
name="generic"
|
name="generic"
|
||||||
;;
|
;;
|
||||||
|
|
|
@ -96,7 +96,9 @@ platform_check_image() {
|
||||||
wrtnode |\
|
wrtnode |\
|
||||||
x5 |\
|
x5 |\
|
||||||
x8 |\
|
x8 |\
|
||||||
zbt-wa05)
|
zbt-wa05 |\
|
||||||
|
y1 |\
|
||||||
|
y1s)
|
||||||
[ "$magic" != "27051956" ] && {
|
[ "$magic" != "27051956" ] && {
|
||||||
echo "Invalid image type."
|
echo "Invalid image type."
|
||||||
return 1
|
return 1
|
||||||
|
|
43
target/linux/ramips/dts/Y1.dts
Normal file
43
target/linux/ramips/dts/Y1.dts
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
/dts-v1/;
|
||||||
|
|
||||||
|
/include/ "Y1.dtsi"
|
||||||
|
|
||||||
|
/ {
|
||||||
|
compatible = "lenovo,Y1", "ralink,mt7620a-soc";
|
||||||
|
model = "Lenovo Y1";
|
||||||
|
|
||||||
|
ethernet@10100000 {
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&ephy_pins>;
|
||||||
|
mtd-mac-address = <&factory 0x4>;
|
||||||
|
ralink,port-map = "llllw";
|
||||||
|
};
|
||||||
|
|
||||||
|
gpio-leds {
|
||||||
|
compatible = "gpio-leds";
|
||||||
|
power1 {
|
||||||
|
label = "lenovo:blue:power";
|
||||||
|
gpios = <&gpio0 9 1>;
|
||||||
|
};
|
||||||
|
wlan1 {
|
||||||
|
label = "lenovo:blue:wifi";
|
||||||
|
gpios = <&gpio3 0 1>;
|
||||||
|
};
|
||||||
|
wlan2 {
|
||||||
|
label = "lenovo:blue:wifi5g";
|
||||||
|
gpios = <&gpio2 10 1>;
|
||||||
|
};
|
||||||
|
usb {
|
||||||
|
label = "lenovo:blue:usb";
|
||||||
|
gpios = <&gpio2 12 1>;
|
||||||
|
};
|
||||||
|
lan {
|
||||||
|
label = "lenovo:blue:lan";
|
||||||
|
gpios = <&gpio2 15 1>;
|
||||||
|
};
|
||||||
|
internet {
|
||||||
|
label = "lenovo:blue:internet";
|
||||||
|
gpios = <&gpio2 11 1>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
105
target/linux/ramips/dts/Y1.dtsi
Normal file
105
target/linux/ramips/dts/Y1.dtsi
Normal file
|
@ -0,0 +1,105 @@
|
||||||
|
/include/ "mt7620a.dtsi"
|
||||||
|
|
||||||
|
/ {
|
||||||
|
chosen {
|
||||||
|
bootargs = "console=ttyS0,115200";
|
||||||
|
};
|
||||||
|
|
||||||
|
palmbus@10000000 {
|
||||||
|
sysc@0 {
|
||||||
|
ralink,gpiomux = "i2c", "jtag";
|
||||||
|
ralink,uartmux = "gpio";
|
||||||
|
ralink,wdtmux = <1>;
|
||||||
|
};
|
||||||
|
|
||||||
|
gpio0: gpio@600 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
gpio2: gpio@660 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
gpio3: gpio@688 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
spi@b00 {
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
m25p80@0 {
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
|
compatible = "w25q128";
|
||||||
|
reg = <0 0>;
|
||||||
|
linux,modalias = "m25p80", "w25q128";
|
||||||
|
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 0xfb0000>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
ehci@101c0000 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
ohci@101c1000 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
pcie@10140000 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
wmac@10180000 {
|
||||||
|
ralink,mtd-eeprom = <&factory 0>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pinctrl {
|
||||||
|
state_default: pinctrl0 {
|
||||||
|
gpio {
|
||||||
|
ralink,group = "uartf", "wled", "nd_sd";
|
||||||
|
ralink,function = "gpio";
|
||||||
|
};
|
||||||
|
pa {
|
||||||
|
ralink,group = "pa";
|
||||||
|
ralink,function = "pa";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
gpio-keys-polled {
|
||||||
|
compatible = "gpio-keys-polled";
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <0>;
|
||||||
|
poll-interval = <20>;
|
||||||
|
reset {
|
||||||
|
label = "reset";
|
||||||
|
gpios = <&gpio0 11 1>;
|
||||||
|
linux,code = <0x198>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
79
target/linux/ramips/dts/Y1S.dts
Normal file
79
target/linux/ramips/dts/Y1S.dts
Normal file
|
@ -0,0 +1,79 @@
|
||||||
|
/dts-v1/;
|
||||||
|
|
||||||
|
/include/ "Y1.dtsi"
|
||||||
|
|
||||||
|
/ {
|
||||||
|
compatible = "lenovo,Y1S", "ralink,mt7620a-soc";
|
||||||
|
model = "Lenovo Y1S";
|
||||||
|
|
||||||
|
ethernet@10100000 {
|
||||||
|
status = "okay";
|
||||||
|
mtd-mac-address = <&factory 0x4>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&rgmii1_pins &rgmii2_pins &mdio_pins>;
|
||||||
|
|
||||||
|
ralink,port-map = "wllll";
|
||||||
|
|
||||||
|
port@4 {
|
||||||
|
status = "okay";
|
||||||
|
phy-handle = <&phy4>;
|
||||||
|
phy-mode = "rgmii";
|
||||||
|
};
|
||||||
|
|
||||||
|
port@5 {
|
||||||
|
status = "okay";
|
||||||
|
phy-handle = <&phy5>;
|
||||||
|
phy-mode = "rgmii";
|
||||||
|
};
|
||||||
|
|
||||||
|
mdio-bus {
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
phy4: ethernet-phy@4 {
|
||||||
|
reg = <4>;
|
||||||
|
phy-mode = "rgmii";
|
||||||
|
};
|
||||||
|
|
||||||
|
phy5: ethernet-phy@5 {
|
||||||
|
reg = <5>;
|
||||||
|
phy-mode = "rgmii";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
gsw@10110000 {
|
||||||
|
ralink,port4 = "gmac";
|
||||||
|
};
|
||||||
|
|
||||||
|
gpio-leds {
|
||||||
|
compatible = "gpio-leds";
|
||||||
|
power1 {
|
||||||
|
label = "lenovo:yellow:power";
|
||||||
|
gpios = <&gpio0 14 1>;
|
||||||
|
};
|
||||||
|
power2 {
|
||||||
|
label = "lenovo:blue:power";
|
||||||
|
gpios = <&gpio0 9 1>;
|
||||||
|
};
|
||||||
|
wlan1 {
|
||||||
|
label = "lenovo:yellow:wifi";
|
||||||
|
gpios = <&gpio3 0 1>;
|
||||||
|
};
|
||||||
|
wlan2 {
|
||||||
|
label = "lenovo:blue:wifi";
|
||||||
|
gpios = <&gpio2 10 1>;
|
||||||
|
};
|
||||||
|
usb1 {
|
||||||
|
label = "lenovo:yellow:usb";
|
||||||
|
gpios = <&gpio2 13 1>;
|
||||||
|
};
|
||||||
|
usb2 {
|
||||||
|
label = "lenovo:blue:usb";
|
||||||
|
gpios = <&gpio2 12 1>;
|
||||||
|
};
|
||||||
|
internet {
|
||||||
|
label = "lenovo:blue:internet";
|
||||||
|
gpios = <&gpio2 11 1>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
|
@ -722,6 +722,8 @@ Image/Build/Profile/DIR-810L=$(call BuildFirmware/CustomFlash/$(1),$(1),dir-810l
|
||||||
na930_mtd_size=20971520
|
na930_mtd_size=20971520
|
||||||
Image/Build/Profile/NA930=$(call BuildFirmware/CustomFlash/$(1),$(1),na930,NA930,$(na930_mtd_size))
|
Image/Build/Profile/NA930=$(call BuildFirmware/CustomFlash/$(1),$(1),na930,NA930,$(na930_mtd_size))
|
||||||
Image/Build/Profile/MZK-750DHP=$(call BuildFirmware/Default8M/$(1),$(1),mzk-750dhp,MZK-750DHP)
|
Image/Build/Profile/MZK-750DHP=$(call BuildFirmware/Default8M/$(1),$(1),mzk-750dhp,MZK-750DHP)
|
||||||
|
Image/Build/Profile/Y1=$(call BuildFirmware/Default16M/$(1),$(1),Lenovo-y1,Y1)
|
||||||
|
Image/Build/Profile/Y1S=$(call BuildFirmware/Default16M/$(1),$(1),Lenovo-y1s,Y1S)
|
||||||
|
|
||||||
ifeq ($(SUBTARGET),mt7620a)
|
ifeq ($(SUBTARGET),mt7620a)
|
||||||
define Image/Build/Profile/Default
|
define Image/Build/Profile/Default
|
||||||
|
@ -736,6 +738,8 @@ define Image/Build/Profile/Default
|
||||||
$(call Image/Build/Profile/WHR1166D,$(1))
|
$(call Image/Build/Profile/WHR1166D,$(1))
|
||||||
$(call Image/Build/Profile/MZK-750DHP,$(1))
|
$(call Image/Build/Profile/MZK-750DHP,$(1))
|
||||||
$(call Image/Build/Profile/NA930,$(1))
|
$(call Image/Build/Profile/NA930,$(1))
|
||||||
|
$(call Image/Build/Profile/Y1,$(1))
|
||||||
|
$(call Image/Build/Profile/Y1S,$(1))
|
||||||
endef
|
endef
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
CONFIG_ARCH_BINFMT_ELF_RANDOMIZE_PIE=y
|
CONFIG_ARCH_BINFMT_ELF_RANDOMIZE_PIE=y
|
||||||
CONFIG_ARCH_DISCARD_MEMBLOCK=y
|
CONFIG_ARCH_DISCARD_MEMBLOCK=y
|
||||||
CONFIG_ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE=y
|
CONFIG_ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE=y
|
||||||
|
CONFIG_ARCH_HAS_RESET_CONTROLLER=y
|
||||||
CONFIG_ARCH_HAVE_CUSTOM_GPIO_H=y
|
CONFIG_ARCH_HAVE_CUSTOM_GPIO_H=y
|
||||||
CONFIG_ARCH_HIBERNATION_POSSIBLE=y
|
CONFIG_ARCH_HIBERNATION_POSSIBLE=y
|
||||||
CONFIG_ARCH_REQUIRE_GPIOLIB=y
|
CONFIG_ARCH_REQUIRE_GPIOLIB=y
|
||||||
|
@ -78,6 +79,7 @@ CONFIG_HAVE_PERF_EVENTS=y
|
||||||
CONFIG_HW_HAS_PCI=y
|
CONFIG_HW_HAS_PCI=y
|
||||||
CONFIG_HW_RANDOM=m
|
CONFIG_HW_RANDOM=m
|
||||||
CONFIG_HZ_PERIODIC=y
|
CONFIG_HZ_PERIODIC=y
|
||||||
|
CONFIG_ICPLUS_PHY=y
|
||||||
CONFIG_IMAGE_CMDLINE_HACK=y
|
CONFIG_IMAGE_CMDLINE_HACK=y
|
||||||
CONFIG_INET_LRO=y
|
CONFIG_INET_LRO=y
|
||||||
CONFIG_INITRAMFS_SOURCE=""
|
CONFIG_INITRAMFS_SOURCE=""
|
||||||
|
|
Loading…
Reference in a new issue