ramips: add support for ELECOM WRC-2533GHBK-I
ELECOM WRC-2533GHBK-I is a 2.4/5 GHz band 11ac (Wi-Fi 5) router, based on MT7621A. Specification: - SoC : MediaTek MT7621A - RAM : DDR3 128 MiB - Flash : SPI-NOR 16 MiB - WLAN : 2.4/5 GHz 4T4R (2x MediaTek MT7615) - Ethernet : 10/100/1000 Mbps x5 - Switch : MediaTek MT7530 (SoC) - LED/keys : 4x/3x (2x buttons, 1x slide-switch) - UART : through-hole on PCB - J4: 3.3V, RX, GND, TX from SoC side - 57600n8 - Power : 12VDC, 1.5A Flash instruction using factory image: 1. Boot WRC-2533GHBK-I normally 2. Access to "http://192.168.2.1/" and open firmware update page ("ファームウェア更新") 3. Select the OpenWrt factory image and click apply ("適用") button 4. Wait ~150 seconds to complete flashing MAC addresses: LAN : BC:5C:4C:xx:xx:89 (Config, ethaddr (text)) WAN : BC:5C:4C:xx:xx:88 (Config, wanaddr (text)) 2.4GHz : BC:5C:4C:xx:xx:8A (Factory, 0x4 (hex)) 5GHz : BC:5C:4C:xx:xx:8B (Factory, 0x8004 (hex)) Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com> Reviewed-by: Sungbo Eo <mans0n@gorani.run>
This commit is contained in:
		 INAGAKI Hiroshi
					INAGAKI Hiroshi
				
			
				
					committed by
					
						 Adrian Schmutzler
						Adrian Schmutzler
					
				
			
			
				
	
			
			
			 Adrian Schmutzler
						Adrian Schmutzler
					
				
			
						parent
						
							0071c7cd82
						
					
				
				
					commit
					eb11cd9ea3
				
			| @@ -157,7 +157,7 @@ endef | |||||||
