Skip to contentSkip to conversation

User Requested Fixes for Powkiddy RK3566 Devices

PATCH Applied Chris Morgan 4 participants 12 messages Mar 25, 2024 – Apr 12, 2024

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

cover User Requested Fixes for Powkiddy RK3566 Devices

From: Chris Morgan <[email protected]>

Users have requested fixes for Powkiddy devices to help with some intermittent WiFi issues by adding additional properties to the SDMMC2 node. They have also requested that the model name be represented consistently with both the manufacturer name and model name. Lastly, there exists a second configuration of the RGB30 with a slightly different regulator layout we need to describe.

I have added the new/additional property of "chasis-type" as well.

Chris Morgan (4):
dts: rockchip: Add chasis-type for Powkiddy rk3566 devices
arm64: dts: rockchip: Update sdmmc node for wifi on powkiddy rk3566
arm64: dts: rockchip: Correct model name for Powkiddy RK3566 Devices
arm64: dts: rockchip: Describe Alternate Regulator Config on RGB30

 .../dts/rockchip/rk3566-powkiddy-rgb30.dts    | 30 ++++++++++++++++++-
 .../dts/rockchip/rk3566-powkiddy-rk2023.dts   |  6 +++-
 .../dts/rockchip/rk3566-powkiddy-rk2023.dtsi  |  4 +++
 .../boot/dts/rockchip/rk3566-powkiddy-x55.dts |  4 +++
 4 files changed, 42 insertions(+), 2 deletions(-)
Signature · 1 line
2.34.1
#1 lore raw

PATCH 1/4 dts: rockchip: Add chasis-type for Powkiddy rk3566 devices

From: Chris Morgan <[email protected]>

Add the optional node of chasis-type for Powkiddy RK3566 based devices.

---
 arch/arm64/boot/dts/rockchip/rk3566-powkiddy-rk2023.dtsi | 2 ++
 arch/arm64/boot/dts/rockchip/rk3566-powkiddy-x55.dts     | 1 +
 2 files changed, 3 insertions(+)
arch/arm64/boot/dts/rockchip/rk3566-powkiddy-rk2023.dtsi +2 -0
index 3ab751a01cb2..bd332714a023 100644
@@ -10,6 +10,8 @@
 #include "rk3566.dtsi"
 
 / {
+	chassis-type = "handset";
+
 	aliases {
 		mmc1 = &sdmmc0;
 		mmc2 = &sdmmc1;
arch/arm64/boot/dts/rockchip/rk3566-powkiddy-x55.dts +1 -0
index 4786b19fd017..5a648db41f35 100644
@@ -11,6 +11,7 @@
 
 / {
 	model = "Powkiddy x55";
+	chassis-type = "handset";
 	compatible = "powkiddy,x55", "rockchip,rk3566";
 
 	aliases {
Signature · 1 line
2.34.1
#2 lore raw

PATCH 2/4 arm64: dts: rockchip: Update sdmmc node for wifi on powkiddy rk3566

In reply to Chris Morgan

From: Chris Morgan <[email protected]>

Update the sdmmc nodes responsible for WiFi on the Powkiddy RK3566 based devices. For the RGB30, RK2023, and X55 we also add the sd-uhs-sdr50 parameter. For the RGB10Max3 this parameter is not supported by the WiFi card.

---
 arch/arm64/boot/dts/rockchip/rk3566-powkiddy-rgb30.dts   | 4 ++++
 arch/arm64/boot/dts/rockchip/rk3566-powkiddy-rk2023.dts  | 4 ++++
 arch/arm64/boot/dts/rockchip/rk3566-powkiddy-rk2023.dtsi | 2 ++
 arch/arm64/boot/dts/rockchip/rk3566-powkiddy-x55.dts     | 3 +++
 4 files changed, 13 insertions(+)
arch/arm64/boot/dts/rockchip/rk3566-powkiddy-rgb30.dts +4 -0
index 1f567a14ac84..f0f5ee595938 100644
@@ -55,3 +55,7 @@ regulator-state-mem {
 		};
 	};
 };
+
+&sdmmc2 {
+	sd-uhs-sdr50;
+};
arch/arm64/boot/dts/rockchip/rk3566-powkiddy-rk2023.dts +4 -0
index bc9933d9e262..661abceaba9c 100644
@@ -54,3 +54,7 @@ regulator-state-mem {
 		};
 	};
 };
