gemini: Fix MAC address assignment for DIR-685
The DIR-685 has the MAC addresses in the RedBoot code just like
DNS-313. Check some magic numbers to determine that the MAC
address is where we want it and extract it from RedBoot.
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
[replaced ifconfig with ip, ! -z = -n, added string quotes]
(cherry picked from commit 86098ea87e)
			
			
This commit is contained in:
		 Linus Walleij
					Linus Walleij
				
			
				
					committed by
					
						 Jo-Philipp Wich
						Jo-Philipp Wich
					
				
			
			
				
	
			
			
			 Jo-Philipp Wich
						Jo-Philipp Wich
					
				
			
						parent
						
							b790e346b9
						
					
				
				
					commit
					0b1f62a277
				
			| @@ -23,6 +23,21 @@ set_ether_mac() { | ||||
| 			fi | ||||
| 		fi | ||||
| 		;; | ||||
| 	dlink,dir-685) | ||||
| 		# The DIR-685 has a special field in its RedBoot | ||||
| 		# binary that we need to check | ||||
| 		part=$(find_mtd_part RedBoot) | ||||
| 		if [ -n "$part" ] ; then | ||||
| 			DEVID="$(dd if=$part bs=1 skip=81516 count=7 2>/dev/null)" | ||||
| 			if [ "$DEVID" = "ILI9322" ] ; then | ||||
| 				MAC1=$(mtd_get_mac_binary RedBoot 95040) | ||||
| 				MAC2=$(mtd_get_mac_binary RedBoot 95046) | ||||
| 				ip link set eth0 address "$MAC1" 2>/dev/null | ||||
| 				ip link set eth1 address "$MAC2" 2>/dev/null | ||||
| 				return 0 | ||||
| 			fi | ||||
| 		fi | ||||
| 		;; | ||||
| 	esac | ||||
|  | ||||
| 	# Most devices have a standard "VCTL" partition | ||||
|   | ||||
		Reference in New Issue
	
	Block a user