|  |  | ||||||
| define Build/elecom-product-header | define Build/elecom-product-header | ||||||
| 	$(eval product=$(word 1,$(1))) | 	$(eval product=$(word 1,$(1))) | ||||||
| 	$(eval fw=$(word 2,$(1))) | 	$(eval fw=$(if $(word 2,$(1)),$(word 2,$(1)),$@)) | ||||||
|  |  | ||||||
| 	( \ | 	( \ | ||||||
| 		echo -n -e "ELECOM\x00\x00$(product)" | dd bs=40 count=1 conv=sync; \ | 		echo -n -e "ELECOM\x00\x00$(product)" | dd bs=40 count=1 conv=sync; \ | ||||||
|   | |||||||
							
								
								
									
										199
									
								
								target/linux/ramips/dts/mt7621_elecom_wrc-2533ghbk-i.dts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										199
									
								
								target/linux/ramips/dts/mt7621_elecom_wrc-2533ghbk-i.dts
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,199 @@ | |||||||
|  | // SPDX-License-Identifier: GPL-2.0-or-later OR MIT | ||||||
|  |  | ||||||
|  | #include "mt7621.dtsi" | ||||||
|  |  | ||||||
|  | #include <dt-bindings/gpio/gpio.h> | ||||||
|  | #include <dt-bindings/input/input.h> | ||||||
|  |  | ||||||
|  | / { | ||||||
|  | 	compatible = "elecom,wrc-2533ghbk-i", "mediatek,mt7621-soc"; | ||||||
|  | 	model = "ELECOM WRC-2533GHBK-I"; | ||||||
|  |  | ||||||
|  | 	aliases { | ||||||
|  | 		led-boot = &led_power; | ||||||
|  | 		led-failsafe = &led_power; | ||||||
|  | 		led-running = &led_power; | ||||||
|  | 		led-upgrade = &led_power; | ||||||
|  | 	}; | ||||||
|  |  | ||||||
|  | 	leds { | ||||||
|  | 		compatible = "gpio-leds"; | ||||||
|  |  | ||||||
|  | 		wps { | ||||||
|  | 			label = "red:wps"; | ||||||
|  | 			gpios = <&gpio 7 GPIO_ACTIVE_HIGH>; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		led_power: power { | ||||||
|  | 			label = "white:power"; | ||||||
|  | 			gpios = <&gpio 12 GPIO_ACTIVE_HIGH>; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		wlan2g { | ||||||
|  | 			label = "white:wlan2g"; | ||||||
|  | 			gpios = <&gpio 14 GPIO_ACTIVE_HIGH>; | ||||||
|  | 			linux,default-trigger = "phy0radio"; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		wlan5g { | ||||||
|  | 			label = "white:wlan5g"; | ||||||
|  | 			gpios = <&gpio 15 GPIO_ACTIVE_HIGH>; | ||||||
|  | 			linux,default-trigger = "phy1radio"; | ||||||
|  | 		}; | ||||||
|  | 	}; | ||||||
|  |  | ||||||
|  | 	keys { | ||||||
|  | 		compatible = "gpio-keys"; | ||||||
|  |  | ||||||
|  | 		auto { | ||||||
|  | 			label = "auto"; | ||||||
|  | 			gpios = <&gpio 13 GPIO_ACTIVE_LOW>; | ||||||
|  | 			linux,code = <BTN_0>; | ||||||
|  | 			linux,input-type = <EV_SW>; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		reset { | ||||||
|  | 			label = "reset"; | ||||||
|  | 			gpios = <&gpio 16 GPIO_ACTIVE_LOW>; | ||||||
|  | 			linux,code = <KEY_RESTART>; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		wps { | ||||||
|  | 			label = "wps"; | ||||||
|  | 			gpios = <&gpio 18 GPIO_ACTIVE_LOW>; | ||||||
|  | 			linux,code = <KEY_WPS_BUTTON>; | ||||||
|  | 		}; | ||||||
|  | 	}; | ||||||
|  | }; | ||||||
|  |  | ||||||
|  | &spi0 { | ||||||
|  | 	status = "okay"; | ||||||
|  |  | ||||||
|  | 	flash@0 { | ||||||
|  | 		compatible = "jedec,spi-nor"; | ||||||
|  | 		reg = <0>; | ||||||
|  | 		spi-max-frequency = <40000000>; | ||||||
|  |  | ||||||
|  | 		partitions { | ||||||
|  | 			compatible = "fixed-partitions"; | ||||||
|  | 			#address-cells = <1>; | ||||||
|  | 			#size-cells = <1>; | ||||||
|  |  | ||||||
|  | 			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 { | ||||||
|  | 				compatible = "denx,uimage"; | ||||||
|  | 				label = "firmware"; | ||||||
|  | 				reg = <0x50000 0x9a0000>; | ||||||
|  | 			}; | ||||||
|  |  | ||||||
|  | 			partition@9f0000 { | ||||||
|  | 				label = "TM_1"; | ||||||
|  | 				reg = <0x9f0000 0x200000>; | ||||||
|  | 				read-only; | ||||||
|  | 			}; | ||||||
|  |  | ||||||
|  | 			partition@bf0000 { | ||||||
|  | 				label = "TM_2"; | ||||||
|  | 				reg = <0xbf0000 0x200000>; | ||||||
|  | 				read-only; | ||||||
|  | 			}; | ||||||
|  |  | ||||||
|  | 			partition@df0000 { | ||||||
|  | 				label = "manufacture"; | ||||||
|  | 				reg = <0xdf0000 0x180000>; | ||||||
|  | 				read-only; | ||||||
|  | 			}; | ||||||
|  |  | ||||||
|  | 			partition@f70000 { | ||||||
|  | 				label = "backup"; | ||||||
|  | 				reg = <0xf70000 0x10000>; | ||||||
|  | 				read-only; | ||||||
|  | 			}; | ||||||
|  |  | ||||||
|  | 			partition@f80000 { | ||||||
|  | 				label = "storage"; | ||||||
|  | 				reg = <0xf80000 0x80000>; | ||||||
|  | 				read-only; | ||||||
|  | 			}; | ||||||
|  | 		}; | ||||||
|  | 	}; | ||||||
|  | }; | ||||||
|  |  | ||||||
|  | &switch0 { | ||||||
|  | 	ports { | ||||||
|  | 		port@0 { | ||||||
|  | 			status = "okay"; | ||||||
|  | 			label = "wan"; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		port@1 { | ||||||
|  | 			status = "okay"; | ||||||
|  | 			label = "lan4"; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		port@2 { | ||||||
|  | 			status = "okay"; | ||||||
|  | 			label = "lan3"; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		port@3 { | ||||||
|  | 			status = "okay"; | ||||||
|  | 			label = "lan2"; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		port@4 { | ||||||
|  | 			status = "okay"; | ||||||
|  | 			label = "lan1"; | ||||||
|  | 		}; | ||||||
|  | 	}; | ||||||
|  | }; | ||||||
|  |  | ||||||
|  | &state_default { | ||||||
|  | 	gpio { | ||||||
|  | 		groups = "uart2", "uart3", "jtag", "wdt"; | ||||||
|  | 		function = "gpio"; | ||||||
|  | 	}; | ||||||
|  | }; | ||||||
|  |  | ||||||
|  | &pcie { | ||||||
|  | 	status = "okay"; | ||||||
|  | }; | ||||||
|  |  | ||||||
|  | &pcie0 { | ||||||
|  | 	wifi@0,0 { | ||||||
|  | 		compatible = "mediatek,mt76"; | ||||||
|  | 		reg = <0x0000 0 0 0 0>; | ||||||
|  | 		mediatek,mtd-eeprom = <&factory 0x0>; | ||||||
|  | 		ieee80211-freq-limit = <2400000 2500000>; | ||||||
|  | 	}; | ||||||
|  | }; | ||||||
|  |  | ||||||
|  | &pcie1 { | ||||||
|  | 	wifi@0,0 { | ||||||
|  | 		compatible = "mediatek,mt76"; | ||||||
|  | 		reg = <0x0000 0 0 0 0>; | ||||||
|  | 		mediatek,mtd-eeprom = <&factory 0x8000>; | ||||||
|  | 		ieee80211-freq-limit = <5000000 6000000>; | ||||||
|  | 	}; | ||||||
|  | }; | ||||||
|  |  | ||||||
|  | &xhci { | ||||||
|  | 	status = "disabled"; | ||||||
|  | }; | ||||||
| @@ -466,6 +466,20 @@ define Device/elecom_wrc-1900gst | |||||||
| endef | endef | ||||||
| TARGET_DEVICES += elecom_wrc-1900gst | TARGET_DEVICES += elecom_wrc-1900gst | ||||||
|  |  | ||||||
|  | define Device/elecom_wrc-2533ghbk-i | ||||||
|  |   $(Device/dsa-migration) | ||||||
|  |   $(Device/uimage-lzma-loader) | ||||||
|  |   DEVICE_VENDOR := ELECOM | ||||||
|  |   DEVICE_MODEL := WRC-2533GHBK-I | ||||||
|  |   IMAGE_SIZE := 9856k | ||||||
|  |   IMAGES += factory.bin | ||||||
|  |   IMAGE/factory.bin := $$(sysupgrade_bin) | check-size | \ | ||||||
|  | 	elx-header 0107002d 8844A2D168B45A2D | \ | ||||||
|  | 	elecom-product-header WRC-2533GHBK-I | ||||||
|  |   DEVICE_PACKAGES := kmod-mt7615e kmod-mt7615-firmware | ||||||
|  | endef | ||||||
|  | TARGET_DEVICES += elecom_wrc-2533ghbk-i | ||||||
|  |  | ||||||
| define Device/elecom_wrc-2533gst | define Device/elecom_wrc-2533gst | ||||||
|   $(Device/elecom_wrc-gs) |   $(Device/elecom_wrc-gs) | ||||||
|   IMAGE_SIZE := 11264k |   IMAGE_SIZE := 11264k | ||||||
|   | |||||||
| @@ -98,6 +98,11 @@ ramips_setup_macs() | |||||||
| 		lan_mac=$(mtd_get_mac_ascii u-boot-env ethaddr) | 		lan_mac=$(mtd_get_mac_ascii u-boot-env ethaddr) | ||||||
| 		wan_mac=$(mtd_get_mac_ascii u-boot-env wanaddr) | 		wan_mac=$(mtd_get_mac_ascii u-boot-env wanaddr) | ||||||
| 		;; | 		;; | ||||||
|  | 	elecom,wrc-2533ghbk-i) | ||||||
|  | 		lan_mac=$(mtd_get_mac_ascii u-boot-env ethaddr) | ||||||
|  | 		wan_mac=$(mtd_get_mac_ascii u-boot-env wanaddr) | ||||||
|  | 		label_mac=$wan_mac | ||||||
|  | 		;; | ||||||
| 	hiwifi,hc5962) | 	hiwifi,hc5962) | ||||||
| 		lan_mac=$(mtd_get_mac_ascii bdinfo "Vfac_mac ") | 		lan_mac=$(mtd_get_mac_ascii bdinfo "Vfac_mac ") | ||||||
| 		label_mac=$lan_mac | 		label_mac=$lan_mac | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user