Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions arch/arm64/boot/dts/rockchip/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -118,6 +118,7 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3528-radxa-e24c-spi.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3528-rock-2a.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3528-rock-2f.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3528-nanopi-rev01.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3528-nanopi-rev03.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3562-dictpen-test3-v20.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3562-evb1-lp4x-v10.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3562-evb1-lp4x-v10-linux.dtb
Expand Down
3 changes: 0 additions & 3 deletions arch/arm64/boot/dts/rockchip/rk3528-nanopi-common.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -623,10 +623,7 @@

&usbdrd_dwc3 {
dr_mode = "otg";
maximum-speed = "high-speed";
extcon = <&usb2phy>;
phys = <&u2phy_otg>;
phy-names = "usb2-phy";
snps,dis_u2_susphy_quirk;
snps,usb2-lpm-disable;
status = "okay";
Expand Down
12 changes: 8 additions & 4 deletions arch/arm64/boot/dts/rockchip/rk3528-nanopi-rev01.dts
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,6 @@
};

adc_keys: adc-keys {
status = "okay";
compatible = "adc-keys";
io-channels = <&saradc 0>;
io-channel-names = "buttons";
Expand All @@ -47,7 +46,6 @@
};

adc2_keys: adc2-keys {
status = "okay";
compatible = "adc-keys";
io-channels = <&saradc 1>;
io-channel-names = "buttons";
Expand All @@ -63,8 +61,8 @@
};

&mach {
hwrev = <1>;
model = "NanoPi Zero2";
hwrev = <1>;
model = "NanoPi Zero2";
};

&gmac1 {
Expand Down Expand Up @@ -161,3 +159,9 @@
};
};
};

&usbdrd_dwc3 {
maximum-speed = "high-speed";
phys = <&u2phy_otg>;
phy-names = "usb2-phy";
};
242 changes: 242 additions & 0 deletions arch/arm64/boot/dts/rockchip/rk3528-nanopi-rev03.dts
Original file line number Diff line number Diff line change
@@ -0,0 +1,242 @@
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
/*
* Copyright (c) 2026 FriendlyElec Computer Tech. Co., Ltd.
* (http://www.friendlyelec.com)
*/

/dts-v1/;

#include "rk3528-nanopi-common.dtsi"

/ {
model = "FriendlyElec NanoPi R28S";
compatible = "friendlyelec,nanopi-r28s", "rockchip,rk3528";

aliases {
ethernet0 = &gmac1;
ethernet1 = &r8111h;
};

leds: gpio-leds {
compatible = "gpio-leds";

sys_led: led-0 {
gpios = <&gpio4 RK_PB0 GPIO_ACTIVE_HIGH>;
label = "sys_led";
linux,default-trigger = "heartbeat";
pinctrl-names = "default";
pinctrl-0 = <&sys_led_pin>;
};

usr_led1: led-1 {
gpios = <&gpio4 RK_PB1 GPIO_ACTIVE_HIGH>;
label = "led1";
pinctrl-names = "default";
pinctrl-0 = <&usr_led1_pin>;
};

usr_led2: led-2 {
gpios = <&gpio4 RK_PB3 GPIO_ACTIVE_HIGH>;
label = "led2";
pinctrl-names = "default";
pinctrl-0 = <&usr_led2_pin>;
};
};

adc_keys: adc-keys {
compatible = "adc-keys";
io-channels = <&saradc 0>;
io-channel-names = "buttons";
keyup-threshold-microvolt = <1800000>;
poll-interval = <100>;

back-key {
label = "back";
linux,code = <KEY_BACK>;
press-threshold-microvolt = <1750>;
Comment thread
coderabbitai[bot] marked this conversation as resolved.
};
};

gpio_keys: gpio-keys {
compatible = "gpio-keys";
pinctrl-names = "default";
pinctrl-0 = <&key1_pin>;

button@1 {
debounce-interval = <50>;
gpios = <&gpio4 RK_PB2 GPIO_ACTIVE_LOW>;
label = "K1";
linux,code = <BTN_1>;
wakeup-source;
};
};

sdio_pwrseq: sdio-pwrseq {
compatible = "mmc-pwrseq-simple";
pinctrl-names = "default";
pinctrl-0 = <&wifi_enable_h>;

post-power-on-delay-ms = <50>;
reset-gpios = <&gpio1 RK_PC2 GPIO_ACTIVE_LOW>;
};
};

&mach {
hwrev = <3>;
model = "NanoPi R28S";
};

&gmac1 {
/* Use rgmii-rxid mode to disable rx delay inside Soc */
phy-mode = "rgmii-rxid";
clock_in_out = "output";

snps,reset-gpio = <&gpio4 RK_PC2 GPIO_ACTIVE_LOW>;
snps,reset-active-low;
/* Reset time is 20ms, 100ms for rtl8211f */
snps,reset-delays-us = <0 20000 100000>;

tx_delay = <0x30>;
/* rx_delay = <0x3f>; */

pinctrl-names = "default";
pinctrl-0 = <&rgmii_miim
&rgmii_tx_bus2
&rgmii_rx_bus2
&rgmii_rgmii_clk
&rgmii_rgmii_bus
&eth_pins>;

phy-handle = <&rgmii_phy>;
status = "okay";
};

&mdio1 {
rgmii_phy: phy@1 {
compatible = "ethernet-phy-ieee802.3-c22";
reg = <0x1>;
realtek,ledsel = <0xae00>;
};
};

&pcie2x1 {
pinctrl-names = "default";
pinctrl-0 = <&pciem1_pins>;
reset-gpios = <&gpio4 RK_PC0 GPIO_ACTIVE_HIGH>;
resets = <&cru SRST_RESETN_PCIE_POWER_UP>, <&cru SRST_PRESETN_PCIE>;
reset-names = "pcie", "periph";
rockchip,skip-scan-in-resume;
rockchip,skip-hw-retry;
status = "okay";

pcie@0,0 {
reg = <0x00000000 0 0 0 0>;
#address-cells = <3>;
#size-cells = <2>;

r8111h: pcie@0,0 {
reg = <0x000000 0 0 0 0>;
local-mac-address = [ 00 00 00 00 00 00 ];
};
};
};

&combphy_pu {
status = "okay";
};

&i2c1 {
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&i2c1m0_xfer>;

hym8563: hym8563@51 {
compatible = "haoyu,hym8563";
reg = <0x51>;
#clock-cells = <0>;
clock-frequency = <32768>;
clock-output-names = "hym8563";
pinctrl-names = "default";
pinctrl-0 = <&rtc_int>;

interrupt-parent = <&gpio4>;
interrupts = <RK_PC1 IRQ_TYPE_LEVEL_LOW>;
wakeup-source;
};
};

&pciem1_pins {
rockchip,pins =
/* pcie_reset_gpio */
<4 RK_PC0 RK_FUNC_GPIO &pcfg_pull_none>;
};

&pinctrl {
leds {
sys_led_pin: sys-led-pin {
rockchip,pins = <4 RK_PB0 RK_FUNC_GPIO &pcfg_pull_none>;
};

usr_led1_pin: usr-led1-pin {
rockchip,pins = <4 RK_PB1 RK_FUNC_GPIO &pcfg_pull_none>;
};

usr_led2_pin: usr-led2-pin {
rockchip,pins = <4 RK_PB3 RK_FUNC_GPIO &pcfg_pull_none>;
};
};

hym8563 {
rtc_int: rtc-int {
rockchip,pins = <4 RK_PC1 RK_FUNC_GPIO &pcfg_pull_none>;
};
};

gpio-key {
key1_pin: key1-pin {
rockchip,pins = <4 RK_PB2 RK_FUNC_GPIO &pcfg_pull_up>;
};
};

sdio-pwrseq {
wifi_enable_h: wifi-enable-h {
rockchip,pins = <1 RK_PC2 RK_FUNC_GPIO &pcfg_pull_none>;
};
};
};

&sdio0 {
max-frequency = <150000000>;
no-sd;
no-mmc;
supports-sdio;
bus-width = <4>;
disable-wp;
cap-sd-highspeed;
cap-sdio-irq;
keep-power-in-suspend;
non-removable;
mmc-pwrseq = <&sdio_pwrseq>;
pinctrl-names = "default";
pinctrl-0 = <&sdio0_bus4 &sdio0_cmd &sdio0_clk>;
sd-uhs-sdr104;
vqmmc-supply = <&vdd_1v8_s3>;
status = "okay";
};

&uart2 {
pinctrl-names = "default";
pinctrl-0 = <&uart2m1_xfer &uart2m1_ctsn &uart2m1_rtsn>;
status = "okay";

bluetooth {
compatible = "cvte,aic8800-bt";
device-wake-gpios = <&gpio1 RK_PB4 GPIO_ACTIVE_HIGH>;
};
};

&usbdrd_dwc3 {
maximum-speed = "high-speed";
phys = <&u2phy_otg>;
phy-names = "usb2-phy";
};
Loading