Re: [PATCH v4 1/1] arm64: dts: rockchip: rk3568: Add Radxa ROCK 3 Model A board support
On Thu, Feb 23, 2023 at 7:40 AM Akash wrote: > > HI Vasily, Hi Akash, > I just tried now adding emmc module and able to access it. Thanks for testing! It looks like sdhci driver decides to clock your eMMC at 52MHz which works, while for my eMMC it choses 26MHz. Unfortunately, clk_rk3568 driver supports only certain clock rates, and fails with e.g. 25MHz, 26MHz. SDHCI driver doesn't check for errors and fails silently, I'll send a fix later today. > Also Added CMD_REGULATOR support and tried command as you suggested. > > Pasting logs at https://paste.ubuntu.com/p/Cx6x3CNj9w/ Yeah, you can see that regulator status is incorrect. Currently, rk_i2c driver is non-functional on rk3568 in u-boot master. It's caused by missing pinctrl driver (it's already merged into rockchip custodian tree) Regards, Vasily > Let me know if I am missing anything here. > > > Thanks, > Akash > > On 23-02-2023 06:01, Vasily Khoruzhick wrote: > > On Tue, Feb 14, 2023 at 12:11 PM Akash Gajjar > > wrote: > > > > Hi Akash, > > > >> Add Radxa ROCK 3 Model A support. sync rk3568-rock-3a.dts from Linux > >> 6.2.0-rc7 > >> > >> Board Specifications > >> - Rockchip RK3568 > >> - 2/4/8GB LPDDR4 3200MT/s > >> - eMMC socket, SD card slot > > Have you actually tested eMMC support? It seems to be broken when the > > system boots off SD card, "mmc info" returns "unable to select a mode > > : -70". I have a strong suspicion that it's due to rk_i2c being broken > > for rk3568, with debug enabled it complains "I2C Send Start Bit > > Timeout" on every i2c transaction. > > > > Could you please share "mmc info" and "regulator status -a" output > > from your build? > > > > Regards, > > Vasily > > > >> - GbE LAN, > >> - PCIe 3.0/2.0 > >> - M.2 Connector > >> - 3.5mm Audio jack with mic > >> - HDMI 2.0, MIPI DSI/CSI > >> - USB 3.0 Host/OTG, USB 2.0 Host > >> - 40-pin GPIO expansion ports > >> - USB Type C PD 2.0, 9V/2A, 12V/2A, 15V/2A, 20V/2A > >> > >> Refer Linux commit <22a442e6586c> > >> ("arm64: dts: rockchip: add basic dts for the radxa rock3 model a") > >> > >> Signed-off-by: Akash Gajjar > >> --- > >> Changes in v2: > >> - Ammend the commit message, Replace Rock Pi 3a with ROCK3A Model A. > >> Update the > >>specs from https://wiki.radxa.com/Rock3/3a > >> - Sync missing node in dts, still some of the nodes like vop, vop mmu, > >> i2s2_2ch > >>gpu, hdmi removed as there is no driver support present in u-boot. > >> - Duplicated sdmmc node removed from dts. > >> Changes in v3: > >> - Replace rock-pi-3a-rk3568_defconfig with rock-3a-rk3568_defconfig > >> Changes in v4: > >> - Add maintainer for the board > >> --- > >> arch/arm/dts/Makefile | 3 +- > >> arch/arm/dts/rk3568-rock-3a-u-boot.dtsi | 24 + > >> arch/arm/dts/rk3568-rock-3a.dts | 609 > >> board/rockchip/evb_rk3568/MAINTAINERS | 7 + > >> configs/rock-3a-rk3568_defconfig| 74 +++ > >> 5 files changed, 716 insertions(+), 1 deletion(-) > >> create mode 100644 arch/arm/dts/rk3568-rock-3a-u-boot.dtsi > >> create mode 100644 arch/arm/dts/rk3568-rock-3a.dts > >> create mode 100644 configs/rock-3a-rk3568_defconfig > >> > >> diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile > >> index 9d647b9639..945843bebc 100644 > >> --- a/arch/arm/dts/Makefile > >> +++ b/arch/arm/dts/Makefile > >> @@ -165,7 +165,8 @@ dtb-$(CONFIG_ROCKCHIP_RK3399) += \ > >> rk3399pro-rock-pi-n10.dtb > >> > >> dtb-$(CONFIG_ROCKCHIP_RK3568) += \ > >> - rk3568-evb.dtb > >> + rk3568-evb.dtb \ > >> + rk3568-rock-3a.dtb > >> > >> dtb-$(CONFIG_ROCKCHIP_RV1108) += \ > >> rv1108-elgin-r1.dtb \ > >> diff --git a/arch/arm/dts/rk3568-rock-3a-u-boot.dtsi > >> b/arch/arm/dts/rk3568-rock-3a-u-boot.dtsi > >> new file mode 100644 > >> index 00..ae23ae8587 > >> --- /dev/null > >> +++ b/arch/arm/dts/rk3568-rock-3a-u-boot.dtsi > >> @@ -0,0 +1,24 @@ > >> +// SPDX-License-Identifier: GPL-2.0+ > >> +/* > >> + * (C) Copyright 2021 Rockchip Electronics Co., Ltd > >> + * (C) Copyright 2023 Akash Gajjar > >> + */ > >> + > >> +#include "rk356x-u-boot.dtsi" > >> + > >> +/ { > >> + chosen { > >> + stdout-path = &uart2; > >> + u-boot,spl-boot-order = "same-as-spl", &sdmmc0; > >> + }; > >> +}; > >> + > >> +&sdmmc0 { > >> + status = "okay"; > >> +}; > >> + > >> +&uart2 { > >> + clock-frequency = <2400>; > >> + u-boot,dm-spl; > >> + status = "okay"; > >> +}; > >> diff --git a/arch/arm/dts/rk3568-rock-3a.dts > >> b/arch/arm/dts/rk3568-rock-3a.dts > >> new file mode 100644 > >> index 00..a2f2baa4ea > >> --- /dev/null > >> +++ b/arch/arm/dts/rk3568-rock-3a.dts > >> @@ -0,0 +1,609 @@ > >> +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) > >> +/* > >> + * Copyright (c) 2021 Rockchip Electronics Co., Ltd. > >> + * Copyright (c) 2023 Akash Gajjar > >> + */ > >> + > >> +/dts-v1/; > >> +#include > >> +#include > >> +#include "rk3568.dtsi" > >>
Re: [PATCH v4 1/1] arm64: dts: rockchip: rk3568: Add Radxa ROCK 3 Model A board support
HI Vasily, I just tried now adding emmc module and able to access it. Also Added CMD_REGULATOR support and tried command as you suggested. Pasting logs at https://paste.ubuntu.com/p/Cx6x3CNj9w/ Let me know if I am missing anything here. Thanks, Akash On 23-02-2023 06:01, Vasily Khoruzhick wrote: On Tue, Feb 14, 2023 at 12:11 PM Akash Gajjar wrote: Hi Akash, Add Radxa ROCK 3 Model A support. sync rk3568-rock-3a.dts from Linux 6.2.0-rc7 Board Specifications - Rockchip RK3568 - 2/4/8GB LPDDR4 3200MT/s - eMMC socket, SD card slot Have you actually tested eMMC support? It seems to be broken when the system boots off SD card, "mmc info" returns "unable to select a mode : -70". I have a strong suspicion that it's due to rk_i2c being broken for rk3568, with debug enabled it complains "I2C Send Start Bit Timeout" on every i2c transaction. Could you please share "mmc info" and "regulator status -a" output from your build? Regards, Vasily - GbE LAN, - PCIe 3.0/2.0 - M.2 Connector - 3.5mm Audio jack with mic - HDMI 2.0, MIPI DSI/CSI - USB 3.0 Host/OTG, USB 2.0 Host - 40-pin GPIO expansion ports - USB Type C PD 2.0, 9V/2A, 12V/2A, 15V/2A, 20V/2A Refer Linux commit <22a442e6586c> ("arm64: dts: rockchip: add basic dts for the radxa rock3 model a") Signed-off-by: Akash Gajjar --- Changes in v2: - Ammend the commit message, Replace Rock Pi 3a with ROCK3A Model A. Update the specs from https://wiki.radxa.com/Rock3/3a - Sync missing node in dts, still some of the nodes like vop, vop mmu, i2s2_2ch gpu, hdmi removed as there is no driver support present in u-boot. - Duplicated sdmmc node removed from dts. Changes in v3: - Replace rock-pi-3a-rk3568_defconfig with rock-3a-rk3568_defconfig Changes in v4: - Add maintainer for the board --- arch/arm/dts/Makefile | 3 +- arch/arm/dts/rk3568-rock-3a-u-boot.dtsi | 24 + arch/arm/dts/rk3568-rock-3a.dts | 609 board/rockchip/evb_rk3568/MAINTAINERS | 7 + configs/rock-3a-rk3568_defconfig| 74 +++ 5 files changed, 716 insertions(+), 1 deletion(-) create mode 100644 arch/arm/dts/rk3568-rock-3a-u-boot.dtsi create mode 100644 arch/arm/dts/rk3568-rock-3a.dts create mode 100644 configs/rock-3a-rk3568_defconfig diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile index 9d647b9639..945843bebc 100644 --- a/arch/arm/dts/Makefile +++ b/arch/arm/dts/Makefile @@ -165,7 +165,8 @@ dtb-$(CONFIG_ROCKCHIP_RK3399) += \ rk3399pro-rock-pi-n10.dtb dtb-$(CONFIG_ROCKCHIP_RK3568) += \ - rk3568-evb.dtb + rk3568-evb.dtb \ + rk3568-rock-3a.dtb dtb-$(CONFIG_ROCKCHIP_RV1108) += \ rv1108-elgin-r1.dtb \ diff --git a/arch/arm/dts/rk3568-rock-3a-u-boot.dtsi b/arch/arm/dts/rk3568-rock-3a-u-boot.dtsi new file mode 100644 index 00..ae23ae8587 --- /dev/null +++ b/arch/arm/dts/rk3568-rock-3a-u-boot.dtsi @@ -0,0 +1,24 @@ +// SPDX-License-Identifier: GPL-2.0+ +/* + * (C) Copyright 2021 Rockchip Electronics Co., Ltd + * (C) Copyright 2023 Akash Gajjar + */ + +#include "rk356x-u-boot.dtsi" + +/ { + chosen { + stdout-path = &uart2; + u-boot,spl-boot-order = "same-as-spl", &sdmmc0; + }; +}; + +&sdmmc0 { + status = "okay"; +}; + +&uart2 { + clock-frequency = <2400>; + u-boot,dm-spl; + status = "okay"; +}; diff --git a/arch/arm/dts/rk3568-rock-3a.dts b/arch/arm/dts/rk3568-rock-3a.dts new file mode 100644 index 00..a2f2baa4ea --- /dev/null +++ b/arch/arm/dts/rk3568-rock-3a.dts @@ -0,0 +1,609 @@ +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) +/* + * Copyright (c) 2021 Rockchip Electronics Co., Ltd. + * Copyright (c) 2023 Akash Gajjar + */ + +/dts-v1/; +#include +#include +#include "rk3568.dtsi" + +/ { + model = "Radxa ROCK3 Model A"; + compatible = "radxa,rock3a", "rockchip,rk3568"; + + chosen: chosen { + stdout-path = "serial2:150n8"; + }; + + gmac1_clkin: external-gmac1-clock { + compatible = "fixed-clock"; + clock-frequency = <12500>; + clock-output-names = "gmac1_clkin"; + #clock-cells = <0>; + }; + + vcc12v_dcin: vcc12v-dcin-regulator { + compatible = "regulator-fixed"; + regulator-name = "vcc12v_dcin"; + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt = <1200>; + regulator-max-microvolt = <1200>; + }; + + vcc3v3_sys: vcc3v3-sys-regulator { + compatible = "regulator-fixed"; + regulator-name = "vcc3v3_sys"; + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt = <330>; + regulator-max-microvolt = <330>; + vin-supply = <&vcc12v_dcin>; + }; + + vcc5v0_sys: vcc5v0-sys-regulator { + compatible = "regulator-fi
Re: [PATCH v4 1/1] arm64: dts: rockchip: rk3568: Add Radxa ROCK 3 Model A board support
On Tue, Feb 14, 2023 at 12:11 PM Akash Gajjar wrote: Hi Akash, > Add Radxa ROCK 3 Model A support. sync rk3568-rock-3a.dts from Linux 6.2.0-rc7 > > Board Specifications > - Rockchip RK3568 > - 2/4/8GB LPDDR4 3200MT/s > - eMMC socket, SD card slot Have you actually tested eMMC support? It seems to be broken when the system boots off SD card, "mmc info" returns "unable to select a mode : -70". I have a strong suspicion that it's due to rk_i2c being broken for rk3568, with debug enabled it complains "I2C Send Start Bit Timeout" on every i2c transaction. Could you please share "mmc info" and "regulator status -a" output from your build? Regards, Vasily > - GbE LAN, > - PCIe 3.0/2.0 > - M.2 Connector > - 3.5mm Audio jack with mic > - HDMI 2.0, MIPI DSI/CSI > - USB 3.0 Host/OTG, USB 2.0 Host > - 40-pin GPIO expansion ports > - USB Type C PD 2.0, 9V/2A, 12V/2A, 15V/2A, 20V/2A > > Refer Linux commit <22a442e6586c> > ("arm64: dts: rockchip: add basic dts for the radxa rock3 model a") > > Signed-off-by: Akash Gajjar > --- > Changes in v2: > - Ammend the commit message, Replace Rock Pi 3a with ROCK3A Model A. Update > the > specs from https://wiki.radxa.com/Rock3/3a > - Sync missing node in dts, still some of the nodes like vop, vop mmu, > i2s2_2ch > gpu, hdmi removed as there is no driver support present in u-boot. > - Duplicated sdmmc node removed from dts. > Changes in v3: > - Replace rock-pi-3a-rk3568_defconfig with rock-3a-rk3568_defconfig > Changes in v4: > - Add maintainer for the board > --- > arch/arm/dts/Makefile | 3 +- > arch/arm/dts/rk3568-rock-3a-u-boot.dtsi | 24 + > arch/arm/dts/rk3568-rock-3a.dts | 609 > board/rockchip/evb_rk3568/MAINTAINERS | 7 + > configs/rock-3a-rk3568_defconfig| 74 +++ > 5 files changed, 716 insertions(+), 1 deletion(-) > create mode 100644 arch/arm/dts/rk3568-rock-3a-u-boot.dtsi > create mode 100644 arch/arm/dts/rk3568-rock-3a.dts > create mode 100644 configs/rock-3a-rk3568_defconfig > > diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile > index 9d647b9639..945843bebc 100644 > --- a/arch/arm/dts/Makefile > +++ b/arch/arm/dts/Makefile > @@ -165,7 +165,8 @@ dtb-$(CONFIG_ROCKCHIP_RK3399) += \ > rk3399pro-rock-pi-n10.dtb > > dtb-$(CONFIG_ROCKCHIP_RK3568) += \ > - rk3568-evb.dtb > + rk3568-evb.dtb \ > + rk3568-rock-3a.dtb > > dtb-$(CONFIG_ROCKCHIP_RV1108) += \ > rv1108-elgin-r1.dtb \ > diff --git a/arch/arm/dts/rk3568-rock-3a-u-boot.dtsi > b/arch/arm/dts/rk3568-rock-3a-u-boot.dtsi > new file mode 100644 > index 00..ae23ae8587 > --- /dev/null > +++ b/arch/arm/dts/rk3568-rock-3a-u-boot.dtsi > @@ -0,0 +1,24 @@ > +// SPDX-License-Identifier: GPL-2.0+ > +/* > + * (C) Copyright 2021 Rockchip Electronics Co., Ltd > + * (C) Copyright 2023 Akash Gajjar > + */ > + > +#include "rk356x-u-boot.dtsi" > + > +/ { > + chosen { > + stdout-path = &uart2; > + u-boot,spl-boot-order = "same-as-spl", &sdmmc0; > + }; > +}; > + > +&sdmmc0 { > + status = "okay"; > +}; > + > +&uart2 { > + clock-frequency = <2400>; > + u-boot,dm-spl; > + status = "okay"; > +}; > diff --git a/arch/arm/dts/rk3568-rock-3a.dts b/arch/arm/dts/rk3568-rock-3a.dts > new file mode 100644 > index 00..a2f2baa4ea > --- /dev/null > +++ b/arch/arm/dts/rk3568-rock-3a.dts > @@ -0,0 +1,609 @@ > +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) > +/* > + * Copyright (c) 2021 Rockchip Electronics Co., Ltd. > + * Copyright (c) 2023 Akash Gajjar > + */ > + > +/dts-v1/; > +#include > +#include > +#include "rk3568.dtsi" > + > +/ { > + model = "Radxa ROCK3 Model A"; > + compatible = "radxa,rock3a", "rockchip,rk3568"; > + > + chosen: chosen { > + stdout-path = "serial2:150n8"; > + }; > + > + gmac1_clkin: external-gmac1-clock { > + compatible = "fixed-clock"; > + clock-frequency = <12500>; > + clock-output-names = "gmac1_clkin"; > + #clock-cells = <0>; > + }; > + > + vcc12v_dcin: vcc12v-dcin-regulator { > + compatible = "regulator-fixed"; > + regulator-name = "vcc12v_dcin"; > + regulator-always-on; > + regulator-boot-on; > + regulator-min-microvolt = <1200>; > + regulator-max-microvolt = <1200>; > + }; > + > + vcc3v3_sys: vcc3v3-sys-regulator { > + compatible = "regulator-fixed"; > + regulator-name = "vcc3v3_sys"; > + regulator-always-on; > + regulator-boot-on; > + regulator-min-microvolt = <330>; > + regulator-max-microvolt = <330>; > + vin-supply = <&vcc12v_dcin>; > + }; > + > + vcc5v0_sys: vcc5v0-sys-regulator { > + compatible = "regulator-fixed"; > + regulator-name = "vcc5
Re: [PATCH v4 1/1] arm64: dts: rockchip: rk3568: Add Radxa ROCK 3 Model A board support
On 2023/2/14 23:18, Akash Gajjar wrote: Add Radxa ROCK 3 Model A support. sync rk3568-rock-3a.dts from Linux 6.2.0-rc7 Board Specifications - Rockchip RK3568 - 2/4/8GB LPDDR4 3200MT/s - eMMC socket, SD card slot - GbE LAN - PCIe 3.0/2.0 - M.2 Connector - 3.5mm Audio jack with mic - HDMI 2.0, MIPI DSI/CSI - USB 3.0 Host/OTG, USB 2.0 Host - 40-pin GPIO expansion ports - USB Type C PD 2.0, 9V/2A, 12V/2A, 15V/2A, 20V/2A Refer Linux commit <22a442e6586c> ("arm64: dts: rockchip: add basic dts for the radxa rock3 model a") Signed-off-by: Akash Gajjar Reviewed-by: Kever Yang Thanks, - Kever --- Changes in v2: - Ammend the commit message, Replace Rock Pi 3a with ROCK3A Model A. Update the specs from https://wiki.radxa.com/Rock3/3a - Sync missing node in dts, still some of the nodes like vop, vop mmu, i2s2_2ch gpu, hdmi removed as there is no driver support present in u-boot. - Duplicated sdmmc node removed from dts. Changes in v3: - Replace rock-pi-3a-rk3568_defconfig with rock-3a-rk3568_defconfig Changes in v4: - Add maintainer for the board --- arch/arm/dts/Makefile | 3 +- arch/arm/dts/rk3568-rock-3a-u-boot.dtsi | 24 + arch/arm/dts/rk3568-rock-3a.dts | 609 board/rockchip/evb_rk3568/MAINTAINERS | 7 + configs/rock-3a-rk3568_defconfig| 74 +++ 5 files changed, 716 insertions(+), 1 deletion(-) create mode 100644 arch/arm/dts/rk3568-rock-3a-u-boot.dtsi create mode 100644 arch/arm/dts/rk3568-rock-3a.dts create mode 100644 configs/rock-3a-rk3568_defconfig diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile index 9d647b9639..945843bebc 100644 --- a/arch/arm/dts/Makefile +++ b/arch/arm/dts/Makefile @@ -165,7 +165,8 @@ dtb-$(CONFIG_ROCKCHIP_RK3399) += \ rk3399pro-rock-pi-n10.dtb dtb-$(CONFIG_ROCKCHIP_RK3568) += \ - rk3568-evb.dtb + rk3568-evb.dtb \ + rk3568-rock-3a.dtb dtb-$(CONFIG_ROCKCHIP_RV1108) += \ rv1108-elgin-r1.dtb \ diff --git a/arch/arm/dts/rk3568-rock-3a-u-boot.dtsi b/arch/arm/dts/rk3568-rock-3a-u-boot.dtsi new file mode 100644 index 00..ae23ae8587 --- /dev/null +++ b/arch/arm/dts/rk3568-rock-3a-u-boot.dtsi @@ -0,0 +1,24 @@ +// SPDX-License-Identifier: GPL-2.0+ +/* + * (C) Copyright 2021 Rockchip Electronics Co., Ltd + * (C) Copyright 2023 Akash Gajjar + */ + +#include "rk356x-u-boot.dtsi" + +/ { + chosen { + stdout-path = &uart2; + u-boot,spl-boot-order = "same-as-spl", &sdmmc0; + }; +}; + +&sdmmc0 { + status = "okay"; +}; + +&uart2 { + clock-frequency = <2400>; + u-boot,dm-spl; + status = "okay"; +}; diff --git a/arch/arm/dts/rk3568-rock-3a.dts b/arch/arm/dts/rk3568-rock-3a.dts new file mode 100644 index 00..a2f2baa4ea --- /dev/null +++ b/arch/arm/dts/rk3568-rock-3a.dts @@ -0,0 +1,609 @@ +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) +/* + * Copyright (c) 2021 Rockchip Electronics Co., Ltd. + * Copyright (c) 2023 Akash Gajjar + */ + +/dts-v1/; +#include +#include +#include "rk3568.dtsi" + +/ { + model = "Radxa ROCK3 Model A"; + compatible = "radxa,rock3a", "rockchip,rk3568"; + + chosen: chosen { + stdout-path = "serial2:150n8"; + }; + + gmac1_clkin: external-gmac1-clock { + compatible = "fixed-clock"; + clock-frequency = <12500>; + clock-output-names = "gmac1_clkin"; + #clock-cells = <0>; + }; + + vcc12v_dcin: vcc12v-dcin-regulator { + compatible = "regulator-fixed"; + regulator-name = "vcc12v_dcin"; + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt = <1200>; + regulator-max-microvolt = <1200>; + }; + + vcc3v3_sys: vcc3v3-sys-regulator { + compatible = "regulator-fixed"; + regulator-name = "vcc3v3_sys"; + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt = <330>; + regulator-max-microvolt = <330>; + vin-supply = <&vcc12v_dcin>; + }; + + vcc5v0_sys: vcc5v0-sys-regulator { + compatible = "regulator-fixed"; + regulator-name = "vcc5v0_sys"; + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt = <500>; + regulator-max-microvolt = <500>; + vin-supply = <&vcc12v_dcin>; + }; + + vcc5v0_usb: vcc5v0-usb-regulator { + compatible = "regulator-fixed"; + regulator-name = "vcc5v0_usb"; + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt = <500>; + regulator-max-microvolt = <500>; + vin-supply = <&vcc12v_dcin>; + }; + + vcc5v0_usb_host: vcc5v0-usb
[PATCH v4 1/1] arm64: dts: rockchip: rk3568: Add Radxa ROCK 3 Model A board support
Add Radxa ROCK 3 Model A support. sync rk3568-rock-3a.dts from Linux 6.2.0-rc7 Board Specifications - Rockchip RK3568 - 2/4/8GB LPDDR4 3200MT/s - eMMC socket, SD card slot - GbE LAN - PCIe 3.0/2.0 - M.2 Connector - 3.5mm Audio jack with mic - HDMI 2.0, MIPI DSI/CSI - USB 3.0 Host/OTG, USB 2.0 Host - 40-pin GPIO expansion ports - USB Type C PD 2.0, 9V/2A, 12V/2A, 15V/2A, 20V/2A Refer Linux commit <22a442e6586c> ("arm64: dts: rockchip: add basic dts for the radxa rock3 model a") Signed-off-by: Akash Gajjar --- Changes in v2: - Ammend the commit message, Replace Rock Pi 3a with ROCK3A Model A. Update the specs from https://wiki.radxa.com/Rock3/3a - Sync missing node in dts, still some of the nodes like vop, vop mmu, i2s2_2ch gpu, hdmi removed as there is no driver support present in u-boot. - Duplicated sdmmc node removed from dts. Changes in v3: - Replace rock-pi-3a-rk3568_defconfig with rock-3a-rk3568_defconfig Changes in v4: - Add maintainer for the board --- arch/arm/dts/Makefile | 3 +- arch/arm/dts/rk3568-rock-3a-u-boot.dtsi | 24 + arch/arm/dts/rk3568-rock-3a.dts | 609 board/rockchip/evb_rk3568/MAINTAINERS | 7 + configs/rock-3a-rk3568_defconfig| 74 +++ 5 files changed, 716 insertions(+), 1 deletion(-) create mode 100644 arch/arm/dts/rk3568-rock-3a-u-boot.dtsi create mode 100644 arch/arm/dts/rk3568-rock-3a.dts create mode 100644 configs/rock-3a-rk3568_defconfig diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile index 9d647b9639..945843bebc 100644 --- a/arch/arm/dts/Makefile +++ b/arch/arm/dts/Makefile @@ -165,7 +165,8 @@ dtb-$(CONFIG_ROCKCHIP_RK3399) += \ rk3399pro-rock-pi-n10.dtb dtb-$(CONFIG_ROCKCHIP_RK3568) += \ - rk3568-evb.dtb + rk3568-evb.dtb \ + rk3568-rock-3a.dtb dtb-$(CONFIG_ROCKCHIP_RV1108) += \ rv1108-elgin-r1.dtb \ diff --git a/arch/arm/dts/rk3568-rock-3a-u-boot.dtsi b/arch/arm/dts/rk3568-rock-3a-u-boot.dtsi new file mode 100644 index 00..ae23ae8587 --- /dev/null +++ b/arch/arm/dts/rk3568-rock-3a-u-boot.dtsi @@ -0,0 +1,24 @@ +// SPDX-License-Identifier: GPL-2.0+ +/* + * (C) Copyright 2021 Rockchip Electronics Co., Ltd + * (C) Copyright 2023 Akash Gajjar + */ + +#include "rk356x-u-boot.dtsi" + +/ { + chosen { + stdout-path = &uart2; + u-boot,spl-boot-order = "same-as-spl", &sdmmc0; + }; +}; + +&sdmmc0 { + status = "okay"; +}; + +&uart2 { + clock-frequency = <2400>; + u-boot,dm-spl; + status = "okay"; +}; diff --git a/arch/arm/dts/rk3568-rock-3a.dts b/arch/arm/dts/rk3568-rock-3a.dts new file mode 100644 index 00..a2f2baa4ea --- /dev/null +++ b/arch/arm/dts/rk3568-rock-3a.dts @@ -0,0 +1,609 @@ +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) +/* + * Copyright (c) 2021 Rockchip Electronics Co., Ltd. + * Copyright (c) 2023 Akash Gajjar + */ + +/dts-v1/; +#include +#include +#include "rk3568.dtsi" + +/ { + model = "Radxa ROCK3 Model A"; + compatible = "radxa,rock3a", "rockchip,rk3568"; + + chosen: chosen { + stdout-path = "serial2:150n8"; + }; + + gmac1_clkin: external-gmac1-clock { + compatible = "fixed-clock"; + clock-frequency = <12500>; + clock-output-names = "gmac1_clkin"; + #clock-cells = <0>; + }; + + vcc12v_dcin: vcc12v-dcin-regulator { + compatible = "regulator-fixed"; + regulator-name = "vcc12v_dcin"; + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt = <1200>; + regulator-max-microvolt = <1200>; + }; + + vcc3v3_sys: vcc3v3-sys-regulator { + compatible = "regulator-fixed"; + regulator-name = "vcc3v3_sys"; + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt = <330>; + regulator-max-microvolt = <330>; + vin-supply = <&vcc12v_dcin>; + }; + + vcc5v0_sys: vcc5v0-sys-regulator { + compatible = "regulator-fixed"; + regulator-name = "vcc5v0_sys"; + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt = <500>; + regulator-max-microvolt = <500>; + vin-supply = <&vcc12v_dcin>; + }; + + vcc5v0_usb: vcc5v0-usb-regulator { + compatible = "regulator-fixed"; + regulator-name = "vcc5v0_usb"; + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt = <500>; + regulator-max-microvolt = <500>; + vin-supply = <&vcc12v_dcin>; + }; + + vcc5v0_usb_host: vcc5v0-usb-host-regulator { + compatible = "regulator-fixed"; + enable-active-high; +