rockchip: add NanoPi R4S support
Hardware
--------
RockChip RK3399 ARM64 (6 cores)
4GB LPDDR4 RAM
2x 1000 Base-T
3 LEDs (LAN / WAN / SYS)
1 Button (Reset)
Micro-SD slot
2x USB 3.0 Port
Installation
------------
Uncompress the OpenWrt sysupgrade and write it to a micro SD card using
dd.
=====================================
NOTICE FOR USERS WHO USE 1GB VERSION:
     BY NOW IT IS NOT SUPPORTED
====================================
[initialed target]
Co-developed-by: Marty Jones <mj8263788@gmail.com>
Signed-off-by: Marty Jones <mj8263788@gmail.com>
[fixed bootscript]
Co-developed-by: Jayantajit Gogoi <jayanta.gogoi525@gmail.com>
Signed-off-by: Jayantajit Gogoi <jayanta.gogoi525@gmail.com>
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
			
			
This commit is contained in:
		 Tianling Shen
					Tianling Shen
				
			
				
					committed by
					
						 David Bauer
						David Bauer
					
				
			
			
				
	
			
			
			 David Bauer
						David Bauer
					
				
			
						parent
						
							52dc7995f7
						
					
				
				
					commit
					b721579842
				
			| @@ -4,7 +4,7 @@ include $(TOPDIR)/rules.mk | |||||||