+
+&sdmmc2 {
+	sd-uhs-sdr50;
+};
arch/arm64/boot/dts/rockchip/rk3566-powkiddy-rk2023.dtsi +2 -0
index bd332714a023..10089921c62d 100644
@@ -771,6 +771,8 @@ &sdmmc2 {
 	cap-sdio-irq;
 	keep-power-in-suspend;
 	mmc-pwrseq = <&sdio_pwrseq>;
+	no-mmc;
+	no-sd;
 	non-removable;
 	pinctrl-0 = <&sdmmc2m0_bus4 &sdmmc2m0_cmd &sdmmc2m0_clk>;
 	pinctrl-names = "default";
arch/arm64/boot/dts/rockchip/rk3566-powkiddy-x55.dts +3 -0
index 5a648db41f35..ccdf654a3f48 100644
@@ -835,9 +835,12 @@ &sdmmc1 {
 	cap-sdio-irq;
 	keep-power-in-suspend;
 	mmc-pwrseq = <&sdio_pwrseq>;
+	no-mmc;
+	no-sd;
 	non-removable;
 	pinctrl-0 = <&sdmmc1_bus4>, <&sdmmc1_cmd>, <&sdmmc1_clk>;
 	pinctrl-names = "default";
+	sd-uhs-sdr50;
 	vmmc-supply = <&vcc_wifi>;
 	status = "okay";
 };
Signature · 1 line
2.34.1
#3 lore raw

PATCH 3/4 arm64: dts: rockchip: Correct model name for Powkiddy RK3566 Devices

In reply to Chris Morgan

From: Chris Morgan <[email protected]>

Some Powkiddy model names begin with the company "Powkiddy" and others simply list the model number. Make this consistent across the device lineup by including the manufacturer in the model name.

---
 arch/arm64/boot/dts/rockchip/rk3566-powkiddy-rgb30.dts  | 2 +-
 arch/arm64/boot/dts/rockchip/rk3566-powkiddy-rk2023.dts | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
arch/arm64/boot/dts/rockchip/rk3566-powkiddy-rgb30.dts +1 -1
index f0f5ee595938..e359465eebe9 100644
@@ -8,7 +8,7 @@
 #include "rk3566-powkiddy-rk2023.dtsi"
 
 / {
-	model = "RGB30";
+	model = "Powkiddy RGB30";
 	compatible = "powkiddy,rgb30", "rockchip,rk3566";
 };
 
arch/arm64/boot/dts/rockchip/rk3566-powkiddy-rk2023.dts +1 -1
index 661abceaba9c..b83116c56584 100644
@@ -8,7 +8,7 @@
 #include "rk3566-powkiddy-rk2023.dtsi"
 
 / {
-	model = "RK2023";
+	model = "Powkiddy RK2023";
 	compatible = "powkiddy,rk2023", "rockchip,rk3566";
 };
 
Signature · 1 line
2.34.1
#4 lore raw

PATCH 4/4 arm64: dts: rockchip: Describe Alternate Regulator Config on RGB30

In reply to Chris Morgan

From: Chris Morgan <[email protected]>

Describe a possible secondary regulator configuration for the RGB30. At some point Powkiddy altered the CPU regulator for the RGB30 without creating a new model revision. Note this in the device-tree in the hopes that it may alleviate a user's confusion (or possibly allow a bootloader to manipulate the tree to swap out the regulators when the alternate configuration is detected).

---
 .../dts/rockchip/rk3566-powkiddy-rgb30.dts    | 24 +++++++++++++++++++
 1 file changed, 24 insertions(+)
arch/arm64/boot/dts/rockchip/rk3566-powkiddy-rgb30.dts +24 -0
index e359465eebe9..484f097e9f11 100644
@@ -54,6 +54,30 @@ regulator-state-mem {
 			regulator-off-in-suspend;
 		};
 	};
