[PATCH] arm64: dts: rockchip: Add FriendlyELEC NanoPC-T6 LTS
Heiko Stübner
heiko at sntech.de
Tue Aug 20 08:39:42 PDT 2024
Hi Marcin,
Am Dienstag, 20. August 2024, 16:42:08 CEST schrieb Marcin Juszkiewicz:
> From: Marcin Juszkiewicz <marcin.juszkiewicz at linaro.org>
>
> FriendlyELEC introduced new version of NanoPC-T6 SBC.
>
> MiniPCIe slot got removed and USB 2.0 configuration has changed.
> There are two external accessible ports and two ports on internal
> header.
>
> There is on-board USB hub which provides:
> - one external connector (bottom one)
> - two internal ports on pin header
> - m.2 E port
>
> Top USB 2.0 connector comes directly from SoC.
>
> Signed-off-by: Marcin Juszkiewicz <marcin.juszkiewicz at linaro.org>
> ---
> FriendlyELEC introduced new version of NanoPC-T6 SBC.
>
> MiniPCIe slot got removed and USB 2.0 configuration has changed. There
> are two external accessible ports and two ports on internal header.
>
> There is on-board USB hub which provides:
> - one external connector (bottom one)
> - two internal ports on pin header
> - m.2 E port
>
> Top USB 2.0 connector comes directly from SoC.
>
> I am not sure should it be separate source file or should it be
> integrated into rk3588-nanopc-t6.dts one. The differences are small:
>
> - no vdd_4g_3v3 regulator on LTS
> - no vcc5v0_host_20 regulator on non-LTS
> - LTS one has more complex USB 2.0 setup
>
> When I merge LTS differences into NanoPC-T6 dts file then my
> NanoPC-T6 LTS board boots fine. But I have no way to test on non-LTS
> one.
> ---
> arch/arm64/boot/dts/rockchip/Makefile | 1 +
> .../boot/dts/rockchip/rk3588-nanopc-t6-lts.dts | 60 ++++++++++++++++++++++
missing dt-binding addition (in a separate patch) to
Documentation/devicetree/bindings/arm/rockchip.yaml
Please group with the other nanopc-t6, look at the other FriendElec
entries for inspiration.
> 2 files changed, 61 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/rockchip/Makefile b/arch/arm64/boot/dts/rockchip/Makefile
> index fda1b980eb4b..0f982c741243 100644
> --- a/arch/arm64/boot/dts/rockchip/Makefile
> +++ b/arch/arm64/boot/dts/rockchip/Makefile
> @@ -128,6 +128,7 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-evb1-v10.dtb
> dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-friendlyelec-cm3588-nas.dtb
> dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-jaguar.dtb
> dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-nanopc-t6.dtb
> +dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-nanopc-t6-lts.dtb
> dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-ok3588-c.dtb
> dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-orangepi-5-plus.dtb
> dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-quartzpro64.dtb
> diff --git a/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6-lts.dts b/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6-lts.dts
> new file mode 100644
> index 000000000000..13f273cfe94f
> --- /dev/null
> +++ b/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6-lts.dts
> @@ -0,0 +1,60 @@
> +// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
> +/*
> + * Copyright (c) 2021 Rockchip Electronics Co., Ltd.
> + * Copyright (c) 2023 Thomas McKahan
> + * Copyright (c) 2024 Marcin Juszkiewicz
> + *
> + */
> +
> +/dts-v1/;
> +
> +#include "rk3588-nanopc-t6.dts"
> +
> +/ {
> + model = "FriendlyElec NanoPC-T6 LTS";
> + compatible = "friendlyarm,nanopc-t6-lts", "rockchip,rk3588";
> +
> + vcc5v0_host_20: vcc5v0-host-regulator {
most recent naming suggestion is would be regulator-foo.
Also please double check with the schematics what's the actual
name, your phandle doesn't match the regulator-name below.
> + compatible = "regulator-fixed";
> + enable-active-high;
> + gpio = <&gpio1 RK_PA4 GPIO_ACTIVE_HIGH>;
> + pinctrl-0 = <&usb20_host_pwren>;
> + pinctrl-names = "default";
> + regulator-always-on;
> + regulator-boot-on;
> + regulator-max-microvolt = <5000000>;
> + regulator-min-microvolt = <5000000>;
> + regulator-name = "vcc5v0_host";
> + vin-supply = <&vcc5v0_sys>;
> + };
> +};
Cheers
Heiko
More information about the Linux-rockchip
mailing list