[PATCH V2 4/4] arm64: dts: rockchip: add Powkiddy RK2023

Chris Morgan macromorgan at hotmail.com
Fri Nov 10 14:30:39 UTC 2023


On Fri, Nov 10, 2023 at 02:14:23PM +0100, Krzysztof Kozlowski wrote:
> On 09/11/2023 22:50, Chris Morgan wrote:
> > From: Chris Morgan <macromorgan at hotmail.com>
> > 
> > Add support for the Powkiddy RK2023. The Powkiddy RK2023 is a handheld
> > gaming device with a 3.5 inch screen powered by the Rockchip RK3566
> > SoC. The device is almost identical to the Anbernic RG353P except it
> > lacks eMMC, a function button, a touch screen, no UART headers on the
> > board, and the panel has slightly different timings.
> > 
> > Signed-off-by: Chris Morgan <macromorgan at hotmail.com>
> > ---
> >  arch/arm64/boot/dts/rockchip/Makefile         |   1 +
> >  .../dts/rockchip/rk3566-powkiddy-rk2023.dts   | 161 ++++++++++++++++++
> >  2 files changed, 162 insertions(+)
> >  create mode 100644 arch/arm64/boot/dts/rockchip/rk3566-powkiddy-rk2023.dts
> > 
> > diff --git a/arch/arm64/boot/dts/rockchip/Makefile b/arch/arm64/boot/dts/rockchip/Makefile
> > index a18f33bf0c0e..f969618da352 100644
> > --- a/arch/arm64/boot/dts/rockchip/Makefile
> > +++ b/arch/arm64/boot/dts/rockchip/Makefile
> > @@ -78,6 +78,7 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3566-anbernic-rg503.dtb
> >  dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3566-pinenote-v1.1.dtb
> >  dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3566-pinenote-v1.2.dtb
> >  dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3566-powkiddy-rgb30.dtb
> > +dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3566-powkiddy-rk2023.dtb
> >  dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3566-quartz64-a.dtb
> >  dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3566-quartz64-b.dtb
> >  dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3566-radxa-cm3-io.dtb
> > diff --git a/arch/arm64/boot/dts/rockchip/rk3566-powkiddy-rk2023.dts b/arch/arm64/boot/dts/rockchip/rk3566-powkiddy-rk2023.dts
> > new file mode 100644
> > index 000000000000..5740412f6b2b
> > --- /dev/null
> > +++ b/arch/arm64/boot/dts/rockchip/rk3566-powkiddy-rk2023.dts
> > @@ -0,0 +1,161 @@
> > +// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
> > +
> > +/dts-v1/;
> > +
> > +#include <dt-bindings/gpio/gpio.h>
> > +#include <dt-bindings/input/linux-event-codes.h>
> > +#include <dt-bindings/pinctrl/rockchip.h>
> > +#include "rk3566-anbernic-rg353x.dtsi"
> > +
> > +/ {
> > +	model = "RK2023";
> > +	compatible = "powkiddy,rk2023", "rockchip,rk3566";
> > +
> > +	aliases {
> > +		mmc1 = &sdmmc0;
> > +		mmc2 = &sdmmc1;
> > +		mmc3 = &sdmmc2;
> > +	};
> > +
> > +	battery: battery {
> > +		compatible = "simple-battery";
> > +		charge-full-design-microamp-hours = <3151000>;
> > +		charge-term-current-microamp = <300000>;
> > +		constant-charge-current-max-microamp = <2000000>;
> > +		constant-charge-voltage-max-microvolt = <4250000>;
> > +		factory-internal-resistance-micro-ohms = <117000>;
> > +		voltage-max-design-microvolt = <4172000>;
> > +		voltage-min-design-microvolt = <3400000>;
> > +
> > +		ocv-capacity-celsius = <20>;
> > +		ocv-capacity-table-0 =  <4172000 100>, <4092000 95>, <4035000 90>, <3990000 85>,
> > +					<3939000 80>, <3895000 75>, <3852000 70>, <3807000 65>,
> > +					<3762000 60>, <3713000 55>, <3672000 50>, <3647000 45>,
> > +					<3629000 40>, <3613000 35>, <3598000 30>, <3578000 25>,
> > +					<3550000 20>, <3519000 15>, <3479000 10>, <3438000 5>,
> > +					<3400000 0>;
> > +	};
> > +
> > +	/* Channels reversed for headphones. */
> > +	sound {
> > +		compatible = "simple-audio-card";
> > +		simple-audio-card,name = "rk817_int";
> > +		simple-audio-card,format = "i2s";
> > +		simple-audio-card,hp-det-gpio = <&gpio4 RK_PC6 GPIO_ACTIVE_HIGH>;
> > +		simple-audio-card,mclk-fs = <256>;
> > +		simple-audio-card,widgets =
> > +			"Microphone", "Mic Jack",
> > +			"Headphone", "Headphones",
> > +			"Speaker", "Internal Speakers";
> > +		simple-audio-card,routing =
> > +			"MICL", "Mic Jack",
> > +			"Headphones", "HPOL",
> > +			"Headphones", "HPOR",
> > +			"Internal Speakers", "SPKO";
> > +
> > +		simple-audio-card,codec {
> > +			sound-dai = <&rk817>;
> > +		};
> > +
> > +		simple-audio-card,cpu {
> > +			sound-dai = <&i2s1_8ch>;
> > +		};
> > +	};
> > +
> > +};
> > +
> > +/delete-node/ &adc_keys;
> > +
> > +&chosen {
> > +	/delete-property/ stdout-path;
> > +};
> 
> If you have to delete so many nodes and properties, this means your
> common DTSI is not that common.
> 
> Common DTSI means there is shared hardware. If you take shared hardware
> and put it into another board, pieces of the shared hardware do not
> disappear.
> 
> 
> Best regards,
> Krzysztof
> 

I can redo this with a different top-level dtsi so I won't have to
delete so much if that helps. I'll redo both the RGB30 and RK2023
so that they use a common dtsi and no longer rely on the Anberic
one. I'll do that and submit a V3.

Thank you.


More information about the dri-devel mailing list