|  |  | ||||||
| BOARD:=rockchip | BOARD:=rockchip | ||||||
| BOARDNAME:=Rockchip | BOARDNAME:=Rockchip | ||||||
| FEATURES:=ext4 audio usb usbgadget display gpio fpu rootfs-part boot-part squashfs | FEATURES:=ext4 audio usb usbgadget display gpio fpu pci pcie rootfs-part boot-part squashfs | ||||||
| SUBTARGETS:=armv8 | SUBTARGETS:=armv8 | ||||||
|  |  | ||||||
| KERNEL_PATCHVER=5.4 | KERNEL_PATCHVER=5.4 | ||||||
|   | |||||||
| @@ -12,6 +12,10 @@ friendlyarm,nanopi-r2s) | |||||||
| 	ucidef_set_led_netdev "wan" "WAN" "$boardname:green:wan" "eth0" | 	ucidef_set_led_netdev "wan" "WAN" "$boardname:green:wan" "eth0" | ||||||
| 	ucidef_set_led_netdev "lan" "LAN" "$boardname:green:lan" "eth1" | 	ucidef_set_led_netdev "lan" "LAN" "$boardname:green:lan" "eth1" | ||||||
| 	;; | 	;; | ||||||
|  | friendlyarm,nanopi-r4s) | ||||||
|  | 	ucidef_set_led_netdev "wan" "WAN" "green:wan" "eth0" | ||||||
|  | 	ucidef_set_led_netdev "lan" "LAN" "green:lan" "eth1" | ||||||
|  | 	;; | ||||||
| esac | esac | ||||||
|  |  | ||||||
| board_config_flush | board_config_flush | ||||||
|   | |||||||
| @@ -7,7 +7,8 @@ rockchip_setup_interfaces() | |||||||
| 	local board="$1" | 	local board="$1" | ||||||
|  |  | ||||||
| 	case "$board" in | 	case "$board" in | ||||||
| 	friendlyarm,nanopi-r2s) | 	friendlyarm,nanopi-r2s|\ | ||||||
|  | 	friendlyarm,nanopi-r4s) | ||||||
| 		ucidef_set_interfaces_lan_wan 'eth1' 'eth0' | 		ucidef_set_interfaces_lan_wan 'eth1' 'eth0' | ||||||
| 		;; | 		;; | ||||||
| 	*) | 	*) | ||||||
| @@ -35,6 +36,10 @@ rockchip_setup_macs() | |||||||
| 		wan_mac=$(nanopi_r2s_generate_mac) | 		wan_mac=$(nanopi_r2s_generate_mac) | ||||||
| 		lan_mac=$(macaddr_add "$wan_mac" 1) | 		lan_mac=$(macaddr_add "$wan_mac" 1) | ||||||
| 		;; | 		;; | ||||||
|  | 	friendlyarm,nanopi-r4s) | ||||||
|  | 		wan_mac=$(get_mac_binary "/sys/bus/i2c/devices/2-0051/eeprom" 0xfa) | ||||||
|  | 		lan_mac=$(macaddr_setbit_la "$wan_mac") | ||||||
|  | 		;; | ||||||
| 	esac | 	esac | ||||||
|  |  | ||||||
| 	[ -n "$lan_mac" ] && ucidef_set_interface_macaddr "lan" $lan_mac | 	[ -n "$lan_mac" ] && ucidef_set_interface_macaddr "lan" $lan_mac | ||||||
|   | |||||||
| @@ -26,5 +26,9 @@ friendlyarm,nanopi-r2s) | |||||||
| 	set_interface_core 2 "eth0" | 	set_interface_core 2 "eth0" | ||||||
| 	set_interface_core 4 "eth1" "xhci-hcd:usb3" | 	set_interface_core 4 "eth1" "xhci-hcd:usb3" | ||||||
| 	;; | 	;; | ||||||
|  | friendlyarm,nanopi-r4s) | ||||||
|  | 	set_interface_core 10 "eth0" | ||||||
|  | 	set_interface_core 20 "eth1" | ||||||
|  | 	;; | ||||||
| esac | esac | ||||||
|  |  | ||||||
|   | |||||||
| @@ -197,6 +197,7 @@ CONFIG_DWMAC_DWC_QOS_ETH=y | |||||||
| CONFIG_DWMAC_GENERIC=y | CONFIG_DWMAC_GENERIC=y | ||||||
| CONFIG_DWMAC_ROCKCHIP=y | CONFIG_DWMAC_ROCKCHIP=y | ||||||
| CONFIG_EDAC_SUPPORT=y | CONFIG_EDAC_SUPPORT=y | ||||||
|  | CONFIG_EEPROM_AT24=y | ||||||
| CONFIG_EMAC_ROCKCHIP=y | CONFIG_EMAC_ROCKCHIP=y | ||||||
| CONFIG_ENABLE_MUST_CHECK=y | CONFIG_ENABLE_MUST_CHECK=y | ||||||
| CONFIG_ENERGY_MODEL=y | CONFIG_ENERGY_MODEL=y | ||||||
|   | |||||||
| @@ -182,6 +182,7 @@ CONFIG_DWMAC_DWC_QOS_ETH=y | |||||||
| CONFIG_DWMAC_GENERIC=y | CONFIG_DWMAC_GENERIC=y | ||||||
| CONFIG_DWMAC_ROCKCHIP=y | CONFIG_DWMAC_ROCKCHIP=y | ||||||
| CONFIG_EDAC_SUPPORT=y | CONFIG_EDAC_SUPPORT=y | ||||||
|  | CONFIG_EEPROM_AT24=y | ||||||
| CONFIG_EMAC_ROCKCHIP=y | CONFIG_EMAC_ROCKCHIP=y | ||||||
| CONFIG_ENABLE_MUST_CHECK=y | CONFIG_ENABLE_MUST_CHECK=y | ||||||
| CONFIG_ENERGY_MODEL=y | CONFIG_ENERGY_MODEL=y | ||||||
|   | |||||||
| @@ -12,6 +12,17 @@ define Device/friendlyarm_nanopi-r2s | |||||||
| endef | endef | ||||||
| TARGET_DEVICES += friendlyarm_nanopi-r2s | TARGET_DEVICES += friendlyarm_nanopi-r2s | ||||||
|  |  | ||||||
|  | define Device/friendlyarm_nanopi-r4s | ||||||
|  |   DEVICE_VENDOR := FriendlyARM | ||||||
|  |   DEVICE_MODEL := NanoPi R4S | ||||||
|  |   DEVICE_VARIANT := 4GB LPDDR4 | ||||||
|  |   SOC := rk3399 | ||||||
|  |   UBOOT_DEVICE_NAME := nanopi-r4s-rk3399 | ||||||
|  |   IMAGE/sysupgrade.img.gz := boot-common | boot-script nanopi-r4s | pine64-img | gzip | append-metadata | ||||||
|  |   DEVICE_PACKAGES := kmod-r8169 | ||||||
|  | endef | ||||||
|  | TARGET_DEVICES += friendlyarm_nanopi-r4s | ||||||
|  |  | ||||||
| define Device/pine64_rockpro64 | define Device/pine64_rockpro64 | ||||||
|   DEVICE_VENDOR := Pine64 |   DEVICE_VENDOR := Pine64 | ||||||
|   DEVICE_MODEL := RockPro64 |   DEVICE_MODEL := RockPro64 | ||||||
|   | |||||||
							
								
								
									
										8
									
								
								target/linux/rockchip/image/nanopi-r4s.bootscript
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								target/linux/rockchip/image/nanopi-r4s.bootscript
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,8 @@ | |||||||
|  | part uuid mmc ${devnum}:2 uuid | ||||||
|  |  | ||||||
|  | setenv bootargs "console=ttyS2,1500000 earlycon=uart8250,mmio32,0xff1a0000 root=PARTUUID=${uuid} rw rootwait" | ||||||
|  |  | ||||||
|  | load mmc ${devnum}:1 ${fdt_addr_r} rockchip.dtb | ||||||
|  | load mmc ${devnum}:1 ${kernel_addr_r} kernel.img | ||||||
|  |  | ||||||
|  | booti ${kernel_addr_r} - ${fdt_addr_r} | ||||||
| @@ -0,0 +1,177 @@ | |||||||
|  | From db792e9adbf85ffc9d6b0b060ac3c8e3148c8992 Mon Sep 17 00:00:00 2001 | ||||||
|  | From: Tianling Shen <cnsztl@gmail.com> | ||||||
|  | Date: Fri, 19 Mar 2021 13:16:27 +0800 | ||||||
|  | Subject: [PATCH] rockchip: rk3399: Add support for FriendlyARM NanoPi R4S | ||||||
|  |  | ||||||
|  | This adds support for the NanoPi R4S from FriendlyArm. | ||||||
|  |  | ||||||
|  | Rockchip RK3399 SoC | ||||||
|  | 1GB DDR3 or 4GB LPDDR4 RAM | ||||||
|  | Gigabit Ethernet (WAN) | ||||||
|  | Gigabit Ethernet (PCIe) (LAN) | ||||||
|  | USB 3.0 Port x 2 | ||||||
|  | MicroSD slot | ||||||
|  | Reset button | ||||||
|  | WAN - LAN - SYS LED | ||||||
|  |  | ||||||
|  | Co-developed-by: Jensen Huang <jensenhuang@friendlyarm.com> | ||||||
|  | Signed-off-by: Jensen Huang <jensenhuang@friendlyarm.com> | ||||||
|  | [minor adjustments] | ||||||
|  | Co-developed-by: Marty Jones <mj8263788@gmail.com> | ||||||
|  | Signed-off-by: Marty Jones <mj8263788@gmail.com> | ||||||
|  | [further adjustments, fixed format issues] | ||||||
|  | Signed-off-by: Tianling Shen <cnsztl@gmail.com> | ||||||
|  | Link: https://lore.kernel.org/r/20210319051627.814-2-cnsztl@gmail.com | ||||||
|  | Signed-off-by: Heiko Stuebner <heiko@sntech.de> | ||||||
|  | --- | ||||||
|  |  arch/arm64/boot/dts/rockchip/Makefile         |   1 + | ||||||
|  |  .../boot/dts/rockchip/rk3399-nanopi-r4s.dts   | 133 +++++++++++++++++++++ | ||||||
|  |  2 files changed, 134 insertions(+) | ||||||
|  |  create mode 100644 arch/arm64/boot/dts/rockchip/rk3399-nanopi-r4s.dts | ||||||
|  |  | ||||||
|  | --- a/arch/arm64/boot/dts/rockchip/Makefile | ||||||
|  | +++ b/arch/arm64/boot/dts/rockchip/Makefile | ||||||
|  | @@ -30,6 +30,7 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-le | ||||||
|  |  dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-nanopc-t4.dtb | ||||||
|  |  dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-nanopi-m4.dtb | ||||||
|  |  dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-nanopi-neo4.dtb | ||||||
|  | +dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-nanopi-r4s.dtb | ||||||
|  |  dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-orangepi.dtb | ||||||
|  |  dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-pinebook-pro.dtb | ||||||
|  |  dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-puma-haikou.dtb | ||||||
|  | --- /dev/null | ||||||
|  | +++ b/arch/arm64/boot/dts/rockchip/rk3399-nanopi-r4s.dts | ||||||
|  | @@ -0,0 +1,133 @@ | ||||||
|  | +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) | ||||||
|  | +/* | ||||||
|  | + * FriendlyElec NanoPC-T4 board device tree source | ||||||
|  | + * | ||||||
|  | + * Copyright (c) 2020 FriendlyElec Computer Tech. Co., Ltd. | ||||||
|  | + * (http://www.friendlyarm.com) | ||||||
|  | + * | ||||||
|  | + * Copyright (c) 2018 Collabora Ltd. | ||||||
|  | + * | ||||||
|  | + * Copyright (c) 2020 Jensen Huang <jensenhuang@friendlyarm.com> | ||||||
|  | + * Copyright (c) 2020 Marty Jones <mj8263788@gmail.com> | ||||||
|  | + * Copyright (c) 2021 Tianling Shen <cnsztl@gmail.com> | ||||||
|  | + */ | ||||||
|  | + | ||||||
|  | +/dts-v1/; | ||||||
|  | +#include "rk3399-nanopi4.dtsi" | ||||||
|  | + | ||||||
|  | +/ { | ||||||
|  | +	model = "FriendlyElec NanoPi R4S"; | ||||||
|  | +	compatible = "friendlyarm,nanopi-r4s", "rockchip,rk3399"; | ||||||
|  | + | ||||||
|  | +	/delete-node/ display-subsystem; | ||||||
|  | + | ||||||
|  | +	gpio-leds { | ||||||
|  | +		pinctrl-0 = <&lan_led_pin>, <&sys_led_pin>, <&wan_led_pin>; | ||||||
|  | + | ||||||
|  | +		/delete-node/ led-0; | ||||||
|  | + | ||||||
|  | +		lan_led: led-lan { | ||||||
|  | +			gpios = <&gpio1 RK_PA1 GPIO_ACTIVE_HIGH>; | ||||||
|  | +			label = "green:lan"; | ||||||
|  | +		}; | ||||||
|  | + | ||||||
|  | +		sys_led: led-sys { | ||||||
|  | +			gpios = <&gpio0 RK_PB5 GPIO_ACTIVE_HIGH>; | ||||||
|  | +			label = "red:sys"; | ||||||
|  | +			default-state = "on"; | ||||||
|  | +		}; | ||||||
|  | + | ||||||
|  | +		wan_led: led-wan { | ||||||
|  | +			gpios = <&gpio1 RK_PA0 GPIO_ACTIVE_HIGH>; | ||||||
|  | +			label = "green:wan"; | ||||||
|  | +		}; | ||||||
|  | +	}; | ||||||
|  | + | ||||||
|  | +	gpio-keys { | ||||||
|  | +		pinctrl-0 = <&reset_button_pin>; | ||||||
|  | + | ||||||
|  | +		/delete-node/ power; | ||||||
|  | + | ||||||
|  | +		reset { | ||||||
|  | +			debounce-interval = <50>; | ||||||
|  | +			gpios = <&gpio1 RK_PC6 GPIO_ACTIVE_LOW>; | ||||||
|  | +			label = "reset"; | ||||||
|  | +			linux,code = <KEY_RESTART>; | ||||||
|  | +		}; | ||||||
|  | +	}; | ||||||
|  | + | ||||||
|  | +	vdd_5v: vdd-5v { | ||||||
|  | +		compatible = "regulator-fixed"; | ||||||
|  | +		regulator-name = "vdd_5v"; | ||||||
|  | +		regulator-always-on; | ||||||
|  | +		regulator-boot-on; | ||||||
|  | +	}; | ||||||
|  | +}; | ||||||
|  | + | ||||||
|  | +&emmc_phy { | ||||||
|  | +	status = "disabled"; | ||||||
|  | +}; | ||||||
|  | + | ||||||
|  | +&i2c4 { | ||||||
|  | +	status = "disabled"; | ||||||
|  | +}; | ||||||
|  | + | ||||||
|  | +&pcie0 { | ||||||
|  | +	max-link-speed = <1>; | ||||||
|  | +	num-lanes = <1>; | ||||||
|  | +	vpcie3v3-supply = <&vcc3v3_sys>; | ||||||
|  | +}; | ||||||
|  | + | ||||||
|  | +&pinctrl { | ||||||
|  | +	gpio-leds { | ||||||
|  | +		/delete-node/ status-led-pin; | ||||||
|  | + | ||||||
|  | +		lan_led_pin: lan-led-pin { | ||||||
|  | +			rockchip,pins = <1 RK_PA1 RK_FUNC_GPIO &pcfg_pull_none>; | ||||||
|  | +		}; | ||||||
|  | + | ||||||
|  | +		sys_led_pin: sys-led-pin { | ||||||
|  | +			rockchip,pins = <0 RK_PB5 RK_FUNC_GPIO &pcfg_pull_none>; | ||||||
|  | +		}; | ||||||
|  | + | ||||||
|  | +		wan_led_pin: wan-led-pin { | ||||||
|  | +			rockchip,pins = <1 RK_PA0 RK_FUNC_GPIO &pcfg_pull_none>; | ||||||
|  | +		}; | ||||||
|  | +	}; | ||||||
|  | + | ||||||
|  | +	rockchip-key { | ||||||
|  | +		/delete-node/ power-key; | ||||||
|  | + | ||||||
|  | +		reset_button_pin: reset-button-pin { | ||||||
|  | +			rockchip,pins = <1 RK_PC6 RK_FUNC_GPIO &pcfg_pull_up>; | ||||||
|  | +		}; | ||||||
|  | +	}; | ||||||
|  | +}; | ||||||
|  | + | ||||||
|  | +&sdhci { | ||||||
|  | +	status = "disabled"; | ||||||
|  | +}; | ||||||
|  | + | ||||||
|  | +&sdio0 { | ||||||
|  | +	status = "disabled"; | ||||||
|  | +}; | ||||||
|  | + | ||||||
|  | +&u2phy0_host { | ||||||
|  | +	phy-supply = <&vdd_5v>; | ||||||
|  | +}; | ||||||
|  | + | ||||||
|  | +&u2phy1_host { | ||||||
|  | +	status = "disabled"; | ||||||
|  | +}; | ||||||
|  | + | ||||||
|  | +&uart0 { | ||||||
|  | +	status = "disabled"; | ||||||
|  | +}; | ||||||
|  | + | ||||||
|  | +&usbdrd_dwc3_0 { | ||||||
|  | +	dr_mode = "host"; | ||||||
|  | +}; | ||||||
|  | + | ||||||
|  | +&vcc3v3_sys { | ||||||
|  | +	vin-supply = <&vcc5v0_sys>; | ||||||
|  | +}; | ||||||
| @@ -0,0 +1,31 @@ | |||||||
|  | From af20b3384e8723077cc6484160b0cf4e9be321de Mon Sep 17 00:00:00 2001 | ||||||
|  | From: Tianling Shen <cnsztl@gmail.com> | ||||||
|  | Date: Mon, 7 Jun 2021 15:45:37 +0800 | ||||||
|  | Subject: [PATCH] arm64: dts: rockchip: add EEPROM node for NanoPi R4S | ||||||
|  |  | ||||||
|  | NanoPi R4S has a EEPROM attached to the 2nd I2C bus (U92), which | ||||||
|  | stores the MAC address. | ||||||
|  |  | ||||||
|  | Signed-off-by: Tianling Shen <cnsztl@gmail.com> | ||||||
|  | --- | ||||||
|  |  arch/arm64/boot/dts/rockchip/rk3399-nanopi-r4s.dts | 9 +++++++++ | ||||||
|  |  1 file changed, 9 insertions(+) | ||||||
|  |  | ||||||
|  | --- a/arch/arm64/boot/dts/rockchip/rk3399-nanopi-r4s.dts | ||||||
|  | +++ b/arch/arm64/boot/dts/rockchip/rk3399-nanopi-r4s.dts | ||||||
|  | @@ -68,6 +68,15 @@ | ||||||
|  |  	status = "disabled"; | ||||||
|  |  }; | ||||||
|  |   | ||||||
|  | +&i2c2 { | ||||||
|  | +	eeprom@51 { | ||||||
|  | +		compatible = "microchip,24c02", "atmel,24c02"; | ||||||
|  | +		reg = <0x51>; | ||||||
|  | +		pagesize = <16>; | ||||||
|  | +		read-only; /* This holds our MAC */ | ||||||
|  | +	}; | ||||||
|  | +}; | ||||||
|  | + | ||||||
|  |  &i2c4 { | ||||||
|  |  	status = "disabled"; | ||||||
|  |  }; | ||||||
| @@ -0,0 +1,177 @@ | |||||||
|  | From db792e9adbf85ffc9d6b0b060ac3c8e3148c8992 Mon Sep 17 00:00:00 2001 | ||||||
|  | From: Tianling Shen <cnsztl@gmail.com> | ||||||
|  | Date: Fri, 19 Mar 2021 13:16:27 +0800 | ||||||
|  | Subject: [PATCH] rockchip: rk3399: Add support for FriendlyARM NanoPi R4S | ||||||
|  |  | ||||||
|  | This adds support for the NanoPi R4S from FriendlyArm. | ||||||
|  |  | ||||||
|  | Rockchip RK3399 SoC | ||||||
|  | 1GB DDR3 or 4GB LPDDR4 RAM | ||||||
|  | Gigabit Ethernet (WAN) | ||||||
|  | Gigabit Ethernet (PCIe) (LAN) | ||||||
|  | USB 3.0 Port x 2 | ||||||
|  | MicroSD slot | ||||||
|  | Reset button | ||||||
|  | WAN - LAN - SYS LED | ||||||
|  |  | ||||||
|  | Co-developed-by: Jensen Huang <jensenhuang@friendlyarm.com> | ||||||
|  | Signed-off-by: Jensen Huang <jensenhuang@friendlyarm.com> | ||||||
|  | [minor adjustments] | ||||||
|  | Co-developed-by: Marty Jones <mj8263788@gmail.com> | ||||||
|  | Signed-off-by: Marty Jones <mj8263788@gmail.com> | ||||||
|  | [further adjustments, fixed format issues] | ||||||
|  | Signed-off-by: Tianling Shen <cnsztl@gmail.com> | ||||||
|  | Link: https://lore.kernel.org/r/20210319051627.814-2-cnsztl@gmail.com | ||||||
|  | Signed-off-by: Heiko Stuebner <heiko@sntech.de> | ||||||
|  | --- | ||||||
|  |  arch/arm64/boot/dts/rockchip/Makefile         |   1 + | ||||||
|  |  .../boot/dts/rockchip/rk3399-nanopi-r4s.dts   | 133 +++++++++++++++++++++ | ||||||
|  |  2 files changed, 134 insertions(+) | ||||||
|  |  create mode 100644 arch/arm64/boot/dts/rockchip/rk3399-nanopi-r4s.dts | ||||||
|  |  | ||||||
|  | --- a/arch/arm64/boot/dts/rockchip/Makefile | ||||||
|  | +++ b/arch/arm64/boot/dts/rockchip/Makefile | ||||||
|  | @@ -25,6 +25,7 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-le | ||||||
|  |  dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-nanopc-t4.dtb | ||||||
|  |  dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-nanopi-m4.dtb | ||||||
|  |  dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-nanopi-neo4.dtb | ||||||
|  | +dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-nanopi-r4s.dtb | ||||||
|  |  dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-orangepi.dtb | ||||||
|  |  dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-puma-haikou.dtb | ||||||
|  |  dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-roc-pc.dtb | ||||||
|  | --- /dev/null | ||||||
|  | +++ b/arch/arm64/boot/dts/rockchip/rk3399-nanopi-r4s.dts | ||||||
|  | @@ -0,0 +1,133 @@ | ||||||
|  | +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) | ||||||
|  | +/* | ||||||
|  | + * FriendlyElec NanoPC-T4 board device tree source | ||||||
|  | + * | ||||||
|  | + * Copyright (c) 2020 FriendlyElec Computer Tech. Co., Ltd. | ||||||
|  | + * (http://www.friendlyarm.com) | ||||||
|  | + * | ||||||
|  | + * Copyright (c) 2018 Collabora Ltd. | ||||||
|  | + * | ||||||
|  | + * Copyright (c) 2020 Jensen Huang <jensenhuang@friendlyarm.com> | ||||||
|  | + * Copyright (c) 2020 Marty Jones <mj8263788@gmail.com> | ||||||
|  | + * Copyright (c) 2021 Tianling Shen <cnsztl@gmail.com> | ||||||
|  | + */ | ||||||
|  | + | ||||||
|  | +/dts-v1/; | ||||||
|  | +#include "rk3399-nanopi4.dtsi" | ||||||
|  | + | ||||||
|  | +/ { | ||||||
|  | +	model = "FriendlyElec NanoPi R4S"; | ||||||
|  | +	compatible = "friendlyarm,nanopi-r4s", "rockchip,rk3399"; | ||||||
|  | + | ||||||
|  | +	/delete-node/ display-subsystem; | ||||||
|  | + | ||||||
|  | +	gpio-leds { | ||||||
|  | +		pinctrl-0 = <&lan_led_pin>, <&sys_led_pin>, <&wan_led_pin>; | ||||||
|  | + | ||||||
|  | +		/delete-node/ status; | ||||||
|  | + | ||||||
|  | +		lan_led: led-lan { | ||||||
|  | +			gpios = <&gpio1 RK_PA1 GPIO_ACTIVE_HIGH>; | ||||||
|  | +			label = "green:lan"; | ||||||
|  | +		}; | ||||||
|  | + | ||||||
|  | +		sys_led: led-sys { | ||||||
|  | +			gpios = <&gpio0 RK_PB5 GPIO_ACTIVE_HIGH>; | ||||||
|  | +			label = "red:sys"; | ||||||
|  | +			default-state = "on"; | ||||||
|  | +		}; | ||||||
|  | + | ||||||
|  | +		wan_led: led-wan { | ||||||
|  | +			gpios = <&gpio1 RK_PA0 GPIO_ACTIVE_HIGH>; | ||||||
|  | +			label = "green:wan"; | ||||||
|  | +		}; | ||||||
|  | +	}; | ||||||
|  | + | ||||||
|  | +	gpio-keys { | ||||||
|  | +		pinctrl-0 = <&reset_button_pin>; | ||||||
|  | + | ||||||
|  | +		/delete-node/ power; | ||||||
|  | + | ||||||
|  | +		reset { | ||||||
|  | +			debounce-interval = <50>; | ||||||
|  | +			gpios = <&gpio1 RK_PC6 GPIO_ACTIVE_LOW>; | ||||||
|  | +			label = "reset"; | ||||||
|  | +			linux,code = <KEY_RESTART>; | ||||||
|  | +		}; | ||||||
|  | +	}; | ||||||
|  | + | ||||||
|  | +	vdd_5v: vdd-5v { | ||||||
|  | +		compatible = "regulator-fixed"; | ||||||
|  | +		regulator-name = "vdd_5v"; | ||||||
|  | +		regulator-always-on; | ||||||
|  | +		regulator-boot-on; | ||||||
|  | +	}; | ||||||
|  | +}; | ||||||
|  | + | ||||||
|  | +&emmc_phy { | ||||||
|  | +	status = "disabled"; | ||||||
|  | +}; | ||||||
|  | + | ||||||
|  | +&i2c4 { | ||||||
|  | +	status = "disabled"; | ||||||
|  | +}; | ||||||
|  | + | ||||||
|  | +&pcie0 { | ||||||
|  | +	max-link-speed = <1>; | ||||||
|  | +	num-lanes = <1>; | ||||||
|  | +	vpcie3v3-supply = <&vcc3v3_sys>; | ||||||
|  | +}; | ||||||
|  | + | ||||||
|  | +&pinctrl { | ||||||
|  | +	gpio-leds { | ||||||
|  | +		/delete-node/ leds-gpio; | ||||||
|  | + | ||||||
|  | +		lan_led_pin: lan-led-pin { | ||||||
|  | +			rockchip,pins = <1 RK_PA1 RK_FUNC_GPIO &pcfg_pull_none>; | ||||||
|  | +		}; | ||||||
|  | + | ||||||
|  | +		sys_led_pin: sys-led-pin { | ||||||
|  | +			rockchip,pins = <0 RK_PB5 RK_FUNC_GPIO &pcfg_pull_none>; | ||||||
|  | +		}; | ||||||
|  | + | ||||||
|  | +		wan_led_pin: wan-led-pin { | ||||||
|  | +			rockchip,pins = <1 RK_PA0 RK_FUNC_GPIO &pcfg_pull_none>; | ||||||
|  | +		}; | ||||||
|  | +	}; | ||||||
|  | + | ||||||
|  | +	rockchip-key { | ||||||
|  | +		/delete-node/ power-key; | ||||||
|  | + | ||||||
|  | +		reset_button_pin: reset-button-pin { | ||||||
|  | +			rockchip,pins = <1 RK_PC6 RK_FUNC_GPIO &pcfg_pull_up>; | ||||||
|  | +		}; | ||||||
|  | +	}; | ||||||
|  | +}; | ||||||
|  | + | ||||||
|  | +&sdhci { | ||||||
|  | +	status = "disabled"; | ||||||
|  | +}; | ||||||
|  | + | ||||||
|  | +&sdio0 { | ||||||
|  | +	status = "disabled"; | ||||||
|  | +}; | ||||||
|  | + | ||||||
|  | +&u2phy0_host { | ||||||
|  | +	phy-supply = <&vdd_5v>; | ||||||
|  | +}; | ||||||
|  | + | ||||||
|  | +&u2phy1_host { | ||||||
|  | +	status = "disabled"; | ||||||
|  | +}; | ||||||
|  | + | ||||||
|  | +&uart0 { | ||||||
|  | +	status = "disabled"; | ||||||
|  | +}; | ||||||
|  | + | ||||||
|  | +&usbdrd_dwc3_0 { | ||||||
|  | +	dr_mode = "host"; | ||||||
|  | +}; | ||||||
|  | + | ||||||
|  | +&vcc3v3_sys { | ||||||
|  | +	vin-supply = <&vcc5v0_sys>; | ||||||
|  | +}; | ||||||
| @@ -0,0 +1,31 @@ | |||||||
|  | From af20b3384e8723077cc6484160b0cf4e9be321de Mon Sep 17 00:00:00 2001 | ||||||
|  | From: Tianling Shen <cnsztl@gmail.com> | ||||||
|  | Date: Mon, 7 Jun 2021 15:45:37 +0800 | ||||||
|  | Subject: [PATCH] arm64: dts: rockchip: add EEPROM node for NanoPi R4S | ||||||
|  |  | ||||||
|  | NanoPi R4S has a EEPROM attached to the 2nd I2C bus (U92), which | ||||||
|  | stores the MAC address. | ||||||
|  |  | ||||||
|  | Signed-off-by: Tianling Shen <cnsztl@gmail.com> | ||||||
|  | --- | ||||||
|  |  arch/arm64/boot/dts/rockchip/rk3399-nanopi-r4s.dts | 9 +++++++++ | ||||||
|  |  1 file changed, 9 insertions(+) | ||||||
|  |  | ||||||
|  | --- a/arch/arm64/boot/dts/rockchip/rk3399-nanopi-r4s.dts | ||||||
|  | +++ b/arch/arm64/boot/dts/rockchip/rk3399-nanopi-r4s.dts | ||||||
|  | @@ -68,6 +68,15 @@ | ||||||
|  |  	status = "disabled"; | ||||||
|  |  }; | ||||||
|  |   | ||||||
|  | +&i2c2 { | ||||||
|  | +	eeprom@51 { | ||||||
|  | +		compatible = "microchip,24c02", "atmel,24c02"; | ||||||
|  | +		reg = <0x51>; | ||||||
|  | +		pagesize = <16>; | ||||||
|  | +		read-only; /* This holds our MAC */ | ||||||
|  | +	}; | ||||||
|  | +}; | ||||||
|  | + | ||||||
|  |  &i2c4 { | ||||||
|  |  	status = "disabled"; | ||||||
|  |  }; | ||||||
		Reference in New Issue
	
	Block a user