* [PATCH v5 1/4] dt-bindings: vendor-prefixes: Add BigTreeTech
2023-08-14 8:07 [PATCH v5 0/4] Add BigTreeTech CB1 SoM & Boards Martin Botka
@ 2023-08-14 8:07 ` Martin Botka
2023-08-14 8:07 ` [PATCH v5 2/4] dt-bindings: arm: sunxi: Add BigTreeTech boards Martin Botka
` (3 subsequent siblings)
4 siblings, 0 replies; 6+ messages in thread
From: Martin Botka @ 2023-08-14 8:07 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai,
Jernej Skrabec, Samuel Holland, Maxime Ripard
Cc: Rob Herring, devicetree, linux-kernel, linux-arm-kernel,
linux-sunxi, Andre Przywara, Alan Ma, Marijn Suijten,
AngeloGioacchino Del Regno, Konrad Dybcio, Martin Botka,
Krzysztof Kozlowski, Martin Botka
BigTreeTech is a company based in Shenzhen that makes
3D printers and accessories.
Add prefix for it.
Signed-off-by: Martin Botka <martin.botka@somainline.org>
Reviewed-by: Andre Przywara <andre.przywara@arm.com>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Acked-by: Jernej Skrabec <jernej.skrabec@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 af60bf1a6664..a1f3bb7be860 100644
--- a/Documentation/devicetree/bindings/vendor-prefixes.yaml
+++ b/Documentation/devicetree/bindings/vendor-prefixes.yaml
@@ -192,6 +192,8 @@ patternProperties:
description: BeagleBoard.org Foundation
"^bhf,.*":
description: Beckhoff Automation GmbH & Co. KG
+ "^bigtreetech,.*":
+ description: Shenzhen BigTree Tech Co., LTD
"^bitmain,.*":
description: Bitmain Technologies
"^blutek,.*":
--
2.41.0
^ permalink raw reply related [flat|nested] 6+ messages in thread* [PATCH v5 2/4] dt-bindings: arm: sunxi: Add BigTreeTech boards
2023-08-14 8:07 [PATCH v5 0/4] Add BigTreeTech CB1 SoM & Boards Martin Botka
2023-08-14 8:07 ` [PATCH v5 1/4] dt-bindings: vendor-prefixes: Add BigTreeTech Martin Botka
@ 2023-08-14 8:07 ` Martin Botka
2023-08-14 8:07 ` [PATCH v5 3/4] arm64: dts: allwinner: h616: Add BigTreeTech CB1 SoM & boards support Martin Botka
` (2 subsequent siblings)
4 siblings, 0 replies; 6+ messages in thread
From: Martin Botka @ 2023-08-14 8:07 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai,
Jernej Skrabec, Samuel Holland, Maxime Ripard
Cc: Rob Herring, devicetree, linux-kernel, linux-arm-kernel,
linux-sunxi, Andre Przywara, Alan Ma, Marijn Suijten,
AngeloGioacchino Del Regno, Konrad Dybcio, Martin Botka,
Krzysztof Kozlowski, Martin Botka
Add name & compatible for BigTreeTech Manta boards and
BigTreeTech Pi
Signed-off-by: Martin Botka <martin.botka@somainline.org>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Acked-by: Jernej Skrabec <jernej.skrabec@gmail.com>
---
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 ee8fdd2da869..b90d2a7dbe2d 100644
--- a/Documentation/devicetree/bindings/arm/sunxi.yaml
+++ b/Documentation/devicetree/bindings/arm/sunxi.yaml
@@ -151,6 +151,17 @@ properties:
- const: roofull,beelink-x2
- const: allwinner,sun8i-h3
+ - description: BigTreeTech Manta M4/8P
+ items:
+ - const: bigtreetech,cb1-manta
+ - const: bigtreetech,cb1
+ - const: allwinner,sun50i-h616
+
+ - description: BigTreeTech Pi
+ items:
+ - const: bigtreetech,pi
+ - const: allwinner,sun50i-h616
+
- description: Chuwi V7 CW0825
items:
- const: chuwi,v7-cw0825
--
2.41.0
^ permalink raw reply related [flat|nested] 6+ messages in thread* [PATCH v5 3/4] arm64: dts: allwinner: h616: Add BigTreeTech CB1 SoM & boards support
2023-08-14 8:07 [PATCH v5 0/4] Add BigTreeTech CB1 SoM & Boards Martin Botka
2023-08-14 8:07 ` [PATCH v5 1/4] dt-bindings: vendor-prefixes: Add BigTreeTech Martin Botka
2023-08-14 8:07 ` [PATCH v5 2/4] dt-bindings: arm: sunxi: Add BigTreeTech boards Martin Botka
@ 2023-08-14 8:07 ` Martin Botka
2023-08-14 8:07 ` [PATCH v5 4/4] arm64: dts: allwinner: h616: Add BigTreeTech Pi support Martin Botka
2023-08-14 8:09 ` [PATCH v5 0/4] Add BigTreeTech CB1 SoM & Boards Martin Botka
4 siblings, 0 replies; 6+ messages in thread
From: Martin Botka @ 2023-08-14 8:07 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai,
Jernej Skrabec, Samuel Holland, Maxime Ripard
Cc: Rob Herring, devicetree, linux-kernel, linux-arm-kernel,
linux-sunxi, Andre Przywara, Alan Ma, Marijn Suijten,
AngeloGioacchino Del Regno, Konrad Dybcio, Martin Botka,
Krzysztof Kozlowski, Martin Botka
CB1 is Compute Module style board that plugs into Rpi board style adapter or
Manta 3D printer boards (M4P/M8P).
The SoM features:
- H616 SoC
- 1GiB of RAM
- AXP313A PMIC
- RTL8189FTV WiFi
Boards feature:
- 4x USB via USB2 hub (usb1 on SoM).
- SDcard slot for loading images.
- Ethernet port wired to the internal PHY. (100M)
- 2x HDMI 2.0. (Only 1 usable on CB1)
- Power and Status LEDs. (Only Status LED usable on CB1)
- 40 pin GPIO header
Currently working:
- Booting
- USB
- UART
- MMC
- Status LED
- WiFi (RTL8189FS via out of tree driver)
I didnt want to duplicate things so the manta DTS can also be used on BTT pi4b adapter.
CB1 SoM has its own DTSI file in case other boards shows up that accept this SoM.
Signed-off-by: Martin Botka <martin.botka@somainline.org>
Reviewed-by: Andre Przywara <andre.przywara@arm.com>
Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com>
---
arch/arm64/boot/dts/allwinner/Makefile | 1 +
.../sun50i-h616-bigtreetech-cb1-manta.dts | 35 ++++++
.../dts/allwinner/sun50i-h616-bigtreetech-cb1.dtsi | 138 +++++++++++++++++++++
3 files changed, 174 insertions(+)
diff --git a/arch/arm64/boot/dts/allwinner/Makefile b/arch/arm64/boot/dts/allwinner/Makefile
index 6a96494a2e0a..7b386428510b 100644
--- a/arch/arm64/boot/dts/allwinner/Makefile
+++ b/arch/arm64/boot/dts/allwinner/Makefile
@@ -38,5 +38,6 @@ dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-pine-h64.dtb
dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-pine-h64-model-b.dtb
dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-tanix-tx6.dtb
dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-tanix-tx6-mini.dtb
+dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h616-bigtreetech-cb1-manta.dtb
dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h616-orangepi-zero2.dtb
dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h616-x96-mate.dtb
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h616-bigtreetech-cb1-manta.dts b/arch/arm64/boot/dts/allwinner/sun50i-h616-bigtreetech-cb1-manta.dts
new file mode 100644
index 000000000000..dbce61b355d6
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/sun50i-h616-bigtreetech-cb1-manta.dts
@@ -0,0 +1,35 @@
+// SPDX-License-Identifier: (GPL-2.0+ or MIT)
+/*
+ * Copyright (C) 2023 Martin Botka <martin.botka@somainline.org>.
+ */
+
+/dts-v1/;
+
+#include "sun50i-h616-bigtreetech-cb1.dtsi"
+
+/ {
+ model = "BigTreeTech CB1";
+ compatible = "bigtreetech,cb1-manta", "bigtreetech,cb1", "allwinner,sun50i-h616";
+
+ aliases {
+ serial0 = &uart0;
+ };
+
+ chosen {
+ stdout-path = "serial0:115200n8";
+ };
+};
+
+&ehci1 {
+ status = "okay";
+};
+
+&ohci1 {
+ status = "okay";
+};
+
+&uart0 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&uart0_ph_pins>;
+ status = "okay";
+};
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h616-bigtreetech-cb1.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-h616-bigtreetech-cb1.dtsi
new file mode 100644
index 000000000000..1fed2b46cfe8
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/sun50i-h616-bigtreetech-cb1.dtsi
@@ -0,0 +1,138 @@
+// SPDX-License-Identifier: (GPL-2.0+ or MIT)
+/*
+ * Copyright (C) 2023 Martin Botka <martin.botka@somainline.org>.
+ */
+
+/dts-v1/;
+
+#include "sun50i-h616.dtsi"
+
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/interrupt-controller/arm-gic.h>
+#include <dt-bindings/leds/common.h>
+
+/ {
+ aliases {
+ ethernet0 = &rtl8189ftv;
+ };
+
+ leds {
+ compatible = "gpio-leds";
+
+ led-0 {
+ function = LED_FUNCTION_STATUS;
+ color = <LED_COLOR_ID_GREEN>;
+ gpios = <&pio 7 5 GPIO_ACTIVE_HIGH>; /* PH5 */
+ };
+ };
+
+ reg_vcc5v: regulator-vcc5v {
+ /* board wide 5V supply from carrier boards */
+ compatible = "regulator-fixed";
+ regulator-name = "vcc-5v";
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+ regulator-always-on;
+ };
+
+ reg_vcc33_wifi: vcc33-wifi {
+ compatible = "regulator-fixed";
+ regulator-name = "vcc33-wifi";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ regulator-always-on;
+ vin-supply = <®_vcc5v>;
+ };
+
+ reg_vcc_wifi_io: vcc-wifi-io {
+ compatible = "regulator-fixed";
+ regulator-name = "vcc-wifi-io";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-always-on;
+ vin-supply = <®_vcc33_wifi>;
+ };
+
+ wifi_pwrseq: wifi-pwrseq {
+ compatible = "mmc-pwrseq-simple";
+ clocks = <&rtc 1>;
+ clock-names = "ext_clock";
+ reset-gpios = <&pio 6 18 GPIO_ACTIVE_LOW>; /* PG18 */
+ post-power-on-delay-ms = <200>;
+ };
+};
+
+&mmc0 {
+ vmmc-supply = <®_dldo1>;
+ /* Card detection pin is not connected */
+ broken-cd;
+ bus-width = <4>;
+ status = "okay";
+};
+
+&mmc1 {
+ vmmc-supply = <®_vcc33_wifi>;
+ vqmmc-supply = <®_vcc_wifi_io>;
+ mmc-pwrseq = <&wifi_pwrseq>;
+ bus-width = <4>;
+ non-removable;
+ mmc-ddr-1_8v;
+ status = "okay";
+
+ rtl8189ftv: wifi@1 {
+ reg = <1>;
+ };
+};
+
+&r_i2c {
+ status = "okay";
+
+ axp313a: pmic@36 {
+ compatible = "x-powers,axp313a";
+ reg = <0x36>;
+ interrupt-controller;
+ #interrupt-cells = <1>;
+
+ regulators{
+ reg_dcdc1: dcdc1 {
+ regulator-name = "vdd-gpu-sys";
+ regulator-min-microvolt = <810000>;
+ regulator-max-microvolt = <990000>;
+ regulator-always-on;
+ };
+
+ reg_dcdc2: dcdc2 {
+ regulator-name = "vdd-cpu";
+ regulator-min-microvolt = <810000>;
+ regulator-max-microvolt = <1100000>;
+ regulator-ramp-delay = <200>;
+ regulator-always-on;
+ };
+
+ reg_dcdc3: dcdc3 {
+ regulator-name = "vcc-dram";
+ regulator-min-microvolt = <1350000>;
+ regulator-max-microvolt = <1500000>;
+ regulator-always-on;
+ };
+
+ reg_aldo1: aldo1 {
+ regulator-name = "vcc-1v8-pll";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-always-on;
+ };
+
+ reg_dldo1: dldo1 {
+ regulator-name = "vcc-3v3-io";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ regulator-always-on;
+ };
+ };
+ };
+};
+
+&usbphy {
+ status = "okay";
+};
--
2.41.0
^ permalink raw reply related [flat|nested] 6+ messages in thread* [PATCH v5 4/4] arm64: dts: allwinner: h616: Add BigTreeTech Pi support
2023-08-14 8:07 [PATCH v5 0/4] Add BigTreeTech CB1 SoM & Boards Martin Botka
` (2 preceding siblings ...)
2023-08-14 8:07 ` [PATCH v5 3/4] arm64: dts: allwinner: h616: Add BigTreeTech CB1 SoM & boards support Martin Botka
@ 2023-08-14 8:07 ` Martin Botka
2023-08-14 8:09 ` [PATCH v5 0/4] Add BigTreeTech CB1 SoM & Boards Martin Botka
4 siblings, 0 replies; 6+ messages in thread
From: Martin Botka @ 2023-08-14 8:07 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai,
Jernej Skrabec, Samuel Holland, Maxime Ripard
Cc: Rob Herring, devicetree, linux-kernel, linux-arm-kernel,
linux-sunxi, Andre Przywara, Alan Ma, Marijn Suijten,
AngeloGioacchino Del Regno, Konrad Dybcio, Martin Botka,
Krzysztof Kozlowski, Martin Botka
From: Martin Botka <martin@biqu3d.com>
The BigTreeTech Pi is an H616 based board based on CB1.
Just in Rpi format board.
It features the same internals as BTT CB1 but adds:
- Fan port
- IR receiver
- ADXL345 Accelerometer connector via SPI
- 24V DC power supply via terminal plugs
- USB to CAN module connector (The actual USB to CAN happens on the external module)
List of currently working things is same as BTT CB1 but also:
- IR receiver
- ADXL345 connector
Signed-off-by: Martin Botka <martin@biqu3d.com>
Reviewed-by: Andre Przywara <andre.przywara@arm.com>
---
arch/arm64/boot/dts/allwinner/Makefile | 1 +
.../dts/allwinner/sun50i-h616-bigtreetech-pi.dts | 70 ++++++++++++++++++++++
2 files changed, 71 insertions(+)
diff --git a/arch/arm64/boot/dts/allwinner/Makefile b/arch/arm64/boot/dts/allwinner/Makefile
index 7b386428510b..0b6232a7f328 100644
--- a/arch/arm64/boot/dts/allwinner/Makefile
+++ b/arch/arm64/boot/dts/allwinner/Makefile
@@ -39,5 +39,6 @@ dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-pine-h64-model-b.dtb
dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-tanix-tx6.dtb
dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-tanix-tx6-mini.dtb
dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h616-bigtreetech-cb1-manta.dtb
+dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h616-bigtreetech-pi.dtb
dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h616-orangepi-zero2.dtb
dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h616-x96-mate.dtb
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h616-bigtreetech-pi.dts b/arch/arm64/boot/dts/allwinner/sun50i-h616-bigtreetech-pi.dts
new file mode 100644
index 000000000000..b0d0386e8f13
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/sun50i-h616-bigtreetech-pi.dts
@@ -0,0 +1,70 @@
+// SPDX-License-Identifier: (GPL-2.0+ or MIT)
+/*
+ * Copyright (C) 2023 Martin Botka <martin@biqu3d.com>.
+ */
+
+/dts-v1/;
+
+#include "sun50i-h616-bigtreetech-cb1.dtsi"
+
+/ {
+ model = "BigTreeTech Pi";
+ compatible = "bigtreetech,pi", "allwinner,sun50i-h616";
+
+ aliases {
+ serial0 = &uart0;
+ };
+
+ chosen {
+ stdout-path = "serial0:115200n8";
+ };
+};
+
+&ehci0 {
+ status = "okay";
+};
+
+&ehci1 {
+ status = "okay";
+};
+
+&ehci2 {
+ status = "okay";
+};
+
+&ehci3 {
+ status = "okay";
+};
+
+&ir {
+ status = "okay";
+};
+
+&ohci0 {
+ status = "okay";
+};
+
+&ohci1 {
+ status = "okay";
+};
+
+&ohci2 {
+ status = "okay";
+};
+
+&ohci3 {
+ status = "okay";
+};
+
+&spi0 {
+ /* SPI connection for onboard connector for ADXL345 accelerometer */
+ status = "okay";
+ pinctrl-names = "default";
+ pinctrl-0 = <&spi0_pins>, <&spi0_cs0_pin>;
+};
+
+&uart0 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&uart0_ph_pins>;
+ status = "okay";
+};
--
2.41.0
^ permalink raw reply related [flat|nested] 6+ messages in thread* Re: [PATCH v5 0/4] Add BigTreeTech CB1 SoM & Boards
2023-08-14 8:07 [PATCH v5 0/4] Add BigTreeTech CB1 SoM & Boards Martin Botka
` (3 preceding siblings ...)
2023-08-14 8:07 ` [PATCH v5 4/4] arm64: dts: allwinner: h616: Add BigTreeTech Pi support Martin Botka
@ 2023-08-14 8:09 ` Martin Botka
4 siblings, 0 replies; 6+ messages in thread
From: Martin Botka @ 2023-08-14 8:09 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai,
Jernej Skrabec, Samuel Holland, Maxime Ripard
Cc: Rob Herring, devicetree, linux-kernel, linux-arm-kernel,
linux-sunxi, Andre Przywara, Alan Ma, Marijn Suijten,
AngeloGioacchino Del Regno, Konrad Dybcio, Martin Botka,
Krzysztof Kozlowski
On Mon, Aug 14 2023 at 10:07:02 AM +02:00:00, Martin Botka
<martin.botka@somainline.org> wrote:
> Hello,
> This series adds a vendor prefix for BigTreeTech and adds BigTreeTech
> CB1,
> Manta board and BigTreeTech Pi.
>
> CB1 is just an SoM thats based on AllWinner H616.
> BigTreeTech Manta boards are expander boards for CB1 and BigTreeTech
> Pi
> is an CB1 in Rpi style with few additional things like IR receiver
> and fan port
> on GPIO.
>
> This work started before I was hired by BigTreeTech and thus majority
> of the
> patches are from SoMainline email and few are from my work email.
>
> This series depends on commit https://lkml.org/lkml/2023/8/2/801
> "dt-bindings: mfd: x-powers,axp152: make interrupt optional for more
> chips".
>
> Due to the threading issues v5 is sent via my SoMainline email.
>
> Cheers,
> Martin
>
> Signed-off-by: Martin Botka <martin.botka@somainline.org>
> ---
Forgot to add it here
Changes in v5:
- Removal of wifi node comments that were obvious from properties
> Changes in v4:
> - Extend the range of vcc-dram to 1.5V (Max of 1.35V caused issues
> with booting up)
>
> Changes in v3:
> - Add missed semicolons
> - Move model string from dtsi to board dts
> - Add cb1 compatible to manta
> - Remove extra empty lines
> - Add pinctrl for SPI0
>
> Changes in v2:
> - Fix alphabetical order in vendor prefixes
> - Remove CB1 SoM from bindings (Its not standalone)
> - Fixed whitespace errors
> - Move UART into carrier boards and BTT Pi
> - Remove usb1-vbus regulator
> - Fix ranges and naming of AXP313A rails
> - Add comment why broken-cb in mmc0 is needed
> - Rename sdio_wifi to wifi
> - Add model string to BTT Pi
> - Enable IR receiver for BTT Pi
> - Enable SPI0
>
> ---
> Martin Botka (4):
> dt-bindings: vendor-prefixes: Add BigTreeTech
> dt-bindings: arm: sunxi: Add BigTreeTech boards
> arm64: dts: allwinner: h616: Add BigTreeTech CB1 SoM & boards
> support
> arm64: dts: allwinner: h616: Add BigTreeTech Pi support
>
> Documentation/devicetree/bindings/arm/sunxi.yaml | 11 ++
> .../devicetree/bindings/vendor-prefixes.yaml | 2 +
> arch/arm64/boot/dts/allwinner/Makefile | 2 +
> .../sun50i-h616-bigtreetech-cb1-manta.dts | 35 ++++++
> .../dts/allwinner/sun50i-h616-bigtreetech-cb1.dtsi | 138
> +++++++++++++++++++++
> .../dts/allwinner/sun50i-h616-bigtreetech-pi.dts | 70 +++++++++++
> 6 files changed, 258 insertions(+)
> ---
> base-commit: 7935746bb793571417f832f0f1c8852cfdfccc06
> change-id: 20230814-b4-cb1-4b18801ecf6e
>
> Best regards,
> --
> Martin Botka <martin.botka@somainline.org>
>
^ permalink raw reply [flat|nested] 6+ messages in thread