+
+	/*
+	 * Some RGB30 devices use a different CPU regulator. These
+	 * devices have no external markings to denote a different
+	 * model revision.
+	 */
+	vdd_cpu_alt: regulator@40 {
+		compatible = "tcs,tcs4525";
+		reg = <0x40>;
+		fcs,suspend-voltage-selector = <1>;
+		regulator-always-on;
+		regulator-boot-on;
+		regulator-min-microvolt = <712500>;
+		regulator-max-microvolt = <1390000>;
+		regulator-name = "vdd_cpu_alt";
+		regulator-ramp-delay = <2300>;
+		vin-supply = <&vcc_sys>;
+
+		status = "disabled";
+
+		regulator-state-mem {
+			regulator-off-in-suspend;
+		};
+	};
 };
 
 &sdmmc2 {
Signature · 1 line
2.34.1
maintainer
#5 lore raw

Re: [PATCH 4/4] arm64: dts: rockchip: Describe Alternate Regulator Config on RGB30

Am Montag, 25. März 2024, 18:51:33 CEST schrieb Chris Morgan:

Quoted 10 lines

From: Chris Morgan <[email protected]>

Describe a possible secondary regulator configuration for the RGB30. At some point Powkiddy altered the CPU regulator for the RGB30 without creating a new model revision. Note this in the device-tree in the hopes that it may alleviate a user's confusion (or possibly allow a bootloader to manipulate the tree to swap out the regulators when the alternate configuration is detected).

I don't think this is the correct approach here, we'll really need a second board dts for the variant.

Only describing the regulator in a comment does not help the affected users at all, as they would need to adapt the dt they have on their device on each update.

Having a second dtb will have the kernel build both (also improving build testing) and allow them to configure their bootloader to load the correct one, even if we can't detect the variant device automatically.

Heiko

Quoted 40 lines
---
 .../dts/rockchip/rk3566-powkiddy-rgb30.dts    | 24 +++++++++++++++++++
 1 file changed, 24 insertions(+)
arch/arm64/boot/dts/rockchip/rk3566-powkiddy-rgb30.dts +24 -0
index e359465eebe9..484f097e9f11 100644
@@ -54,6 +54,30 @@ regulator-state-mem {
 			regulator-off-in-suspend;
 		};
 	};
+
+	/*
+	 * Some RGB30 devices use a different CPU regulator. These
+	 * devices have no external markings to denote a different
+	 * model revision.
+	 */
+	vdd_cpu_alt: regulator@40 {
+		compatible = "tcs,tcs4525";
+		reg = <0x40>;
+		fcs,suspend-voltage-selector = <1>;
+		regulator-always-on;
+		regulator-boot-on;
+		regulator-min-microvolt = <712500>;
+		regulator-max-microvolt = <1390000>;
+		regulator-name = "vdd_cpu_alt";
+		regulator-ramp-delay = <2300>;
+		vin-supply = <&vcc_sys>;
+
+		status = "disabled";
+
+		regulator-state-mem {
+			regulator-off-in-suspend;
+		};
+	};
 };
 
 &sdmmc2 {
#6 lore raw
In reply to Chris Morgan

Hello Chris,

Quoted 10 lines · Chris Morgan

From: Chris Morgan <[email protected]>

Users have requested fixes for Powkiddy devices to help with some intermittent WiFi issues by adding additional properties to the SDMMC2 node. They have also requested that the model name be represented consistently with both the manufacturer name and model name. Lastly, there exists a second configuration of the RGB30 with a slightly different regulator layout we need to describe.

I have added the new/additional property of "chasis-type" as well.

Shouldn't this series be labeled as v2?

By the way, regarding renaming the mmcX aliases, maybe that would actually be doable, but only if you have full control over software that runs on these devices.

Quoted 11 lines

Chris Morgan (4):
dts: rockchip: Add chasis-type for Powkiddy rk3566 devices
arm64: dts: rockchip: Update sdmmc node for wifi on powkiddy rk3566
arm64: dts: rockchip: Correct model name for Powkiddy RK3566 Devices
arm64: dts: rockchip: Describe Alternate Regulator Config on RGB30

 .../dts/rockchip/rk3566-powkiddy-rgb30.dts    | 30 ++++++++++++++++++-
 .../dts/rockchip/rk3566-powkiddy-rk2023.dts   |  6 +++-
 .../dts/rockchip/rk3566-powkiddy-rk2023.dtsi  |  4 +++
 .../boot/dts/rockchip/rk3566-powkiddy-x55.dts |  4 +++
 4 files changed, 42 insertions(+), 2 deletions(-)
maintainer
#7 lore raw

Am Montag, 25. März 2024, 18:57:06 CET schrieb Dragan Simic:

Quoted 12 lines

Hello Chris,

Quoted 9 lines · Chris Morgan

From: Chris Morgan <[email protected]>

Users have requested fixes for Powkiddy devices to help with some intermittent WiFi issues by adding additional properties to the SDMMC2 node. They have also requested that the model name be represented consistently with both the manufacturer name and model name. Lastly, there exists a second configuration of the RGB30 with a slightly different regulator layout we need to describe.

Quoted 3 lines
Quoted 1 line

I have added the new/additional property of "chasis-type" as well.

Shouldn't this series be labeled as v2?

I think this is for Powkiddy handhelds, the other series was for Anberic ones.

Somehow they design and build seemingly dozens of somewhat similar handhelds around the rk3566 ;-)

