* [PATCH 0/3] dts: allwinner: Add Teclast P80 tablet support
@ 2026-09-14 21:01 Andre Przywara
2026-09-14 21:01 ` [PATCH 1/3] dt-bindings: vendor-prefixes: Add vendor prefix for Teclast Andre Przywara
` (3 more replies)
0 siblings, 4 replies; 14+ messages in thread
From: Andre Przywara @ 2026-09-14 21:01 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai,
Jernej Skrabec, Samuel Holland
Cc: Paul Kocialkowski, devicetree, linux-arm-kernel, linux-sunxi
The Teclast P80 tablet is an entry-level tablet with an 8inch screen
and an Allwinner A133 quad-A53 SoC. There are other tablets using
the P80 name, this here is about the "G4" version from 2020.
Contains the typical triad of DT support patches: vendor prefix, machine
compatible binding, board .dts file.
Please have a look!
Cheers,
Andre
Andre Przywara (3):
dt-bindings: vendor-prefixes: Add vendor prefix for Teclast
dt-bindings: arm: sunxi: Add two Teclast tablets
arm64: dts: allwinner: A133: add basic support for Teclast P80 tablet
.../devicetree/bindings/arm/sunxi.yaml | 10 +
.../devicetree/bindings/vendor-prefixes.yaml | 2 +
arch/arm64/boot/dts/allwinner/Makefile | 1 +
.../dts/allwinner/sun50i-a133-teclast-p80.dts | 205 ++++++++++++++++++
4 files changed, 218 insertions(+)
create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-a133-teclast-p80.dts
base-commit: cee9395acd8043be0644b25c34bfa86623f2b935
--
2.46.4
^ permalink raw reply [flat|nested] 14+ messages in thread
* [PATCH 1/3] dt-bindings: vendor-prefixes: Add vendor prefix for Teclast
2026-09-14 21:01 [PATCH 0/3] dts: allwinner: Add Teclast P80 tablet support Andre Przywara
@ 2026-09-14 21:01 ` Andre Przywara
2026-09-14 21:11 ` sashiko-bot
2026-09-15 16:59 ` Conor Dooley
2026-09-14 21:01 ` [PATCH 2/3] dt-bindings: arm: sunxi: Add two Teclast tablets Andre Przywara
` (2 subsequent siblings)
3 siblings, 2 replies; 14+ messages in thread
From: Andre Przywara @ 2026-09-14 21:01 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai,
Jernej Skrabec, Samuel Holland
Cc: Paul Kocialkowski, devicetree, linux-arm-kernel, linux-sunxi
Teclast [1] is a Chinese company manufacturing tablets, laptops and mini
PCs, using chipsets from various vendors, covering both the x86 and Arm
world.
Link: https://www.teclast.com [1]
Signed-off-by: Andre Przywara <andre.przywara@arm.com>
---
Documentation/devicetree/bindings/vendor-prefixes.yaml | 2 ++
1 file changed, 2 insertions(+)
diff --git a/Documentation/devicetree/bindings/vendor-prefixes.yaml b/Documentation/devicetree/bindings/vendor-prefixes.yaml
index ba20029693734..6da733d465a31 100644
--- a/Documentation/devicetree/bindings/vendor-prefixes.yaml
+++ b/Documentation/devicetree/bindings/vendor-prefixes.yaml
@@ -1722,6 +1722,8 @@ patternProperties:
description: Thundercomm Technology Co., Ltd.
"^thwc,.*":
description: Shenzhen Tong Heng Wei Chuang Technology Co., Ltd.
+ "^teclast,.*":
+ description: Teclast
"^ti,.*":
description: Texas Instruments
"^tianma,.*":
--
2.46.4
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [PATCH 2/3] dt-bindings: arm: sunxi: Add two Teclast tablets
2026-09-14 21:01 [PATCH 0/3] dts: allwinner: Add Teclast P80 tablet support Andre Przywara
2026-09-14 21:01 ` [PATCH 1/3] dt-bindings: vendor-prefixes: Add vendor prefix for Teclast Andre Przywara
@ 2026-09-14 21:01 ` Andre Przywara
2026-09-14 21:19 ` sashiko-bot
2026-09-18 6:55 ` Krzysztof Kozlowski
2026-09-14 21:01 ` [PATCH 3/3] arm64: dts: allwinner: A133: add basic support for Teclast P80 tablet Andre Przywara
2026-09-21 15:59 ` [PATCH 0/3] dts: allwinner: Add Teclast P80 tablet support Chen-Yu Tsai
3 siblings, 2 replies; 14+ messages in thread
From: Andre Przywara @ 2026-09-14 21:01 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai,
Jernej Skrabec, Samuel Holland
Cc: Paul Kocialkowski, devicetree, linux-arm-kernel, linux-sunxi
Teclast produces some entry-level tablets with Allwinner SoCs, typically
featuring a new SoC early in the market.
Add the names for the Teclast P80 tablet, with an Allwinner A133 SoC,
but also the Teclast P85T, using an Allwinner A523 chip.
Signed-off-by: Andre Przywara <andre.przywara@arm.com>
---
Documentation/devicetree/bindings/arm/sunxi.yaml | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/Documentation/devicetree/bindings/arm/sunxi.yaml b/Documentation/devicetree/bindings/arm/sunxi.yaml
index f04db28c630ac..28437c47ac01b 100644
--- a/Documentation/devicetree/bindings/arm/sunxi.yaml
+++ b/Documentation/devicetree/bindings/arm/sunxi.yaml
@@ -933,6 +933,16 @@ properties:
- const: tbs-biometrics,a711
- const: allwinner,sun8i-a83t
+ - description: Teclast P80 Tablet
+ items:
+ - const: teclast,p80
+ - const: allwinner,sun50i-a133
+
+ - description: Teclast P85T Tablet
+ items:
+ - const: teclast,p85t
+ - const: allwinner,sun55i-a523
+
- description: Topwise A721 Tablet
items:
- const: topwise,a721
--
2.46.4
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [PATCH 3/3] arm64: dts: allwinner: A133: add basic support for Teclast P80 tablet
2026-09-14 21:01 [PATCH 0/3] dts: allwinner: Add Teclast P80 tablet support Andre Przywara
2026-09-14 21:01 ` [PATCH 1/3] dt-bindings: vendor-prefixes: Add vendor prefix for Teclast Andre Przywara
2026-09-14 21:01 ` [PATCH 2/3] dt-bindings: arm: sunxi: Add two Teclast tablets Andre Przywara
@ 2026-09-14 21:01 ` Andre Przywara
2026-09-21 15:59 ` [PATCH 0/3] dts: allwinner: Add Teclast P80 tablet support Chen-Yu Tsai
3 siblings, 0 replies; 14+ messages in thread
From: Andre Przywara @ 2026-09-14 21:01 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai,
Jernej Skrabec, Samuel Holland
Cc: Paul Kocialkowski, devicetree, linux-arm-kernel, linux-sunxi
The Teclast P80 tablet is an 8 inch entry-level tablet from around 2020,
featuring an Allwinner A133 SoC. It features:
- Allwinner A133 SoC (4*Arm Cortex-A53) at 1.6 GHz
- 2 GiB LPDDR4 DRAM
- 32GiB eMMC
- microSD card slot
- AXP707 PMIC
- USB-C OTG port (also for charging)
- 800x1200 pixel 8" IPS panel
- unknown Bluetooth and WiFi
- secure boot, but takes any key
Add initial support for the tablet, including UART, PMIC, eMMC, SD, USB.
The tablet uses secure boot, so it needs a signed TOC0 wrapped image to
boot, but it has no key hash burnt into the efuses, so it accepts an
image signed with any key.
Please note that there are older models also being named P80: a device
with an Mediatek SoC from around 2018, based on 32-bit ARM cores, and an
Intel Atom based one from around 2014.
This device here is sometimes listed as G4, the Mediatek one as G3.
Signed-off-by: Andre Przywara <andre.przywara@arm.com>
---
arch/arm64/boot/dts/allwinner/Makefile | 1 +
.../dts/allwinner/sun50i-a133-teclast-p80.dts | 205 ++++++++++++++++++
2 files changed, 206 insertions(+)
create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-a133-teclast-p80.dts
diff --git a/arch/arm64/boot/dts/allwinner/Makefile b/arch/arm64/boot/dts/allwinner/Makefile
index aa21f58a4be1f..d1f768dd6461d 100644
--- a/arch/arm64/boot/dts/allwinner/Makefile
+++ b/arch/arm64/boot/dts/allwinner/Makefile
@@ -26,6 +26,7 @@ dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h64-remix-mini-pc.dtb
dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a100-allwinner-perf1.dtb
dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a133-helperboard.dtb
dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a133-liontron-h-a133l.dtb
+dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a133-teclast-p80.dtb
dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-bananapi-m2-plus.dtb
dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-bananapi-m2-plus-v1.2.dtb
dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-emlid-neutis-n5-devboard.dtb
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a133-teclast-p80.dts b/arch/arm64/boot/dts/allwinner/sun50i-a133-teclast-p80.dts
new file mode 100644
index 0000000000000..47b5f2ac824ae
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/sun50i-a133-teclast-p80.dts
@@ -0,0 +1,205 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright (c) 2026 Arm Ltd.
+ */
+
+/dts-v1/;
+
+#include "sun50i-a100.dtsi"
+#include "sun50i-a100-cpu-opp.dtsi"
+
+#include <dt-bindings/gpio/gpio.h>
+
+/{
+ model = "Teclast P80";
+ compatible = "teclast,p80", "allwinner,sun50i-a133";
+ chassis-type = "tablet";
+
+ aliases {
+ serial0 = &uart0;
+ };
+
+ chosen {
+ stdout-path = "serial0:115200n8";
+ };
+
+ reg_vcc5v: vcc5v {
+ /* external power input from the USB-C port*/
+ compatible = "regulator-fixed";
+ regulator-always-on;
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+ regulator-name = "vcc-5v";
+ };
+
+ speaker_amp: audio-amplifier {
+ compatible = "simple-audio-amplifier";
+ enable-gpios = <&pio 7 6 GPIO_ACTIVE_HIGH>; /* PH6 */
+ sound-name-prefix = "Speaker Amp";
+ };
+};
+
+&cpu0 {
+ cpu-supply = <®_dcdc2>;
+};
+
+&ehci0 {
+ status = "okay";
+};
+
+&mmc0 {
+ bus-width = <4>;
+ cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; /* PF6 */
+ disable-wp;
+ vmmc-supply = <®_dcdc1>;
+ status = "okay";
+};
+
+&mmc2 {
+ bus-width = <8>;
+ cap-mmc-hw-reset;
+ mmc-ddr-1_8v;
+ mmc-hs200-1_8v;
+ non-removable;
+ vmmc-supply = <®_dcdc1>;
+ vqmmc-supply = <®_eldo1>;
+ status = "okay";
+};
+
+&ohci0 {
+ status = "okay";
+};
+
+&r_i2c0 {
+ status = "okay";
+
+ axp803: pmic@34 {
+ compatible = "x-powers,axp803";
+ reg = <0x34>;
+ interrupt-parent = <&r_intc>;
+ interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
+ x-powers,drive-vbus-en;
+ };
+};
+
+#include "axp803.dtsi"
+
+&ac_power_supply {
+ status = "okay";
+};
+
+&battery_power_supply {
+ status = "okay";
+};
+
+®_aldo1 {
+ regulator-always-on;
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-name = "vcc-codec-avcc";
+};
+
+®_aldo2 {
+ regulator-always-on;
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-name = "vcc-dram-1";
+};
+
+®_aldo3 {
+ regulator-always-on;
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ regulator-name = "vcc-usb-pl";
+};
+
+®_dcdc1 {
+ regulator-always-on;
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ regulator-name = "vcc-io-usb-pd-mmc";
+};
+
+®_dcdc2 {
+ regulator-always-on;
+ regulator-min-microvolt = <810000>;
+ regulator-max-microvolt = <1200000>;
+ regulator-name = "vdd-cpux";
+};
+
+®_dcdc3 {
+ regulator-always-on;
+ regulator-min-microvolt = <900000>;
+ regulator-max-microvolt = <900000>;
+ regulator-name = "vdd-usb-cpus";
+};
+
+®_dcdc4 {
+ regulator-always-on;
+ regulator-min-microvolt = <950000>;
+ regulator-max-microvolt = <950000>;
+ regulator-name = "vdd-sys";
+};
+
+®_dcdc5 {
+ regulator-always-on;
+ regulator-min-microvolt = <1100000>;
+ regulator-max-microvolt = <1100000>;
+ regulator-name = "vcc-dram";
+};
+
+®_dc1sw {
+ regulator-name = "vcc-dc1sw";
+};
+
+®_drivevbus {
+ regulator-name = "usb0-vbus";
+ status = "okay";
+};
+
+®_dldo1 {
+ regulator-always-on;
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-name = "vcc-dldo1";
+};
+
+®_eldo1 {
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-name = "vcc-eldo1";
+};
+
+®_eldo3 {
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-name = "vcc-eldo3";
+};
+
+®_fldo1 {
+ regulator-always-on;
+ regulator-min-microvolt = <900000>;
+ regulator-max-microvolt = <900000>;
+ regulator-name = "vdd-cpus-usb";
+};
+
+&uart0 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&uart0_pb_pins>;
+ status = "okay";
+};
+
+&usb_otg {
+ dr_mode = "otg";
+ status = "okay";
+};
+
+&usb_power_supply {
+ status = "okay";
+};
+
+&usbphy {
+ usb0_vbus-supply = <®_drivevbus>;
+ usb0_id_det-gpios = <&pio 7 8 GPIO_ACTIVE_HIGH>; /* PH8 */
+ status = "okay";
+};
--
2.46.4
^ permalink raw reply related [flat|nested] 14+ messages in thread
* Re: [PATCH 1/3] dt-bindings: vendor-prefixes: Add vendor prefix for Teclast
2026-09-14 21:01 ` [PATCH 1/3] dt-bindings: vendor-prefixes: Add vendor prefix for Teclast Andre Przywara
@ 2026-09-14 21:11 ` sashiko-bot
2026-09-14 22:53 ` Andre Przywara
2026-09-15 16:59 ` Conor Dooley
1 sibling, 1 reply; 14+ messages in thread
From: sashiko-bot @ 2026-09-14 21:11 UTC (permalink / raw)
To: Andre Przywara; +Cc: robh, devicetree, linux-sunxi, conor+dt
Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [Low] The newly added vendor prefix `^teclast,.*` is inserted out of alphabetical order.
--
commit 5eadfadaf4aefd64a40c08bf27f4fc8d4fc5a0a6
Author: Andre Przywara <andre.przywara@arm.com>
dt-bindings: vendor-prefixes: Add vendor prefix for Teclast
This commit adds a new vendor prefix for Teclast to the device tree
vendor-prefixes.yaml file. Teclast is a manufacturer of tablets, laptops,
and mini PCs.
Link: https://www.teclast.com [1]
> diff --git a/Documentation/devicetree/bindings/vendor-prefixes.yaml b/Documentation/devicetree/bindings/vendor-prefixes.yaml
> index ba20029693734..6da733d465a31 100644
> --- a/Documentation/devicetree/bindings/vendor-prefixes.yaml
> +++ b/Documentation/devicetree/bindings/vendor-prefixes.yaml
> @@ -1722,6 +1722,8 @@ patternProperties:
> description: Thundercomm Technology Co., Ltd.
> "^thwc,.*":
> description: Shenzhen Tong Heng Wei Chuang Technology Co., Ltd.
> + "^teclast,.*":
> + description: Teclast
[Severity: Low]
Is this newly added vendor prefix inserted out of alphabetical order?
In the patternProperties section of vendor-prefixes.yaml, there is a
requirement to keep the list in alphabetical order. Alphabetically, the
entry "^teclast,.*" should be placed after "^techwell,.*" and before
"^teejet,.*", rather than after "^thwc,.*".
> "^ti,.*":
> description: Texas Instruments
> "^tianma,.*":
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260914210115.28151-1-andre.przywara@arm.com?part=1
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH 2/3] dt-bindings: arm: sunxi: Add two Teclast tablets
2026-09-14 21:01 ` [PATCH 2/3] dt-bindings: arm: sunxi: Add two Teclast tablets Andre Przywara
@ 2026-09-14 21:19 ` sashiko-bot
2026-09-14 22:51 ` Andre Przywara
2026-09-18 6:55 ` Krzysztof Kozlowski
1 sibling, 1 reply; 14+ messages in thread
From: sashiko-bot @ 2026-09-14 21:19 UTC (permalink / raw)
To: Andre Przywara; +Cc: robh, devicetree, linux-sunxi, conor+dt
Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [High] Missing SoC fallback compatible string 'allwinner,sun50i-a100' for the Teclast P80 tablet breaks CPU frequency scaling.
--
commit 582b866f1ad9000afddf47eb7e4c9d37a95dfbc8
Author: Andre Przywara <andre.przywara@arm.com>
dt-bindings: arm: sunxi: Add two Teclast tablets
This commit adds devicetree bindings for the Teclast P80 and P85T tablets.
The Teclast P80 is based on the Allwinner A133 SoC, and the P85T uses the
Allwinner A523 SoC.
> diff --git a/Documentation/devicetree/bindings/arm/sunxi.yaml b/Documentation/devicetree/bindings/arm/sunxi.yaml
> index f04db28c630ac..28437c47ac01b 100644
> --- a/Documentation/devicetree/bindings/arm/sunxi.yaml
> +++ b/Documentation/devicetree/bindings/arm/sunxi.yaml
> @@ -933,6 +933,16 @@ properties:
[ ... ]
> + - description: Teclast P80 Tablet
> + items:
> + - const: teclast,p80
> + - const: allwinner,sun50i-a133
[Severity: High]
Does this strict two-item compatible array omit the necessary fallback string?
The sun50i-cpufreq-nvmem driver in drivers/cpufreq/sun50i-cpufreq-nvmem.c
requires allwinner,sun50i-a100 to exist in the root node's compatible array
to bind via of_machine_device_match(sun50i_cpufreq_match_list).
Without this fallback string included in the bindings (and subsequently the
board's Device Tree), cpufreq-dt will not be instantiated. This will cause
CPU frequency scaling to silently fail on the Teclast P80 tablet, leaving
the system stuck at the bootloader-configured frequency.
> +
> + - description: Teclast P85T Tablet
> + items:
> + - const: teclast,p85t
> + - const: allwinner,sun55i-a523
> +
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260914210115.28151-1-andre.przywara@arm.com?part=2
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH 2/3] dt-bindings: arm: sunxi: Add two Teclast tablets
2026-09-14 21:19 ` sashiko-bot
@ 2026-09-14 22:51 ` Andre Przywara
2026-09-15 16:58 ` Conor Dooley
0 siblings, 1 reply; 14+ messages in thread
From: Andre Przywara @ 2026-09-14 22:51 UTC (permalink / raw)
To: sashiko-bot; +Cc: sashiko-reviews, robh, devicetree, linux-sunxi, conor+dt
On Mon, 14 Sep 2026 21:19:39 +0000
sashiko-bot@kernel.org wrote:
> Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
> - [High] Missing SoC fallback compatible string 'allwinner,sun50i-a100' for the Teclast P80 tablet breaks CPU frequency scaling.
Well, there is more to it. We should rather add the a133 as an explicit
name in the driver, like we did for the H616 family. And the whole OPP
table is still from the old A100 days, it doesn't really cover the A133
or A133P values, which go up to 1.6GHz and 2.0 GHz, respectively.
The bin selection in the driver is also not adequate, the BSP code
seems to use the SID cell at 0x00 to select one of two speed bins, at
least for the A133. The A133P is probably still different.
So I'd rather keep the a133 fallback compatible, and adjust the driver.
Cheers,
Andre
> --
>
> commit 582b866f1ad9000afddf47eb7e4c9d37a95dfbc8
> Author: Andre Przywara <andre.przywara@arm.com>
>
> dt-bindings: arm: sunxi: Add two Teclast tablets
>
> This commit adds devicetree bindings for the Teclast P80 and P85T tablets.
> The Teclast P80 is based on the Allwinner A133 SoC, and the P85T uses the
> Allwinner A523 SoC.
>
> > diff --git a/Documentation/devicetree/bindings/arm/sunxi.yaml b/Documentation/devicetree/bindings/arm/sunxi.yaml
> > index f04db28c630ac..28437c47ac01b 100644
> > --- a/Documentation/devicetree/bindings/arm/sunxi.yaml
> > +++ b/Documentation/devicetree/bindings/arm/sunxi.yaml
> > @@ -933,6 +933,16 @@ properties:
>
> [ ... ]
>
> > + - description: Teclast P80 Tablet
> > + items:
> > + - const: teclast,p80
> > + - const: allwinner,sun50i-a133
>
> [Severity: High]
> Does this strict two-item compatible array omit the necessary fallback string?
>
> The sun50i-cpufreq-nvmem driver in drivers/cpufreq/sun50i-cpufreq-nvmem.c
> requires allwinner,sun50i-a100 to exist in the root node's compatible array
> to bind via of_machine_device_match(sun50i_cpufreq_match_list).
>
> Without this fallback string included in the bindings (and subsequently the
> board's Device Tree), cpufreq-dt will not be instantiated. This will cause
> CPU frequency scaling to silently fail on the Teclast P80 tablet, leaving
> the system stuck at the bootloader-configured frequency.
>
> > +
> > + - description: Teclast P85T Tablet
> > + items:
> > + - const: teclast,p85t
> > + - const: allwinner,sun55i-a523
> > +
>
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH 1/3] dt-bindings: vendor-prefixes: Add vendor prefix for Teclast
2026-09-14 21:11 ` sashiko-bot
@ 2026-09-14 22:53 ` Andre Przywara
0 siblings, 0 replies; 14+ messages in thread
From: Andre Przywara @ 2026-09-14 22:53 UTC (permalink / raw)
To: sashiko-bot; +Cc: sashiko-reviews, robh, devicetree, linux-sunxi, conor+dt
On Mon, 14 Sep 2026 21:11:38 +0000
sashiko-bot@kernel.org wrote:
> Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
> - [Low] The newly added vendor prefix `^teclast,.*` is inserted out of alphabetical order.
argh, of course, was kind of blind here, I guess.
> --
>
> commit 5eadfadaf4aefd64a40c08bf27f4fc8d4fc5a0a6
> Author: Andre Przywara <andre.przywara@arm.com>
>
> dt-bindings: vendor-prefixes: Add vendor prefix for Teclast
>
> This commit adds a new vendor prefix for Teclast to the device tree
> vendor-prefixes.yaml file. Teclast is a manufacturer of tablets, laptops,
> and mini PCs.
>
> Link: https://www.teclast.com [1]
>
> > diff --git a/Documentation/devicetree/bindings/vendor-prefixes.yaml b/Documentation/devicetree/bindings/vendor-prefixes.yaml
> > index ba20029693734..6da733d465a31 100644
> > --- a/Documentation/devicetree/bindings/vendor-prefixes.yaml
> > +++ b/Documentation/devicetree/bindings/vendor-prefixes.yaml
> > @@ -1722,6 +1722,8 @@ patternProperties:
> > description: Thundercomm Technology Co., Ltd.
> > "^thwc,.*":
> > description: Shenzhen Tong Heng Wei Chuang Technology Co., Ltd.
> > + "^teclast,.*":
> > + description: Teclast
>
> [Severity: Low]
> Is this newly added vendor prefix inserted out of alphabetical order?
>
> In the patternProperties section of vendor-prefixes.yaml, there is a
> requirement to keep the list in alphabetical order. Alphabetically, the
> entry "^teclast,.*" should be placed after "^techwell,.*" and before
> "^teejet,.*", rather than after "^thwc,.*".
>
> > "^ti,.*":
> > description: Texas Instruments
> > "^tianma,.*":
>
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH 2/3] dt-bindings: arm: sunxi: Add two Teclast tablets
2026-09-14 22:51 ` Andre Przywara
@ 2026-09-15 16:58 ` Conor Dooley
2026-09-15 21:01 ` Andre Przywara
0 siblings, 1 reply; 14+ messages in thread
From: Conor Dooley @ 2026-09-15 16:58 UTC (permalink / raw)
To: Andre Przywara
Cc: sashiko-bot, sashiko-reviews, robh, devicetree, linux-sunxi,
conor+dt
[-- Attachment #1: Type: text/plain, Size: 2935 bytes --]
On Tue, Sep 15, 2026 at 12:51:22AM +0200, Andre Przywara wrote:
> On Mon, 14 Sep 2026 21:19:39 +0000
> sashiko-bot@kernel.org wrote:
>
> > Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
> > - [High] Missing SoC fallback compatible string 'allwinner,sun50i-a100' for the Teclast P80 tablet breaks CPU frequency scaling.
>
> Well, there is more to it. We should rather add the a133 as an explicit
> name in the driver, like we did for the H616 family. And the whole OPP
> table is still from the old A100 days, it doesn't really cover the A133
> or A133P values, which go up to 1.6GHz and 2.0 GHz, respectively.
> The bin selection in the driver is also not adequate, the BSP code
> seems to use the SID cell at 0x00 to select one of two speed bins, at
> least for the A133. The A133P is probably still different.
>
> So I'd rather keep the a133 fallback compatible, and adjust the driver.
Can you explain the complaint from Sashiko to me?
From where I am sitting, without awareness of allwinner SKUs, it seems
like the bot is suggesting that you add a "random" fallback to make a
driver probe.
>
> Cheers,
> Andre
>
> > --
> >
> > commit 582b866f1ad9000afddf47eb7e4c9d37a95dfbc8
> > Author: Andre Przywara <andre.przywara@arm.com>
> >
> > dt-bindings: arm: sunxi: Add two Teclast tablets
> >
> > This commit adds devicetree bindings for the Teclast P80 and P85T tablets.
> > The Teclast P80 is based on the Allwinner A133 SoC, and the P85T uses the
> > Allwinner A523 SoC.
> >
> > > diff --git a/Documentation/devicetree/bindings/arm/sunxi.yaml b/Documentation/devicetree/bindings/arm/sunxi.yaml
> > > index f04db28c630ac..28437c47ac01b 100644
> > > --- a/Documentation/devicetree/bindings/arm/sunxi.yaml
> > > +++ b/Documentation/devicetree/bindings/arm/sunxi.yaml
> > > @@ -933,6 +933,16 @@ properties:
> >
> > [ ... ]
> >
> > > + - description: Teclast P80 Tablet
> > > + items:
> > > + - const: teclast,p80
> > > + - const: allwinner,sun50i-a133
> >
> > [Severity: High]
> > Does this strict two-item compatible array omit the necessary fallback string?
> >
> > The sun50i-cpufreq-nvmem driver in drivers/cpufreq/sun50i-cpufreq-nvmem.c
> > requires allwinner,sun50i-a100 to exist in the root node's compatible array
> > to bind via of_machine_device_match(sun50i_cpufreq_match_list).
> >
> > Without this fallback string included in the bindings (and subsequently the
> > board's Device Tree), cpufreq-dt will not be instantiated. This will cause
> > CPU frequency scaling to silently fail on the Teclast P80 tablet, leaving
> > the system stuck at the bootloader-configured frequency.
> >
> > > +
> > > + - description: Teclast P85T Tablet
> > > + items:
> > > + - const: teclast,p85t
> > > + - const: allwinner,sun55i-a523
> > > +
> >
>
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH 1/3] dt-bindings: vendor-prefixes: Add vendor prefix for Teclast
2026-09-14 21:01 ` [PATCH 1/3] dt-bindings: vendor-prefixes: Add vendor prefix for Teclast Andre Przywara
2026-09-14 21:11 ` sashiko-bot
@ 2026-09-15 16:59 ` Conor Dooley
1 sibling, 0 replies; 14+ messages in thread
From: Conor Dooley @ 2026-09-15 16:59 UTC (permalink / raw)
To: Andre Przywara
Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai,
Jernej Skrabec, Samuel Holland, Paul Kocialkowski, devicetree,
linux-arm-kernel, linux-sunxi
[-- Attachment #1: Type: text/plain, Size: 75 bytes --]
Acked-by: Conor Dooley <conor.dooley@microchip.com>
pw-bot: not-applicable
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH 2/3] dt-bindings: arm: sunxi: Add two Teclast tablets
2026-09-15 16:58 ` Conor Dooley
@ 2026-09-15 21:01 ` Andre Przywara
2026-09-16 16:20 ` Conor
0 siblings, 1 reply; 14+ messages in thread
From: Andre Przywara @ 2026-09-15 21:01 UTC (permalink / raw)
To: Conor Dooley
Cc: sashiko-bot, sashiko-reviews, robh, devicetree, linux-sunxi,
conor+dt
On Tue, 15 Sep 2026 17:58:50 +0100
Conor Dooley <conor@kernel.org> wrote:
Hi Conor,
> On Tue, Sep 15, 2026 at 12:51:22AM +0200, Andre Przywara wrote:
> > On Mon, 14 Sep 2026 21:19:39 +0000
> > sashiko-bot@kernel.org wrote:
> >
> > > Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
> > > - [High] Missing SoC fallback compatible string 'allwinner,sun50i-a100' for the Teclast P80 tablet breaks CPU frequency scaling.
> >
> > Well, there is more to it. We should rather add the a133 as an explicit
> > name in the driver, like we did for the H616 family. And the whole OPP
> > table is still from the old A100 days, it doesn't really cover the A133
> > or A133P values, which go up to 1.6GHz and 2.0 GHz, respectively.
> > The bin selection in the driver is also not adequate, the BSP code
> > seems to use the SID cell at 0x00 to select one of two speed bins, at
> > least for the A133. The A133P is probably still different.
> >
> > So I'd rather keep the a133 fallback compatible, and adjust the driver.
>
> Can you explain the complaint from Sashiko to me?
> From where I am sitting, without awareness of allwinner SKUs, it seems
> like the bot is suggesting that you add a "random" fallback to make a
> driver probe.
Well, this is about the DVFS driver, which doesn't really have a nice
device to match against. The nodes under /cpus carry the cores, but
there is no notion of a SoC here, it's just about architectural Arm
cores. So the solution was to match this against the machine (fallback)
compatible, which always carries the SoC name. I think other platforms
do the same.
And while we have DVFS support for the A133, this only supports the
"allwinner,sun50i-a100" fallback string, as this was the only chip of
that "family" at time of upstreaming. The A133 is using the same
die, it's just a better bin, but there are virtually no A100 devices out
there, as they were superseded by the A133 very quickly.
So what Sashiko (somewhat correctly) mentions is that with that
a100 fallback string we won't get DVFS support. It feels odd to name
that tablet A100 when it's clearly not, so I went with the proper SoC
name.
We did the same for the H616 family: just adding all the names using
the same die to the DVFS driver will solve this problem as well, which
is what I am planning to do - unless people have different opinions.
Hope that helps!
Cheers,
Andre
> >
> > Cheers,
> > Andre
> >
> > > --
> > >
> > > commit 582b866f1ad9000afddf47eb7e4c9d37a95dfbc8
> > > Author: Andre Przywara <andre.przywara@arm.com>
> > >
> > > dt-bindings: arm: sunxi: Add two Teclast tablets
> > >
> > > This commit adds devicetree bindings for the Teclast P80 and P85T tablets.
> > > The Teclast P80 is based on the Allwinner A133 SoC, and the P85T uses the
> > > Allwinner A523 SoC.
> > >
> > > > diff --git a/Documentation/devicetree/bindings/arm/sunxi.yaml b/Documentation/devicetree/bindings/arm/sunxi.yaml
> > > > index f04db28c630ac..28437c47ac01b 100644
> > > > --- a/Documentation/devicetree/bindings/arm/sunxi.yaml
> > > > +++ b/Documentation/devicetree/bindings/arm/sunxi.yaml
> > > > @@ -933,6 +933,16 @@ properties:
> > >
> > > [ ... ]
> > >
> > > > + - description: Teclast P80 Tablet
> > > > + items:
> > > > + - const: teclast,p80
> > > > + - const: allwinner,sun50i-a133
> > >
> > > [Severity: High]
> > > Does this strict two-item compatible array omit the necessary fallback string?
> > >
> > > The sun50i-cpufreq-nvmem driver in drivers/cpufreq/sun50i-cpufreq-nvmem.c
> > > requires allwinner,sun50i-a100 to exist in the root node's compatible array
> > > to bind via of_machine_device_match(sun50i_cpufreq_match_list).
> > >
> > > Without this fallback string included in the bindings (and subsequently the
> > > board's Device Tree), cpufreq-dt will not be instantiated. This will cause
> > > CPU frequency scaling to silently fail on the Teclast P80 tablet, leaving
> > > the system stuck at the bootloader-configured frequency.
> > >
> > > > +
> > > > + - description: Teclast P85T Tablet
> > > > + items:
> > > > + - const: teclast,p85t
> > > > + - const: allwinner,sun55i-a523
> > > > +
> > >
> >
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH 2/3] dt-bindings: arm: sunxi: Add two Teclast tablets
2026-09-15 21:01 ` Andre Przywara
@ 2026-09-16 16:20 ` Conor
0 siblings, 0 replies; 14+ messages in thread
From: Conor @ 2026-09-16 16:20 UTC (permalink / raw)
To: Andre Przywara, Conor Dooley
Cc: sashiko-bot, sashiko-reviews, robh, devicetree, linux-sunxi,
conor+dt
On 15 September 2026 23:01:27 GMT+02:00, Andre Przywara <andre.przywara@arm.com> wrote:
>On Tue, 15 Sep 2026 17:58:50 +0100
>Conor Dooley <conor@kernel.org> wrote:
>
>Hi Conor,
>
>> On Tue, Sep 15, 2026 at 12:51:22AM +0200, Andre Przywara wrote:
>> > On Mon, 14 Sep 2026 21:19:39 +0000
>> > sashiko-bot@kernel.org wrote:
>> >
>> > > Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
>> > > - [High] Missing SoC fallback compatible string 'allwinner,sun50i-a100' for the Teclast P80 tablet breaks CPU frequency scaling.
>> >
>> > Well, there is more to it. We should rather add the a133 as an explicit
>> > name in the driver, like we did for the H616 family. And the whole OPP
>> > table is still from the old A100 days, it doesn't really cover the A133
>> > or A133P values, which go up to 1.6GHz and 2.0 GHz, respectively.
>> > The bin selection in the driver is also not adequate, the BSP code
>> > seems to use the SID cell at 0x00 to select one of two speed bins, at
>> > least for the A133. The A133P is probably still different.
>> >
>> > So I'd rather keep the a133 fallback compatible, and adjust the driver.
>>
>> Can you explain the complaint from Sashiko to me?
>> From where I am sitting, without awareness of allwinner SKUs, it seems
>> like the bot is suggesting that you add a "random" fallback to make a
>> driver probe.
>
>Well, this is about the DVFS driver, which doesn't really have a nice
>device to match against. The nodes under /cpus carry the cores, but
>there is no notion of a SoC here, it's just about architectural Arm
>cores. So the solution was to match this against the machine (fallback)
>compatible, which always carries the SoC name. I think other platforms
>do the same.
Yeah, I get this part.
>And while we have DVFS support for the A133, this only supports the
>"allwinner,sun50i-a100" fallback string, as this was the only chip of
>that "family" at time of upstreaming. The A133 is using the same
>die, it's just a better bin, but there are virtually no A100 devices out
>there, as they were superseded by the A133 very quickly.
>
>So what Sashiko (somewhat correctly) mentions is that with that
>a100 fallback string we won't get DVFS support. It feels odd to name
>that tablet A100 when it's clearly not, so I went with the proper SoC
>name.
>We did the same for the H616 family: just adding all the names using
>the same die to the DVFS driver will solve this problem as well, which
>is what I am planning to do - unless people have different opinions.
>
>Hope that helps!
So yeah, it bottles down to Sashiko suggesting that you use in invalid fallback given you mention a different programming model, although mitigated somewhat by the fact that a100 is a worse binning and is probably compatible outside of dvfs.
I'm just very wary of what sort of garbage that Sashiko will tell contributors that, unlike you, don't know enough to realise what it is telling them is wrong.
(Sent from my k9mail, hopefully formatting didn't get screwed up).
Conor.
>
>Cheers,
>Andre
>
>
>
>> >
>> > Cheers,
>> > Andre
>> >
>> > > --
>> > >
>> > > commit 582b866f1ad9000afddf47eb7e4c9d37a95dfbc8
>> > > Author: Andre Przywara <andre.przywara@arm.com>
>> > >
>> > > dt-bindings: arm: sunxi: Add two Teclast tablets
>> > >
>> > > This commit adds devicetree bindings for the Teclast P80 and P85T tablets.
>> > > The Teclast P80 is based on the Allwinner A133 SoC, and the P85T uses the
>> > > Allwinner A523 SoC.
>> > >
>> > > > diff --git a/Documentation/devicetree/bindings/arm/sunxi.yaml b/Documentation/devicetree/bindings/arm/sunxi.yaml
>> > > > index f04db28c630ac..28437c47ac01b 100644
>> > > > --- a/Documentation/devicetree/bindings/arm/sunxi.yaml
>> > > > +++ b/Documentation/devicetree/bindings/arm/sunxi.yaml
>> > > > @@ -933,6 +933,16 @@ properties:
>> > >
>> > > [ ... ]
>> > >
>> > > > + - description: Teclast P80 Tablet
>> > > > + items:
>> > > > + - const: teclast,p80
>> > > > + - const: allwinner,sun50i-a133
>> > >
>> > > [Severity: High]
>> > > Does this strict two-item compatible array omit the necessary fallback string?
>> > >
>> > > The sun50i-cpufreq-nvmem driver in drivers/cpufreq/sun50i-cpufreq-nvmem.c
>> > > requires allwinner,sun50i-a100 to exist in the root node's compatible array
>> > > to bind via of_machine_device_match(sun50i_cpufreq_match_list).
>> > >
>> > > Without this fallback string included in the bindings (and subsequently the
>> > > board's Device Tree), cpufreq-dt will not be instantiated. This will cause
>> > > CPU frequency scaling to silently fail on the Teclast P80 tablet, leaving
>> > > the system stuck at the bootloader-configured frequency.
>> > >
>> > > > +
>> > > > + - description: Teclast P85T Tablet
>> > > > + items:
>> > > > + - const: teclast,p85t
>> > > > + - const: allwinner,sun55i-a523
>> > > > +
>> > >
>> >
>
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH 2/3] dt-bindings: arm: sunxi: Add two Teclast tablets
2026-09-14 21:01 ` [PATCH 2/3] dt-bindings: arm: sunxi: Add two Teclast tablets Andre Przywara
2026-09-14 21:19 ` sashiko-bot
@ 2026-09-18 6:55 ` Krzysztof Kozlowski
1 sibling, 0 replies; 14+ messages in thread
From: Krzysztof Kozlowski @ 2026-09-18 6:55 UTC (permalink / raw)
To: Andre Przywara
Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai,
Jernej Skrabec, Samuel Holland, Paul Kocialkowski, devicetree,
linux-arm-kernel, linux-sunxi
On Mon, Sep 14, 2026 at 11:01:14PM +0200, Andre Przywara wrote:
> Teclast produces some entry-level tablets with Allwinner SoCs, typically
> featuring a new SoC early in the market.
>
> Add the names for the Teclast P80 tablet, with an Allwinner A133 SoC,
> but also the Teclast P85T, using an Allwinner A523 chip.
>
> Signed-off-by: Andre Przywara <andre.przywara@arm.com>
> ---
> Documentation/devicetree/bindings/arm/sunxi.yaml | 10 ++++++++++
> 1 file changed, 10 insertions(+)
As discussed, Sashiko's comment is not really applicable, because we do
not add fallbacks to match driver behavior or to achieve some desired
driver feature.
Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH 0/3] dts: allwinner: Add Teclast P80 tablet support
2026-09-14 21:01 [PATCH 0/3] dts: allwinner: Add Teclast P80 tablet support Andre Przywara
` (2 preceding siblings ...)
2026-09-14 21:01 ` [PATCH 3/3] arm64: dts: allwinner: A133: add basic support for Teclast P80 tablet Andre Przywara
@ 2026-09-21 15:59 ` Chen-Yu Tsai
3 siblings, 0 replies; 14+ messages in thread
From: Chen-Yu Tsai @ 2026-09-21 15:59 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Jernej Skrabec,
Samuel Holland, Andre Przywara
Cc: Paul Kocialkowski, devicetree, linux-arm-kernel, linux-sunxi
On Mon, 14 Sep 2026 23:01:12 +0200, Andre Przywara wrote:
> The Teclast P80 tablet is an entry-level tablet with an 8inch screen
> and an Allwinner A133 quad-A53 SoC. There are other tablets using
> the P80 name, this here is about the "G4" version from 2020.
>
> Contains the typical triad of DT support patches: vendor prefix, machine
> compatible binding, board .dts file.
>
> [...]
Applied to sunxi/dt-for-7.4 in sunxi, thanks!
[1/3] dt-bindings: vendor-prefixes: Add vendor prefix for Teclast
https://git.kernel.org/sunxi/linux/c/cb81a22504f4
[2/3] dt-bindings: arm: sunxi: Add two Teclast tablets
https://git.kernel.org/sunxi/linux/c/87d5ec9b808f
[3/3] arm64: dts: allwinner: A133: add basic support for Teclast P80 tablet
https://git.kernel.org/sunxi/linux/c/60b064eb82e6
Best regards,
--
Chen-Yu Tsai <wens@kernel.org>
^ permalink raw reply [flat|nested] 14+ messages in thread
end of thread, other threads:[~2026-09-21 15:59 UTC | newest]
Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-09-14 21:01 [PATCH 0/3] dts: allwinner: Add Teclast P80 tablet support Andre Przywara
2026-09-14 21:01 ` [PATCH 1/3] dt-bindings: vendor-prefixes: Add vendor prefix for Teclast Andre Przywara
2026-09-14 21:11 ` sashiko-bot
2026-09-14 22:53 ` Andre Przywara
2026-09-15 16:59 ` Conor Dooley
2026-09-14 21:01 ` [PATCH 2/3] dt-bindings: arm: sunxi: Add two Teclast tablets Andre Przywara
2026-09-14 21:19 ` sashiko-bot
2026-09-14 22:51 ` Andre Przywara
2026-09-15 16:58 ` Conor Dooley
2026-09-15 21:01 ` Andre Przywara
2026-09-16 16:20 ` Conor
2026-09-18 6:55 ` Krzysztof Kozlowski
2026-09-14 21:01 ` [PATCH 3/3] arm64: dts: allwinner: A133: add basic support for Teclast P80 tablet Andre Przywara
2026-09-21 15:59 ` [PATCH 0/3] dts: allwinner: Add Teclast P80 tablet support Chen-Yu Tsai
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox