rockchip: add NanoPi R2S support
Hardware -------- RockChip RK3328 ARM64 (4 cores) 1GB DDR4 RAM 2x 1000 Base-T 3 LEDs (LAN / WAN / SYS) 1 Button (Reset) Micro-SD slot USB 2.0 Port Installation ------------ Uncompress the OpenWrt sysupgrade and write it to a micro SD card using dd. MAC-address ----------- The vendor code supports reading a MAC address from an EEPROM connected via i2c0 of the SoC. The EEPROM (address 0x51) should contain the MAC address in binary at offset 0xfa. However, my two units didn't come with such an EEPROM soldered on. The EEPROM should be placed between the SoC and the GPIO pins on the board. (U10) Generating rendom MAC addresses works around this issue. Otherwise, all boards running the same image have identical MAC addresses. Signed-off-by: David Bauer <mail@david-bauer.net>
This commit is contained in:
		
							
								
								
									
										20
									
								
								target/linux/rockchip/armv8/base-files/etc/board.d/01_leds
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										20
									
								
								target/linux/rockchip/armv8/base-files/etc/board.d/01_leds
									
									
									
									
									
										Executable file
									
								
							| @@ -0,0 +1,20 @@ | ||||
| #!/bin/sh | ||||
|  | ||||
| . /lib/functions/leds.sh | ||||
| . /lib/functions/uci-defaults.sh | ||||
|  | ||||
| board=$(board_name) | ||||
| boardname="${board##*,}" | ||||
|  | ||||
| board_config_update | ||||
|  | ||||
| case $board in | ||||
| friendlyarm,nanopi-r2s) | ||||
| 	ucidef_set_led_netdev "wan" "WAN" "$boardname:green:wan" "eth0" | ||||
| 	ucidef_set_led_netdev "lan" "LAN" "$boardname:green:lan" "eth1" | ||||
| 	;; | ||||
| esac | ||||
|  | ||||
| board_config_flush | ||||
|  | ||||
| exit 0 | ||||
| @@ -1,15 +1,45 @@ | ||||
| #!/bin/sh | ||||
|  | ||||
| . /lib/functions/uci-defaults.sh | ||||
| . /lib/functions/system.sh | ||||
|  | ||||
| rockchip_setup_interfaces() | ||||
| { | ||||
| 	local board="$1" | ||||
|  | ||||
| 	case "$board" in | ||||
| 	friendlyarm,nanopi-r2s) | ||||
| 		ucidef_set_interfaces_lan_wan 'eth1' 'eth0' | ||||
| 		;; | ||||
| 	*) | ||||
| 		ucidef_set_interface_lan 'eth0' | ||||
| 		;; | ||||
| 	esac | ||||
| } | ||||
|  | ||||
| rockchip_setup_macs() | ||||
| { | ||||
| 	local board="$1" | ||||
| 	local lan_mac="" | ||||
| 	local wan_mac="" | ||||
| 	local label_mac="" | ||||
|  | ||||
| 	case "$board" in | ||||
| 	friendlyarm,nanopi-r2s) | ||||
| 		wan_mac=$(macaddr_random) | ||||
| 		lan_mac=$(macaddr_add "$wan_mac" +1) | ||||
| 		;; | ||||
| 	esac | ||||
|  | ||||
| 	[ -n "$lan_mac" ] && ucidef_set_interface_macaddr "lan" $lan_mac | ||||
| 	[ -n "$wan_mac" ] && ucidef_set_interface_macaddr "wan" $wan_mac | ||||
| 	[ -n "$label_mac" ] && ucidef_set_label_macaddr $label_mac | ||||
| } | ||||
|  | ||||
| board_config_update | ||||
|  | ||||
| case "$(board_name)" in | ||||
| *) | ||||
| 	ucidef_set_interface_lan 'eth0' | ||||
| 	;; | ||||
| esac | ||||
|  | ||||
| board=$(board_name) | ||||
| rockchip_setup_interfaces $board | ||||
| rockchip_setup_macs $board | ||||
| board_config_flush | ||||
|  | ||||
| exit 0 | ||||
|   | ||||
| @@ -375,6 +375,7 @@ CONFIG_REGMAP_MMIO=y | ||||
| CONFIG_REGULATOR=y | ||||
| CONFIG_REGULATOR_FAN53555=y | ||||
| CONFIG_REGULATOR_FIXED_VOLTAGE=y | ||||
| CONFIG_REGULATOR_GPIO=y | ||||
| CONFIG_REGULATOR_PWM=y | ||||
| CONFIG_REGULATOR_RK808=y | ||||
| CONFIG_RELOCATABLE=y | ||||
| @@ -482,6 +483,7 @@ CONFIG_UNINLINE_SPIN_UNLOCK=y | ||||
| CONFIG_USB=y | ||||
| CONFIG_USB_COMMON=y | ||||
| CONFIG_USB_DWC3=y | ||||
| CONFIG_USB_DWC3_DUAL_ROLE=y | ||||
| CONFIG_USB_DWC3_HOST=y | ||||
| CONFIG_USB_DWC3_OF_SIMPLE=y | ||||
| CONFIG_USB_EHCI_HCD=y | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 David Bauer
					David Bauer