ath79: Add support for OpenMesh MR600 v2
Device specifications: ====================== * Qualcomm/Atheros AR9344 rev 2 * 560/450/225 MHz (CPU/DDR/AHB) * 128 MB of RAM * 16 MB of SPI NOR flash - 2x 7 MB available; but one of the 7 MB regions is the recovery image * 2T2R 2.4 GHz Wi-Fi * 2T2R 5 GHz Wi-Fi * 8x GPIO-LEDs (6x wifi, 1x wps, 1x power) * 1x GPIO-button (reset) * external h/w watchdog (enabled by default)) * TTL pins are on board (arrow points to VCC, then follows: GND, TX, RX) * 1x ethernet - AR8035 ethernet PHY (RGMII) - 10/100/1000 Mbps Ethernet - 802.3af POE - used as LAN interface * 12-24V 1A DC * internal antennas Flashing instructions: ====================== Various methods can be used to install the actual image on the flash. Two easy ones are: ap51-flash ---------- The tool ap51-flash (https://github.com/ap51-flash/ap51-flash) should be used to transfer the image to the u-boot when the device boots up. initramfs from TFTP ------------------- The serial console must be used to access the u-boot shell during bootup. It can then be used to first boot up the initramfs image from a TFTP server (here with the IP 192.168.1.21): setenv serverip 192.168.1.21 setenv ipaddr 192.168.1.1 tftpboot 0c00000 <filename-of-initramfs-kernel>.bin && bootm $fileaddr The actual sysupgrade image can then be transferred (on the LAN port) to the device via scp <filename-of-squashfs-sysupgrade>.bin root@192.168.1.1:/tmp/ On the device, the sysupgrade must then be started using sysupgrade -n /tmp/<filename-of-squashfs-sysupgrade>.bin Signed-off-by: Sven Eckelmann <sven@narfation.org> [rebase, add LED migration] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
This commit is contained in:
		 Sven Eckelmann
					Sven Eckelmann
				
			
				
					committed by
					
						 Adrian Schmutzler
						Adrian Schmutzler
					
				
			
			
				
	
			
			
			 Adrian Schmutzler
						Adrian Schmutzler
					
				
			
						parent
						
							4b35999588
						
					
				
				
					commit
					d9a3af46d8
				
			| @@ -10,7 +10,7 @@ include $(TOPDIR)/rules.mk | ||||
| PKG_NAME:=uboot-envtools | ||||
| PKG_DISTNAME:=u-boot | ||||
| PKG_VERSION:=2020.04 | ||||
| PKG_RELEASE:=17 | ||||
| PKG_RELEASE:=18 | ||||
|  | ||||
| PKG_SOURCE:=$(PKG_DISTNAME)-$(PKG_VERSION).tar.bz2 | ||||
| PKG_SOURCE_URL:= \ | ||||
|   | ||||
| @@ -49,6 +49,7 @@ netgear,wnr612-v2|\ | ||||
| ocedo,koala|\ | ||||
| ocedo,raccoon|\ | ||||
| openmesh,mr600-v1|\ | ||||
| openmesh,mr600-v2|\ | ||||
| openmesh,om5p|\ | ||||
| openmesh,om5p-ac-v2|\ | ||||
| samsung,wam250|\ | ||||
|   | ||||
							
								
								
									
										71
									
								
								target/linux/ath79/dts/ar9344_openmesh_mr600-v2.dts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										71
									
								
								target/linux/ath79/dts/ar9344_openmesh_mr600-v2.dts
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,71 @@ | ||||
| // SPDX-License-Identifier: GPL-2.0-or-later OR MIT | ||||
|  | ||||
| #include "ar9344_openmesh_mr600.dtsi" | ||||
|  | ||||
| / { | ||||
| 	compatible = "openmesh,mr600-v2", "qca,ar9344"; | ||||
| 	model = "OpenMesh MR600 v2"; | ||||
|  | ||||
| 	aliases { | ||||
| 		led-boot = &led_power_blue; | ||||
| 		led-failsafe = &led_power_blue; | ||||
| 		led-running = &led_power_blue; | ||||
| 		led-upgrade = &led_power_blue; | ||||
| 	}; | ||||
|  | ||||
| 	leds { | ||||
| 		compatible = "gpio-leds"; | ||||
|  | ||||
| 		wifi5g_red { | ||||
| 			label = "red:wifi5g"; | ||||
| 			gpios = <&gpio 12 GPIO_ACTIVE_LOW>; | ||||
| 		}; | ||||
|  | ||||
| 		wps_blue { | ||||
| 			label = "blue:wps"; | ||||
| 			gpios = <&gpio 13 GPIO_ACTIVE_LOW>; | ||||
| 		}; | ||||
|  | ||||
| 		led_power_blue: power_blue { | ||||
| 			label = "blue:power"; | ||||
| 			gpios = <&gpio 14 GPIO_ACTIVE_LOW>; | ||||
| 			default-state = "on"; | ||||
| 		}; | ||||
|  | ||||
| 		wifi2g_green { | ||||
| 			label = "green:wifi2g"; | ||||
| 			gpios = <&gpio 18 GPIO_ACTIVE_LOW>; | ||||
| 			linux,default-trigger = "phy1tpt"; | ||||
| 		}; | ||||
|  | ||||
| 		wifi2g_yellow { | ||||
| 			label = "yellow:wifi2g"; | ||||
| 			gpios = <&gpio 19 GPIO_ACTIVE_LOW>; | ||||
| 		}; | ||||
|  | ||||
| 		wifi2g_red { | ||||
| 			label = "red:wifi2g"; | ||||
| 			gpios = <&gpio 20 GPIO_ACTIVE_LOW>; | ||||
| 		}; | ||||
|  | ||||
| 		wifi5g_green { | ||||
| 			label = "green:wifi5g"; | ||||
| 			gpios = <&gpio 21 GPIO_ACTIVE_LOW>; | ||||
| 			linux,default-trigger = "phy0tpt"; | ||||
| 		}; | ||||
|  | ||||
| 		wifi5g_yellow { | ||||
| 			label = "yellow:wifi5g"; | ||||
| 			gpios = <&gpio 22 GPIO_ACTIVE_LOW>; | ||||
| 		}; | ||||
| 	}; | ||||
|  | ||||
| 	watchdog { | ||||
| 		compatible = "linux,wdt-gpio"; | ||||
| 		gpios = <&gpio 15 GPIO_ACTIVE_LOW>; | ||||
| 		hw_algo = "toggle"; | ||||
| 		/* hw_margin_ms is actually 300s but driver limits it to 60s */ | ||||
| 		hw_margin_ms = <60000>; | ||||
| 		always-running; | ||||
| 	}; | ||||
| }; | ||||
| @@ -47,6 +47,7 @@ ath79_setup_interfaces() | ||||
| 	ocedo,koala|\ | ||||
| 	ocedo,raccoon|\ | ||||
| 	openmesh,mr600-v1|\ | ||||
| 	openmesh,mr600-v2|\ | ||||
| 	pcs,cap324|\ | ||||
| 	pisen,ts-d084|\ | ||||
| 	pisen,wmb001n|\ | ||||
|   | ||||
| @@ -120,7 +120,8 @@ case "$FIRMWARE" in | ||||
| 	ubnt,rocket-m) | ||||
| 		caldata_extract "art" 0x1000 0x1000 | ||||
| 		;; | ||||
| 	openmesh,mr600-v1) | ||||
| 	openmesh,mr600-v1|\ | ||||
| 	openmesh,mr600-v2) | ||||
| 		caldata_extract "ART" 0x5000 0x440 | ||||
| 		;; | ||||
| 	wd,mynet-n750) | ||||
|   | ||||
| @@ -20,6 +20,9 @@ glinet,gl-mifi) | ||||
| openmesh,mr600-v1) | ||||
| 	migrate_leds ":wlan58=:wifi5g" | ||||
| 	;; | ||||
| openmesh,mr600-v2) | ||||
| 	migrate_leds ":wlan24=:wifi2g" ":wlan58=:wifi5g" | ||||
| 	;; | ||||
| pcs,cap324) | ||||
| 	migrate_leds "lan:amber=amber:lan" "lan:green=green:lan" | ||||
| 	;; | ||||
|   | ||||
| @@ -51,6 +51,7 @@ platform_do_upgrade() { | ||||
| 		redboot_fis_do_upgrade "$1" linux | ||||
| 		;; | ||||
| 	openmesh,mr600-v1|\ | ||||
| 	openmesh,mr600-v2|\ | ||||
| 	openmesh,om2p-v2|\ | ||||
| 	openmesh,om2p-v4|\ | ||||
| 	openmesh,om2p-hs-v1|\ | ||||
|   | ||||
| @@ -1545,6 +1545,13 @@ define Device/openmesh_mr600-v1 | ||||
| endef | ||||
| TARGET_DEVICES += openmesh_mr600-v1 | ||||
|  | ||||
| define Device/openmesh_mr600-v2 | ||||
|   $(Device/openmesh_mr600-common) | ||||
|   DEVICE_VARIANT := v2 | ||||
|   SUPPORTED_DEVICES += mr600v2 | ||||
| endef | ||||
| TARGET_DEVICES += openmesh_mr600-v2 | ||||
|  | ||||
| define Device/openmesh_om2p-common | ||||
|   DEVICE_VENDOR := OpenMesh | ||||
|   DEVICE_PACKAGES := uboot-envtools | ||||
|   | ||||
		Reference in New Issue
	
	Block a user