* [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
* 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 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 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
* [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
* 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 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 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
* [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 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