Received: by 2002:a05:6358:700f:b0:131:369:b2a3 with SMTP id 15csp3555961rwo; Fri, 4 Aug 2023 06:45:41 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFIzUPByyexopwxRJDQm6AR4vqMne94JLm7A/tkzcnTL55qs0bpfrj7sP5/jEz13HKkPgwE X-Received: by 2002:a05:6a21:3384:b0:13f:e0b0:359e with SMTP id yy4-20020a056a21338400b0013fe0b0359emr1964736pzb.21.1691156741102; Fri, 04 Aug 2023 06:45:41 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1691156741; cv=none; d=google.com; s=arc-20160816; b=eS5GVwaNmlcaa7vyjNCDFojN8HANjSaVIbg+2usz2nS3+b6ZGVUKAaryTShrnkiF4U c1Gs4d4s4ec18CYuKX7mV5eeFIEnf7eQsem1tavTBmokbjcYdKW9TuT9R0x0S3kiL1sw uIkrRzjBfOAlKmY1gSs0SuBkvsrU4T6TKgG8CGtqO8qucoMzMSyJLd6xzLbJeeuvWb9n LGNlMvNK10LvkuwzCxy/kfZZlwlpcJsjMvZ3Tuv3idr39R2MwyIex0s68KRLJUnDGooT /VOJZiQAnnO1dDbeFSeq8Nf2Q5QlhPdyzYQOjyLJBlQPAEaTR6Cb1Tulbkc501m/KWHg G/kw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :organization:references:in-reply-to:message-id:subject:cc:to:from :date; bh=h27bs9I+yZZbw3BkjAhOG2vdK4Lx1Eo57Jekogf2n4U=; fh=Z4cDPY4HVMAoCTQuygjGv9hbNJLVJYOmt7e08wzlXVw=; b=g2Zqw/NuX7sMOM2R5tT50vNMpkAPKDX8PKZM4uKXEOwlKSB3smDiYbt+EjUAbbPij9 hMF7bI7h05ezmMLrPs7CxSO5yMXZpRfKb/9TxEgy/J7tSwF4awbwU+jh12vH+/CAdKTs b7quAeHD3h8zidoqy0pSktNGU7+zo1ro0zHcgCk2pPN3IugzmHorT0zRfirORx8PjICh igQJ7dZXqDJFkt8U8IpO2r5q9EO/AigkKeymEXjX81JH9+ISvOcNONFnljTSHqJWu18y ixUEN0k3gqJuZ0CTmZkR3LIqGJ2Hvse1RfpospupXE+AD2slSX+y40/G/7Ff4rZ+2vFA dLxw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=arm.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id b30-20020a63715e000000b00564bcae8b53si1210600pgn.803.2023.08.04.06.45.27; Fri, 04 Aug 2023 06:45:41 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=arm.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229534AbjHDNcP (ORCPT + 99 others); Fri, 4 Aug 2023 09:32:15 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:44796 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230208AbjHDNcM (ORCPT ); Fri, 4 Aug 2023 09:32:12 -0400 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id C69CC198C; Fri, 4 Aug 2023 06:31:52 -0700 (PDT) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 92FED1007; Fri, 4 Aug 2023 06:32:34 -0700 (PDT) Received: from donnerap.manchester.arm.com (usa-sjc-imap-foss1.foss.arm.com [10.121.207.14]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 9852C3F5A1; Fri, 4 Aug 2023 06:31:48 -0700 (PDT) Date: Fri, 4 Aug 2023 14:31:45 +0100 From: Andre Przywara To: Martin Botka Cc: martin.botka1@gmail.com, Konrad Dybcio , AngeloGioacchino Del Regno , Marijn Suijten , Jami Kettunen , Paul Bouchara , Martin Botka , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Chen-Yu Tsai , Jernej Skrabec , Samuel Holland , Icenowy Zheng , Ludwig Kormann , Andrew Lunn , Heiko Stuebner , Shawn Guo , Bjorn Andersson , Chris Morgan , Jagan Teki , Maxime Ripard , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-sunxi@lists.linux.dev, linux-kernel@vger.kernel.org Subject: Re: [PATCH v2 3/4] arm64: dts: allwinner: h616: Add BigTreeTech CB1 SoM & boards support Message-ID: <20230804143145.061c8b95@donnerap.manchester.arm.com> In-Reply-To: <3DE536B6217490F4+20230804090102.273029-4-martin@biqu3d.com> References: <20230804090102.273029-1-martin@biqu3d.com> <3DE536B6217490F4+20230804090102.273029-4-martin@biqu3d.com> Organization: ARM X-Mailer: Claws Mail 3.18.0 (GTK+ 2.24.32; aarch64-unknown-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-4.2 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_MED, SPF_HELO_NONE,SPF_NONE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, 4 Aug 2023 11:00:31 +0200 Martin Botka wrote: Hi, thanks for the changes. Some minor things left ... > From: 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 (USB-OTG doesnt work) > - 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 > --- > Changes in V2: > - Fixed whitespace errors > - Move UART into carrier boards and BTT Pi > - Remove usb1-vbus regulator > - Fix ranges and naming of AXP313A rails > - Add comment specifying why broken-cd in mmc0 is needed > - Rename sdio_wifi to wifi > - Specify in commit description that USB-OTG doesnt work > > arch/arm64/boot/dts/allwinner/Makefile | 1 + > .../sun50i-h616-bigtreetech-cb1-manta.dts | 35 +++++ > .../sun50i-h616-bigtreetech-cb1.dtsi | 142 ++++++++++++++++++ > 3 files changed, 178 insertions(+) > create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h616-bigtreetech-cb1-manta.dts > create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h616-bigtreetech-cb1.dtsi > > 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..9a30d7d627d9 > --- /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 . > + */ > + > +/dts-v1/; > + > +#include "sun50i-h616-bigtreetech-cb1.dtsi" > + > +/ { > + compatible = "bigtreetech,cb1-manta", "allwinner,sun50i-h616"; This must follow what you just added to sunxi.yaml, so: "bigtreetech,cb1-manta", "bigtreetech,cb1", "allwinner,sun50i-h616"; And you need the human readable "model" string *here*. > + > + 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"; > +}; > + Extra empty line here. > 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..669c05f642dd > --- /dev/null > +++ b/arch/arm64/boot/dts/allwinner/sun50i-h616-bigtreetech-cb1.dtsi > @@ -0,0 +1,142 @@ > +// SPDX-License-Identifier: (GPL-2.0+ or MIT) > +/* > + * Copyright (C) 2023 Martin Botka . > + */ > + > +/dts-v1/; > + > +#include "sun50i-h616.dtsi" > + > +#include > +#include > +#include > + > +/ { > + model = "BigTreeTech CB1" Apart from the missing semicolon, which actually breaks the build (as you have discovered yourself): there shouldn't be a model string in a .dtsi file, that should be confined to the final board .dts, just as a human readable form of the board compatible string. So drop this here, and add the respective name to the two .dts files. Rest looks fine now, thanks. Cheers, Andre > + aliases { > + ethernet0 = &rtl8189ftv; > + }; > + > + leds { > + compatible = "gpio-leds"; > + > + led-0 { > + function = LED_FUNCTION_STATUS; > + color = ; > + 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 { > + /* Always on 3.3V regulator for 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 { > + /* Always on 1.8V/300mA regulator for WiFi */ > + 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 = <1350000>; > + 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"; > +};