Quoted 16 lines

By the way, regarding renaming the mmcX aliases, maybe that would actually be doable, but only if you have full control over software that runs on these devices.

Quoted 11 lines

Chris Morgan (4):
dts: rockchip: Add chasis-type for Powkiddy rk3566 devices
arm64: dts: rockchip: Update sdmmc node for wifi on powkiddy rk3566
arm64: dts: rockchip: Correct model name for Powkiddy RK3566 Devices
arm64: dts: rockchip: Describe Alternate Regulator Config on RGB30

 .../dts/rockchip/rk3566-powkiddy-rgb30.dts    | 30 ++++++++++++++++++-
 .../dts/rockchip/rk3566-powkiddy-rk2023.dts   |  6 +++-
 .../dts/rockchip/rk3566-powkiddy-rk2023.dtsi  |  4 +++
 .../boot/dts/rockchip/rk3566-powkiddy-x55.dts |  4 +++
 4 files changed, 42 insertions(+), 2 deletions(-)
#8 lore raw

Hello Heiko,

Quoted 15 lines · Heiko Stübner

Am Montag, 25. März 2024, 18:57:06 CET schrieb Dragan Simic:

Quoted 14 lines

Hello Chris,

Quoted 10 lines · Chris Morgan

From: Chris Morgan <[email protected]>

Users have requested fixes for Powkiddy devices to help with some intermittent WiFi issues by adding additional properties to the SDMMC2 node. They have also requested that the model name be represented consistently with both the manufacturer name and model name. Lastly, there exists a second configuration of the RGB30 with a slightly different regulator layout we need to describe.

I have added the new/additional property of "chasis-type" as well.

Quoted 7 lines
Quoted 1 line

Shouldn't this series be labeled as v2?

I think this is for Powkiddy handhelds, the other series was for Anberic ones.

Somehow they design and build seemingly dozens of somewhat similar handhelds around the rk3566 ;-)

Ah, you're right, I was wrong. It's quite easy to become confused a bit with such similar devices and similar patches. :)

Quoted 25 lines
Quoted 16 lines

By the way, regarding renaming the mmcX aliases, maybe that would actually be doable, but only if you have full control over software that runs on these devices.

Quoted 11 lines

Chris Morgan (4):
dts: rockchip: Add chasis-type for Powkiddy rk3566 devices
arm64: dts: rockchip: Update sdmmc node for wifi on powkiddy rk3566
arm64: dts: rockchip: Correct model name for Powkiddy RK3566 Devices
arm64: dts: rockchip: Describe Alternate Regulator Config on RGB30

 .../dts/rockchip/rk3566-powkiddy-rgb30.dts    | 30 ++++++++++++++++++-
 .../dts/rockchip/rk3566-powkiddy-rk2023.dts   |  6 +++-
 .../dts/rockchip/rk3566-powkiddy-rk2023.dtsi  |  4 +++
 .../boot/dts/rockchip/rk3566-powkiddy-x55.dts |  4 +++
 4 files changed, 42 insertions(+), 2 deletions(-)

_______________________________________________
Linux-rockchip mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/linux-rockchip

#9 lore raw
In reply to Heiko Stübner
Quoted 15 lines · Heiko Stübner

Am Montag, 25. März 2024, 18:57:06 CET schrieb Dragan Simic:

Quoted 14 lines

Hello Chris,

Quoted 10 lines · Chris Morgan

From: Chris Morgan <[email protected]>

Users have requested fixes for Powkiddy devices to help with some intermittent WiFi issues by adding additional properties to the SDMMC2 node. They have also requested that the model name be represented consistently with both the manufacturer name and model name. Lastly, there exists a second configuration of the RGB30 with a slightly different regulator layout we need to describe.

I have added the new/additional property of "chasis-type" as well.

Quoted 7 lines
Quoted 1 line

Shouldn't this series be labeled as v2?

I think this is for Powkiddy handhelds, the other series was for Anberic ones.

Somehow they design and build seemingly dozens of somewhat similar handhelds around the rk3566 ;-)

Yes they do, and unfortunately in the case of some of the devices they love to make changes and not tell anyone (like the regulator change for the RGB30) In regards to that specific change, let me know if it's not appropriate to put that in the devicetree the way I did. Ideally I'll do a fixup of sorts with U-Boot, but it might be easier if I have a disabled node to work with already...

Otherwise these fixes try to resolve some wifi issues for all the devices along with fixing the inconsistent names. I have some additional fixes (coming when I can get them finished and tested) for the Powkiddy devices as some of the screens have slightly shifted pixels.

Thank you.

Quoted 22 lines
Quoted 18 lines

By the way, regarding renaming the mmcX aliases, maybe that would actually be doable, but only if you have full control over software that runs on these devices.

Quoted 11 lines

Chris Morgan (4):
dts: rockchip: Add chasis-type for Powkiddy rk3566 devices
arm64: dts: rockchip: Update sdmmc node for wifi on powkiddy rk3566
arm64: dts: rockchip: Correct model name for Powkiddy RK3566 Devices
arm64: dts: rockchip: Describe Alternate Regulator Config on RGB30

 .../dts/rockchip/rk3566-powkiddy-rgb30.dts    | 30 ++++++++++++++++++-
 .../dts/rockchip/rk3566-powkiddy-rk2023.dts   |  6 +++-
 .../dts/rockchip/rk3566-powkiddy-rk2023.dtsi  |  4 +++
 .../boot/dts/rockchip/rk3566-powkiddy-x55.dts |  4 +++
 4 files changed, 42 insertions(+), 2 deletions(-)
maintainer Applied
#10 lore raw

Re: (subset) [PATCH 0/4] User Requested Fixes for Powkiddy RK3566 Devices

In reply to Chris Morgan
Quoted 10 lines · Chris Morgan

From: Chris Morgan <[email protected]>

Users have requested fixes for Powkiddy devices to help with some intermittent WiFi issues by adding additional properties to the SDMMC2 node. They have also requested that the model name be represented consistently with both the manufacturer name and model name. Lastly, there exists a second configuration of the RGB30 with a slightly different regulator layout we need to describe.

[...]

Applied, thanks!

[1/4] dts: rockchip: Add chasis-type for Powkiddy rk3566 devices

      commit: 9d3d2be86c7d4b1bc16b65a06ba06886913de7e8
[3/4] arm64: dts: rockchip: Correct model name for Powkiddy RK3566 Devices
      commit: 1b76d86dbc5faf907d74343e1b15daa84ab8322c

Best regards,

Signature · 1 line
Heiko Stuebner <[email protected]>
#11 lore raw

Re: (subset) [PATCH 0/4] User Requested Fixes for Powkiddy RK3566 Devices

Quoted 10 lines · Heiko Stuebner
Quoted 9 lines · Chris Morgan

From: Chris Morgan <[email protected]>

Users have requested fixes for Powkiddy devices to help with some intermittent WiFi issues by adding additional properties to the SDMMC2 node. They have also requested that the model name be represented consistently with both the manufacturer name and model name. Lastly, there exists a second configuration of the RGB30 with a slightly different regulator layout we need to describe.

Quoted 8 lines
Quoted 1 line

[...]

Applied, thanks!

[1/4] dts: rockchip: Add chasis-type for Powkiddy rk3566 devices

      commit: 9d3d2be86c7d4b1bc16b65a06ba06886913de7e8
[3/4] arm64: dts: rockchip: Correct model name for Powkiddy RK3566 Devices
      commit: 1b76d86dbc5faf907d74343e1b15daa84ab8322c

Thank you. Like the other devices as long as we can make the wifi location consistent (mmc3) the rest of the aliases aren't as important.

I understand about the regulator stuff, I'll try to fix it up with the bootloader. I just didn't know if there was any proper way/benefit of flagging it this way versus doing a different board revision (even though there is absolutely nothing user visible about the change).

Quoted 4 lines

Best regards,

Signature · 1 line
Heiko Stuebner <[email protected]>