* [PATCH v2 0/3] Add support for Baijie Helper A133 board
@ 2026-05-10 20:16 Alexander Sverdlin
2026-05-10 20:16 ` [PATCH v2 1/3] dt-bindings: vendor-prefixes: Add Shenzhen Baijie Technology Co., Ltd Alexander Sverdlin
` (2 more replies)
0 siblings, 3 replies; 8+ messages in thread
From: Alexander Sverdlin @ 2026-05-10 20:16 UTC (permalink / raw)
To: linux-sunxi
Cc: Alexander Sverdlin, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Chen-Yu Tsai, Jernej Skrabec, Samuel Holland,
Andre Przywara, devicetree, linux-arm-kernel, linux-kernel
Baijie Helper A133 board is a development board around Baijie A133 Core
SBC. Features:
- 1/2/4GiB LPDDR4 DRAM
- 8/16/32GiB eMMC
- AXP707 PMIC
- 2 USB 2.0 ports
- MicroSD slot and on-board eMMC module
- Gigabit Ethernet
- Bluetooth
- WiFi
Add initial support for both the Helper and Core boards, including UART,
PMU, eMMC, USB, Ethernet.
Link: https://szbaijie.com/index/product/product_detail.html?product_id=23&language=en
Changelog:
v2:
- introduced baijie,helper-a133-core compatible for the Core (SoM) board
v1:
- https://lore.kernel.org/all/20260503191842.2736130-1-alexander.sverdlin@gmail.com/
Alexander Sverdlin (3):
dt-bindings: vendor-prefixes: Add Shenzhen Baijie Technology Co., Ltd.
dt-bindings: arm: sunxi: Add Baijie HelperBoard A133 compatible
arm64: dts: allwinner: A133: add support for Baijie Helper A133 board
.../devicetree/bindings/arm/sunxi.yaml | 11 ++
.../devicetree/bindings/vendor-prefixes.yaml | 2 +
arch/arm64/boot/dts/allwinner/Makefile | 1 +
.../dts/allwinner/sun50i-a133-baije-core.dtsi | 162 ++++++++++++++++++
.../allwinner/sun50i-a133-baijie-helper.dts | 94 ++++++++++
5 files changed, 270 insertions(+)
create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-a133-baije-core.dtsi
create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-a133-baijie-helper.dts
--
2.54.0
^ permalink raw reply [flat|nested] 8+ messages in thread* [PATCH v2 1/3] dt-bindings: vendor-prefixes: Add Shenzhen Baijie Technology Co., Ltd. 2026-05-10 20:16 [PATCH v2 0/3] Add support for Baijie Helper A133 board Alexander Sverdlin @ 2026-05-10 20:16 ` Alexander Sverdlin 2026-05-10 20:16 ` [PATCH v2 2/3] dt-bindings: arm: sunxi: Add Baijie HelperBoard A133 compatible Alexander Sverdlin 2026-05-10 20:16 ` [PATCH v2 3/3] arm64: dts: allwinner: A133: add support for Baijie Helper A133 board Alexander Sverdlin 2 siblings, 0 replies; 8+ messages in thread From: Alexander Sverdlin @ 2026-05-10 20:16 UTC (permalink / raw) To: linux-sunxi Cc: Alexander Sverdlin, Rob Herring, Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec, Samuel Holland, Andre Przywara, devicetree, linux-arm-kernel, linux-kernel, Conor Dooley Shenzhen Baijie Technology Co., Ltd. focuses on R&D and production of embedded products as well as customization of embedded solutions. Link: https://szbaijie.com/ Acked-by: Conor Dooley <conor.dooley@microchip.com> Signed-off-by: Alexander Sverdlin <alexander.sverdlin@gmail.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 28784d66ae7b..095cf654787f 100644 --- a/Documentation/devicetree/bindings/vendor-prefixes.yaml +++ b/Documentation/devicetree/bindings/vendor-prefixes.yaml @@ -229,6 +229,8 @@ patternProperties: description: Azoteq (Pty) Ltd "^azw,.*": description: Shenzhen AZW Technology Co., Ltd. + "^baijie,.*": + description: Shenzhen Baijie Technology Co., Ltd. "^baikal,.*": description: BAIKAL ELECTRONICS, JSC "^bananapi,.*": -- 2.54.0 ^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH v2 2/3] dt-bindings: arm: sunxi: Add Baijie HelperBoard A133 compatible 2026-05-10 20:16 [PATCH v2 0/3] Add support for Baijie Helper A133 board Alexander Sverdlin 2026-05-10 20:16 ` [PATCH v2 1/3] dt-bindings: vendor-prefixes: Add Shenzhen Baijie Technology Co., Ltd Alexander Sverdlin @ 2026-05-10 20:16 ` Alexander Sverdlin 2026-05-11 16:08 ` Conor Dooley 2026-05-10 20:16 ` [PATCH v2 3/3] arm64: dts: allwinner: A133: add support for Baijie Helper A133 board Alexander Sverdlin 2 siblings, 1 reply; 8+ messages in thread From: Alexander Sverdlin @ 2026-05-10 20:16 UTC (permalink / raw) To: linux-sunxi Cc: Alexander Sverdlin, Rob Herring, Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec, Samuel Holland, Andre Przywara, devicetree, linux-arm-kernel, linux-kernel Baijie HelperBoard A133 is a development board around their A133 Core board. Introduce a compatible for both the Core and the development boards. Signed-off-by: Alexander Sverdlin <alexander.sverdlin@gmail.com> --- Changelog: v2: - introduced baijie,helper-a133-core compatible for the Core (SoM) board Documentation/devicetree/bindings/arm/sunxi.yaml | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/Documentation/devicetree/bindings/arm/sunxi.yaml b/Documentation/devicetree/bindings/arm/sunxi.yaml index e6443c266fa1..d7b9dec81165 100644 --- a/Documentation/devicetree/bindings/arm/sunxi.yaml +++ b/Documentation/devicetree/bindings/arm/sunxi.yaml @@ -96,6 +96,17 @@ properties: - const: allwinner,ba10-tvbox - const: allwinner,sun4i-a10 + - description: Baijie Helper A133 + items: + - const: baijie,helper-a133 + - const: baijie,helper-a133-core + - const: allwinner,sun50i-a100 + + - description: HelperBoardA133 Core + items: + - const: baijie,helper-a133-core + - const: allwinner,sun50i-a100 + - description: BananaPi items: - const: lemaker,bananapi -- 2.54.0 ^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH v2 2/3] dt-bindings: arm: sunxi: Add Baijie HelperBoard A133 compatible 2026-05-10 20:16 ` [PATCH v2 2/3] dt-bindings: arm: sunxi: Add Baijie HelperBoard A133 compatible Alexander Sverdlin @ 2026-05-11 16:08 ` Conor Dooley 2026-05-11 16:18 ` Alexander Sverdlin 0 siblings, 1 reply; 8+ messages in thread From: Conor Dooley @ 2026-05-11 16:08 UTC (permalink / raw) To: Alexander Sverdlin Cc: linux-sunxi, Rob Herring, Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec, Samuel Holland, Andre Przywara, devicetree, linux-arm-kernel, linux-kernel [-- Attachment #1: Type: text/plain, Size: 1471 bytes --] On Sun, May 10, 2026 at 10:16:39PM +0200, Alexander Sverdlin wrote: > Baijie HelperBoard A133 is a development board around their A133 Core > board. Introduce a compatible for both the Core and the development > boards. > > Signed-off-by: Alexander Sverdlin <alexander.sverdlin@gmail.com> > --- > > Changelog: > v2: > - introduced baijie,helper-a133-core compatible for the Core (SoM) board > > Documentation/devicetree/bindings/arm/sunxi.yaml | 11 +++++++++++ > 1 file changed, 11 insertions(+) > > diff --git a/Documentation/devicetree/bindings/arm/sunxi.yaml b/Documentation/devicetree/bindings/arm/sunxi.yaml > index e6443c266fa1..d7b9dec81165 100644 > --- a/Documentation/devicetree/bindings/arm/sunxi.yaml > +++ b/Documentation/devicetree/bindings/arm/sunxi.yaml > @@ -96,6 +96,17 @@ properties: > - const: allwinner,ba10-tvbox > - const: allwinner,sun4i-a10 > > + - description: Baijie Helper A133 > + items: > + - const: baijie,helper-a133 > + - const: baijie,helper-a133-core > + - const: allwinner,sun50i-a100 > + > + - description: HelperBoardA133 Core > + items: > + - const: baijie,helper-a133-core > + - const: allwinner,sun50i-a100 Does this make sense? Can the core board be used without a carrier? > + > - description: BananaPi > items: > - const: lemaker,bananapi > -- > 2.54.0 > [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 228 bytes --] ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH v2 2/3] dt-bindings: arm: sunxi: Add Baijie HelperBoard A133 compatible 2026-05-11 16:08 ` Conor Dooley @ 2026-05-11 16:18 ` Alexander Sverdlin 2026-05-11 16:34 ` Conor Dooley 0 siblings, 1 reply; 8+ messages in thread From: Alexander Sverdlin @ 2026-05-11 16:18 UTC (permalink / raw) To: Conor Dooley Cc: linux-sunxi, Rob Herring, Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec, Samuel Holland, Andre Przywara, devicetree, linux-arm-kernel, linux-kernel Hi Conor, On Mon, 2026-05-11 at 17:08 +0100, Conor Dooley wrote: > > Baijie HelperBoard A133 is a development board around their A133 Core > > board. Introduce a compatible for both the Core and the development > > boards. > > > > Signed-off-by: Alexander Sverdlin <alexander.sverdlin@gmail.com> > > --- > > > > Changelog: > > v2: > > - introduced baijie,helper-a133-core compatible for the Core (SoM) board > > > > Documentation/devicetree/bindings/arm/sunxi.yaml | 11 +++++++++++ > > 1 file changed, 11 insertions(+) > > > > diff --git a/Documentation/devicetree/bindings/arm/sunxi.yaml b/Documentation/devicetree/bindings/arm/sunxi.yaml > > index e6443c266fa1..d7b9dec81165 100644 > > --- a/Documentation/devicetree/bindings/arm/sunxi.yaml > > +++ b/Documentation/devicetree/bindings/arm/sunxi.yaml > > @@ -96,6 +96,17 @@ properties: > > - const: allwinner,ba10-tvbox > > - const: allwinner,sun4i-a10 > > > > + - description: Baijie Helper A133 > > + items: > > + - const: baijie,helper-a133 > > + - const: baijie,helper-a133-core > > + - const: allwinner,sun50i-a100 > > + > > + - description: HelperBoardA133 Core > > + items: > > + - const: baijie,helper-a133-core > > + - const: allwinner,sun50i-a100 > > Does this make sense? Can the core board be used without a carrier? such operation would be impractical at least, that's why in my v1 Core board didn't have its own compatible. Maybe I didn't understand you correctly. Shall I drop the above 4 lines, the compatible property from the root in sun50i-a133-baije-core.dtsi and only leave sun50i-a133-baijie-helper.dtb with 3-strings compatible as it is now in v2? -- Alexander Sverdlin. ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH v2 2/3] dt-bindings: arm: sunxi: Add Baijie HelperBoard A133 compatible 2026-05-11 16:18 ` Alexander Sverdlin @ 2026-05-11 16:34 ` Conor Dooley 0 siblings, 0 replies; 8+ messages in thread From: Conor Dooley @ 2026-05-11 16:34 UTC (permalink / raw) To: Alexander Sverdlin Cc: linux-sunxi, Rob Herring, Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec, Samuel Holland, Andre Przywara, devicetree, linux-arm-kernel, linux-kernel [-- Attachment #1: Type: text/plain, Size: 2300 bytes --] On Mon, May 11, 2026 at 06:18:22PM +0200, Alexander Sverdlin wrote: > Hi Conor, > > On Mon, 2026-05-11 at 17:08 +0100, Conor Dooley wrote: > > > Baijie HelperBoard A133 is a development board around their A133 Core > > > board. Introduce a compatible for both the Core and the development > > > boards. > > > > > > Signed-off-by: Alexander Sverdlin <alexander.sverdlin@gmail.com> > > > --- > > > > > > Changelog: > > > v2: > > > - introduced baijie,helper-a133-core compatible for the Core (SoM) board > > > > > > Documentation/devicetree/bindings/arm/sunxi.yaml | 11 +++++++++++ > > > 1 file changed, 11 insertions(+) > > > > > > diff --git a/Documentation/devicetree/bindings/arm/sunxi.yaml b/Documentation/devicetree/bindings/arm/sunxi.yaml > > > index e6443c266fa1..d7b9dec81165 100644 > > > --- a/Documentation/devicetree/bindings/arm/sunxi.yaml > > > +++ b/Documentation/devicetree/bindings/arm/sunxi.yaml > > > @@ -96,6 +96,17 @@ properties: > > > - const: allwinner,ba10-tvbox > > > - const: allwinner,sun4i-a10 > > > > > > + > > > + - description: HelperBoardA133 Core > > > + items: > > > + - const: baijie,helper-a133-core > > > + - const: allwinner,sun50i-a100 > > > > Does this make sense? Can the core board be used without a carrier? > > such operation would be impractical at least, that's why in my v1 > Core board didn't have its own compatible. Maybe I didn't understand > you correctly. I just wanted a comaptible for the SoM, so that there's a common compatible for that if it ends up on another carrier. IIRC these Baijie folks had another one on their site, but may be misremembering. > > Shall I drop the above 4 lines, the compatible property from the > root in sun50i-a133-baije-core.dtsi and only leave > sun50i-a133-baijie-helper.dtb with 3-strings compatible as it is > now in v2? > > > + - description: Baijie Helper A133 > > > + items: > > > + - const: baijie,helper-a133 > > > + - const: baijie,helper-a133-core > > > + - const: allwinner,sun50i-a100 What I wanted was just this, so trim it down to that and you can add my Acked-by: Conor Dooley <conor.dooley@microchip.com> ~heers, Conor. [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 228 bytes --] ^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH v2 3/3] arm64: dts: allwinner: A133: add support for Baijie Helper A133 board 2026-05-10 20:16 [PATCH v2 0/3] Add support for Baijie Helper A133 board Alexander Sverdlin 2026-05-10 20:16 ` [PATCH v2 1/3] dt-bindings: vendor-prefixes: Add Shenzhen Baijie Technology Co., Ltd Alexander Sverdlin 2026-05-10 20:16 ` [PATCH v2 2/3] dt-bindings: arm: sunxi: Add Baijie HelperBoard A133 compatible Alexander Sverdlin @ 2026-05-10 20:16 ` Alexander Sverdlin 2026-05-11 11:44 ` Andre Przywara 2 siblings, 1 reply; 8+ messages in thread From: Alexander Sverdlin @ 2026-05-10 20:16 UTC (permalink / raw) To: linux-sunxi Cc: Alexander Sverdlin, Rob Herring, Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec, Samuel Holland, Andre Przywara, devicetree, linux-arm-kernel, linux-kernel Baijie Helper A133 board is a development board around Baijie A133 Core SBC. Features: - 1/2/4GiB LPDDR4 DRAM - 8/16/32GiB eMMC - AXP707 PMIC - 2 USB 2.0 ports - MicroSD slot and on-board eMMC module - Gigabit Ethernet - Bluetooth - WiFi Add initial support for both the Helper and Core boards, including UART, PMU, eMMC, USB, Ethernet. Signed-off-by: Alexander Sverdlin <alexander.sverdlin@gmail.com> --- Changelog: v2: - introduced baijie,helper-a133-core compatible for the Core (SoM) board arch/arm64/boot/dts/allwinner/Makefile | 1 + .../dts/allwinner/sun50i-a133-baije-core.dtsi | 162 ++++++++++++++++++ .../allwinner/sun50i-a133-baijie-helper.dts | 94 ++++++++++ 3 files changed, 257 insertions(+) create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-a133-baije-core.dtsi create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-a133-baijie-helper.dts diff --git a/arch/arm64/boot/dts/allwinner/Makefile b/arch/arm64/boot/dts/allwinner/Makefile index d116864b6c2b..926dfa851100 100644 --- a/arch/arm64/boot/dts/allwinner/Makefile +++ b/arch/arm64/boot/dts/allwinner/Makefile @@ -18,6 +18,7 @@ dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-sopine-baseboard.dtb dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-teres-i.dtb 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-baijie-helper.dtb dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a133-liontron-h-a133l.dtb dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-bananapi-m2-plus.dtb dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-bananapi-m2-plus-v1.2.dtb diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a133-baije-core.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-a133-baije-core.dtsi new file mode 100644 index 000000000000..65b094f30bf5 --- /dev/null +++ b/arch/arm64/boot/dts/allwinner/sun50i-a133-baije-core.dtsi @@ -0,0 +1,162 @@ +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) +/* + * Copyright (c) 2025 Arm Ltd. + */ + +/dts-v1/; + +#include "sun50i-a100.dtsi" +#include "sun50i-a100-cpu-opp.dtsi" + +/{ + compatible = "baijie,helper-a133-core", + "allwinner,sun50i-a100"; + + aliases { + serial1 = &uart1; /* BT module */ + }; +}; + +&cpu0 { + cpu-supply = <®_dcdc2>; +}; + +&pio { + vcc-pb-supply = <®_dcdc1>; + vcc-pc-supply = <®_eldo1>; + vcc-pd-supply = <®_dcdc1>; + vcc-pe-supply = <®_dldo2>; + vcc-pf-supply = <®_dcdc1>; + vcc-pg-supply = <®_dldo1>; + vcc-ph-supply = <®_dcdc1>; +}; + +&mmc2 { + vmmc-supply = <®_dcdc1>; + vqmmc-supply = <®_eldo1>; + cap-mmc-hw-reset; + non-removable; + bus-width = <8>; + mmc-ddr-1_8v; + mmc-hs200-1_8v; + 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>; + }; +}; + +#include "axp803.dtsi" + +&ac_power_supply { + status = "okay"; +}; + +®_aldo1 { + regulator-always-on; + regulator-min-microvolt = <700000>; + regulator-max-microvolt = <3300000>; +}; + +®_aldo2 { + regulator-always-on; + regulator-min-microvolt = <700000>; + regulator-max-microvolt = <3300000>; +}; + +®_aldo3 { + regulator-always-on; + regulator-min-microvolt = <700000>; + regulator-max-microvolt = <3300000>; + regulator-enable-ramp-delay = <1000>; +}; + +®_dcdc1 { + regulator-always-on; + regulator-min-microvolt = <1600000>; + regulator-max-microvolt = <3400000>; + regulator-name = "vcc-3v3"; +}; + +®_dcdc2 { + regulator-always-on; + regulator-min-microvolt = <500000>; + regulator-max-microvolt = <1300000>; + regulator-name = "vdd-cpu"; +}; + +®_dcdc3 { + regulator-always-on; + regulator-min-microvolt = <500000>; + regulator-max-microvolt = <1300000>; +}; + +®_dcdc4 { + regulator-always-on; + regulator-min-microvolt = <500000>; + regulator-max-microvolt = <1300000>; + regulator-name = "vdd-sys"; +}; + +®_dcdc5 { + regulator-always-on; + regulator-min-microvolt = <800000>; + regulator-max-microvolt = <1840000>; + regulator-name = "vcc-dram"; +}; + +/* DCDC6 unused */ + +®_dldo1 { + regulator-min-microvolt = <700000>; + regulator-max-microvolt = <3300000>; + regulator-enable-ramp-delay = <1000>; +}; + +®_dldo2 { + regulator-min-microvolt = <700000>; + regulator-max-microvolt = <3400000>; + regulator-enable-ramp-delay = <1000>; +}; + +®_dldo3 { + regulator-min-microvolt = <700000>; + regulator-max-microvolt = <3300000>; + regulator-enable-ramp-delay = <1000>; + regulator-name = "avdd-csi"; +}; + +®_dldo4 { + regulator-min-microvolt = <700000>; + regulator-max-microvolt = <3300000>; + regulator-enable-ramp-delay = <1000>; +}; + +®_eldo1 { + regulator-min-microvolt = <700000>; + regulator-max-microvolt = <1900000>; + regulator-enable-ramp-delay = <1000>; +}; + +®_eldo2 { + regulator-min-microvolt = <700000>; + regulator-max-microvolt = <1900000>; + regulator-enable-ramp-delay = <1000>; + regulator-name = "dvdd-csi"; +}; + +/* ELDO3 unused */ + +®_fldo1 { + regulator-always-on; + regulator-min-microvolt = <700000>; + regulator-max-microvolt = <1450000>; + regulator-name = "vdd-cpus-usb"; +}; diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a133-baijie-helper.dts b/arch/arm64/boot/dts/allwinner/sun50i-a133-baijie-helper.dts new file mode 100644 index 000000000000..ccbca5d0a40c --- /dev/null +++ b/arch/arm64/boot/dts/allwinner/sun50i-a133-baijie-helper.dts @@ -0,0 +1,94 @@ +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) +/* + * Copyright (c) 2025 Arm Ltd. + */ + +/dts-v1/; + +#include "sun50i-a133-baije-core.dtsi" + +#include <dt-bindings/gpio/gpio.h> +#include <dt-bindings/leds/common.h> + +/{ + model = "HelperBoard A133"; + compatible = "baijie,helper-a133", + "baijie,helper-a133-core", + "allwinner,sun50i-a100"; + + aliases { + serial0 = &uart0; + }; + + chosen { + stdout-path = "serial0:115200n8"; + }; + + leds { + compatible = "gpio-leds"; + + led { + function = LED_FUNCTION_INDICATOR; + color = <LED_COLOR_ID_GREEN>; + gpios = <&pio 7 13 GPIO_ACTIVE_LOW>; /* PH13 */ + }; + }; +}; + +&mmc0 { + vmmc-supply = <®_dcdc1>; + cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; /* PF6 */ + bus-width = <4>; + status = "okay"; +}; + +&uart0 { + pinctrl-names = "default"; + pinctrl-0 = <&uart0_pb_pins>; + status = "okay"; +}; + +&rgmii0_pins { + drive-strength = <30>; +}; + +&emac0 { + pinctrl-names = "default"; + pinctrl-0 = <&rgmii0_pins>; + phy-handle = <ð_phy>; + phy-mode = "rgmii-id"; + allwinner,rx-delay-ps = <200>; + allwinner,tx-delay-ps = <200>; + status = "okay"; +}; + +&mdio0 { + reset-gpios = <&pio 7 11 GPIO_ACTIVE_LOW>; /* PH11 */ + reset-delay-us = <10000>; + reset-post-delay-us = <150000>; + + eth_phy: ethernet-phy@1 { + compatible = "ethernet-phy-ieee802.3-c22"; + reg = <1>; + }; +}; + +&usbphy { + status = "okay"; +}; + +&ehci0 { + status = "okay"; +}; + +&ohci0 { + status = "okay"; +}; + +&ehci1 { + status = "okay"; +}; + +&ohci1 { + status = "okay"; +}; -- 2.54.0 ^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH v2 3/3] arm64: dts: allwinner: A133: add support for Baijie Helper A133 board 2026-05-10 20:16 ` [PATCH v2 3/3] arm64: dts: allwinner: A133: add support for Baijie Helper A133 board Alexander Sverdlin @ 2026-05-11 11:44 ` Andre Przywara 0 siblings, 0 replies; 8+ messages in thread From: Andre Przywara @ 2026-05-11 11:44 UTC (permalink / raw) To: Alexander Sverdlin, linux-sunxi Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec, Samuel Holland, devicetree, linux-arm-kernel, linux-kernel Hi Alexander, thanks for upstreaming the DTs! On 5/10/26 22:16, Alexander Sverdlin wrote: > Baijie Helper A133 board is a development board around Baijie A133 Core > SBC. Features: > > - 1/2/4GiB LPDDR4 DRAM > - 8/16/32GiB eMMC > - AXP707 PMIC > - 2 USB 2.0 ports > - MicroSD slot and on-board eMMC module > - Gigabit Ethernet > - Bluetooth > - WiFi > > Add initial support for both the Helper and Core boards, including UART, > PMU, eMMC, USB, Ethernet. > > Signed-off-by: Alexander Sverdlin <alexander.sverdlin@gmail.com> > --- > > Changelog: > v2: > - introduced baijie,helper-a133-core compatible for the Core (SoM) board > > arch/arm64/boot/dts/allwinner/Makefile | 1 + > .../dts/allwinner/sun50i-a133-baije-core.dtsi | 162 ++++++++++++++++++ > .../allwinner/sun50i-a133-baijie-helper.dts | 94 ++++++++++ > 3 files changed, 257 insertions(+) > create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-a133-baije-core.dtsi > create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-a133-baijie-helper.dts > > diff --git a/arch/arm64/boot/dts/allwinner/Makefile b/arch/arm64/boot/dts/allwinner/Makefile > index d116864b6c2b..926dfa851100 100644 > --- a/arch/arm64/boot/dts/allwinner/Makefile > +++ b/arch/arm64/boot/dts/allwinner/Makefile > @@ -18,6 +18,7 @@ dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-sopine-baseboard.dtb > dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-teres-i.dtb > 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-baijie-helper.dtb > dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a133-liontron-h-a133l.dtb > dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-bananapi-m2-plus.dtb > dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-bananapi-m2-plus-v1.2.dtb > diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a133-baije-core.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-a133-baije-core.dtsi > new file mode 100644 > index 000000000000..65b094f30bf5 > --- /dev/null > +++ b/arch/arm64/boot/dts/allwinner/sun50i-a133-baije-core.dtsi > @@ -0,0 +1,162 @@ > +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) > +/* > + * Copyright (c) 2025 Arm Ltd. Please put your own copyright here, even if that has been largely copied from an existing file. > + */ > + > +/dts-v1/; > + > +#include "sun50i-a100.dtsi" > +#include "sun50i-a100-cpu-opp.dtsi" > + > +/{ > + compatible = "baijie,helper-a133-core", > + "allwinner,sun50i-a100"; > + > + aliases { > + serial1 = &uart1; /* BT module */ Do we really need an alias for the BT UART? And is the BT module supported already? Then please add a child node to the UART node. > + }; > +}; > + > +&cpu0 { > + cpu-supply = <®_dcdc2>; > +}; > + > +&pio { The order of those referenced nodes is alphabetically by the label name. So this one goes further down. > + vcc-pb-supply = <®_dcdc1>; > + vcc-pc-supply = <®_eldo1>; > + vcc-pd-supply = <®_dcdc1>; > + vcc-pe-supply = <®_dldo2>; > + vcc-pf-supply = <®_dcdc1>; > + vcc-pg-supply = <®_dldo1>; > + vcc-ph-supply = <®_dcdc1>; > +}; > + Isn't the WiFi/BT module on the SoM? Then please mention and enable MMC1 here. Provide the child node for the WiFi chip, even if there is no upstream support in the kernel for it yet. > +&mmc2 { > + vmmc-supply = <®_dcdc1>; > + vqmmc-supply = <®_eldo1>; > + cap-mmc-hw-reset; > + non-removable; > + bus-width = <8>; > + mmc-ddr-1_8v; > + mmc-hs200-1_8v; > + 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>; > + }; > +}; > + > +#include "axp803.dtsi" > + > +&ac_power_supply { > + status = "okay"; > +}; > + > +®_aldo1 { What is aldo1 used for, actually? I don't see this referenced anywhere. I guess the kernel turns that off after booting? If you have access to the schematic, please check that. If that's for some peripheral not yet supported, please note the user anyway, ideally by an explaining regulator-name, or by a comment. Also if it's used for any of the required SoC VDD pins. See the Liontron .dts for comparison. > + regulator-always-on; > + regulator-min-microvolt = <700000>; > + regulator-max-microvolt = <3300000>; Please don't provide ranges here (those are in the driver already), the point of this entry is to set the voltage required by the board. (And yes, the vendor DTBs alway get this wrong). Typically there are fixed requirements, so use the same value for min and max. Same for the others below. > +}; > + > +®_aldo2 { > + regulator-always-on; For always-on regulators we definitely need an explanation. Does the board stop booting if you remove this line? Maybe it's for DRAM? Can you say what voltage it is, either from the reset default, or set by the bootloader? > + regulator-min-microvolt = <700000>; > + regulator-max-microvolt = <3300000>; > +}; > + > +®_aldo3 { > + regulator-always-on; > + regulator-min-microvolt = <700000>; > + regulator-max-microvolt = <3300000>; > + regulator-enable-ramp-delay = <1000>; > +}; > + > +®_dcdc1 { > + regulator-always-on; > + regulator-min-microvolt = <1600000>; > + regulator-max-microvolt = <3400000>; > + regulator-name = "vcc-3v3"; > +}; > + > +®_dcdc2 { > + regulator-always-on; > + regulator-min-microvolt = <500000>; > + regulator-max-microvolt = <1300000>; This one is an exception, because the voltage is to be adjusted at runtime. But the voltage range needs to be tighter, the A133 datasheet puts the valid VDD_CPU range between 810mV and 1200mV. Compare to the Liontron dts file here. > + regulator-name = "vdd-cpu"; > +}; > + > +®_dcdc3 { > + regulator-always-on; > + regulator-min-microvolt = <500000>; > + regulator-max-microvolt = <1300000>; > +}; > + > +®_dcdc4 { > + regulator-always-on; > + regulator-min-microvolt = <500000>; > + regulator-max-microvolt = <1300000>; > + regulator-name = "vdd-sys"; > +}; > + > +®_dcdc5 { > + regulator-always-on; > + regulator-min-microvolt = <800000>; > + regulator-max-microvolt = <1840000>; > + regulator-name = "vcc-dram"; > +}; > + > +/* DCDC6 unused */ > + > +®_dldo1 { > + regulator-min-microvolt = <700000>; > + regulator-max-microvolt = <3300000>; > + regulator-enable-ramp-delay = <1000>; > +}; > + > +®_dldo2 { > + regulator-min-microvolt = <700000>; > + regulator-max-microvolt = <3400000>; > + regulator-enable-ramp-delay = <1000>; > +}; > + > +®_dldo3 { > + regulator-min-microvolt = <700000>; > + regulator-max-microvolt = <3300000>; > + regulator-enable-ramp-delay = <1000>; > + regulator-name = "avdd-csi"; > +}; > + > +®_dldo4 { > + regulator-min-microvolt = <700000>; > + regulator-max-microvolt = <3300000>; > + regulator-enable-ramp-delay = <1000>; > +}; > + > +®_eldo1 { > + regulator-min-microvolt = <700000>; > + regulator-max-microvolt = <1900000>; > + regulator-enable-ramp-delay = <1000>; > +}; > + > +®_eldo2 { > + regulator-min-microvolt = <700000>; > + regulator-max-microvolt = <1900000>; > + regulator-enable-ramp-delay = <1000>; > + regulator-name = "dvdd-csi"; > +}; > + > +/* ELDO3 unused */ > + > +®_fldo1 { > + regulator-always-on; > + regulator-min-microvolt = <700000>; > + regulator-max-microvolt = <1450000>; > + regulator-name = "vdd-cpus-usb"; > +}; > diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a133-baijie-helper.dts b/arch/arm64/boot/dts/allwinner/sun50i-a133-baijie-helper.dts > new file mode 100644 > index 000000000000..ccbca5d0a40c > --- /dev/null > +++ b/arch/arm64/boot/dts/allwinner/sun50i-a133-baijie-helper.dts > @@ -0,0 +1,94 @@ > +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) > +/* > + * Copyright (c) 2025 Arm Ltd. Your own copyright, please. > + */ > + > +/dts-v1/; > + > +#include "sun50i-a133-baije-core.dtsi" > + > +#include <dt-bindings/gpio/gpio.h> > +#include <dt-bindings/leds/common.h> > + > +/{ > + model = "HelperBoard A133"; > + compatible = "baijie,helper-a133", > + "baijie,helper-a133-core", > + "allwinner,sun50i-a100"; > + > + aliases { > + serial0 = &uart0; > + }; > + > + chosen { > + stdout-path = "serial0:115200n8"; > + }; > + > + leds { > + compatible = "gpio-leds"; > + > + led { > + function = LED_FUNCTION_INDICATOR; > + color = <LED_COLOR_ID_GREEN>; > + gpios = <&pio 7 13 GPIO_ACTIVE_LOW>; /* PH13 */ > + }; > + }; I see quite some buttons on the board. I guess they are connected to GPIOs? Can you please describe them then, using gpio-keys? Look at sun50i-h5-orangepi-pc2.dts for an example. And you should provide a top level 5V regulator here, to be the root of the regulator tree. Look at reg_vcc5v in the Liontron .dts. > +}; > + > +&mmc0 { > + vmmc-supply = <®_dcdc1>; > + cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; /* PF6 */ > + bus-width = <4>; > + status = "okay"; > +}; > + > +&uart0 { > + pinctrl-names = "default"; > + pinctrl-0 = <&uart0_pb_pins>; > + status = "okay"; > +}; > + > +&rgmii0_pins { > + drive-strength = <30>; > +}; > + > +&emac0 { > + pinctrl-names = "default"; > + pinctrl-0 = <&rgmii0_pins>; > + phy-handle = <ð_phy>; > + phy-mode = "rgmii-id"; > + allwinner,rx-delay-ps = <200>; > + allwinner,tx-delay-ps = <200>; > + status = "okay"; > +}; > + > +&mdio0 { > + reset-gpios = <&pio 7 11 GPIO_ACTIVE_LOW>; /* PH11 */ > + reset-delay-us = <10000>; > + reset-post-delay-us = <150000>; > + > + eth_phy: ethernet-phy@1 { The typical label here would be rgmii_phy. The node name is correct, though. > + compatible = "ethernet-phy-ieee802.3-c22"; > + reg = <1>; > + }; > +}; > + So from the pictures I found online it looks like there is an USB-C port labelled "OTG", so can you please add an &usbotg reference here and describe that port. > +&usbphy { Are the two USB ports always powered? And anyway, I see a *dual* USB-A socket on the pictures online, in addition to the USB-OTG port. So where does the third USB come from? The A133 only supports one host USB port plus the one OTG port. So is there an USB hub chip on the board? > + status = "okay"; > +}; > + > +&ehci0 { (and again, please order those nodes alphabetically) Cheers, Andre. > + status = "okay"; > +}; > + > +&ohci0 { > + status = "okay"; > +}; > + > +&ehci1 { > + status = "okay"; > +}; > + > +&ohci1 { > + status = "okay"; > +}; ^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2026-05-11 16:34 UTC | newest] Thread overview: 8+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2026-05-10 20:16 [PATCH v2 0/3] Add support for Baijie Helper A133 board Alexander Sverdlin 2026-05-10 20:16 ` [PATCH v2 1/3] dt-bindings: vendor-prefixes: Add Shenzhen Baijie Technology Co., Ltd Alexander Sverdlin 2026-05-10 20:16 ` [PATCH v2 2/3] dt-bindings: arm: sunxi: Add Baijie HelperBoard A133 compatible Alexander Sverdlin 2026-05-11 16:08 ` Conor Dooley 2026-05-11 16:18 ` Alexander Sverdlin 2026-05-11 16:34 ` Conor Dooley 2026-05-10 20:16 ` [PATCH v2 3/3] arm64: dts: allwinner: A133: add support for Baijie Helper A133 board Alexander Sverdlin 2026-05-11 11:44 ` Andre Przywara
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox