Received: by 2002:a05:6359:6284:b0:131:369:b2a3 with SMTP id se4csp1108935rwb; Sat, 5 Aug 2023 07:31:08 -0700 (PDT) X-Google-Smtp-Source: AGHT+IEn+/OVmRydqMuO+uvkhsBFq3cpd/SKsG0WE3Ps+65wCA2F49078UdIT1pzHkhiG5ro4bPm X-Received: by 2002:a05:6512:3e05:b0:4fb:fe00:49c2 with SMTP id i5-20020a0565123e0500b004fbfe0049c2mr4331212lfv.32.1691245868196; Sat, 05 Aug 2023 07:31:08 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1691245868; cv=none; d=google.com; s=arc-20160816; b=KqssGYoEmbQve857gg3lJNdtghWx0rwbfAvHhe7qfmUUzmvOP7ZML7F5nt6o9Z1xpM bHyzR/4or+IGP9m3EvdW8eFX3wQWjOwJh12o2zqiB/yTkCoi16eDvSdpw9kz8TkEDhAO YCqnVqMcfbpfwxvP3nVm8/bE+fYHurPLdskvLSZ6pkLeKvtrG73XkBodfdN9/3kOXqsG NFo7NM5mDi55e2wRIKWYgc1VIAflj3flKaTRxDR8n8C2sIvE9Q+MVsi+Bq1NoZLrfqyD JwJcRaJFGTESXGQXJoAgIOaZlVwTrEpfiO8YdtgXXqwB60/7QZEXFNy+TWjhPio1b7kB V5dQ== 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=DyxIiJhyRGajOD+kn/ZSE9meLOC+9xULK/4Nd65GCsc=; fh=DcWBhDOmmb0db+DZ2Ue+Es7yhTPXil62X/ierocpHh4=; b=ChtArHvvTG63kgdw9SjtcCOGcSBvNbEnhrqdhhL7d/jvV6wuYBih1Ac4qixizwC0P3 LWTR1Ieyvt3BZEDIRhSByKi2FH5ITgqEoHL6+3Zy2+kaFvLb32tf2FRrkZJ78a7ycWCn ZvUQW0IbR9Sds1z2vCgMT0TW6/vJoYxKBTh8GIdkp/AXIsm20wQBpAq3yzp9a4iRdEwM 3cm576vQWjHANP1TDCs3ZuquRttlQmTzlbZoK8eCT7DKiikFw2U0R+gbXPthQuITe/fg Tn9fSB01E0klhU7yv8tp5IwxGr52J1CE+L9zmgB79riy99tIqpTZWa4QVDjqOYX1ru5K IeFQ== 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 b21-20020aa7d495000000b0052221a15156si3039415edr.490.2023.08.05.07.30.36; Sat, 05 Aug 2023 07:31:08 -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 S229551AbjHEOTh (ORCPT + 99 others); Sat, 5 Aug 2023 10:19:37 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:46778 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229379AbjHEOTg (ORCPT ); Sat, 5 Aug 2023 10:19:36 -0400 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id 65CC03C16; Sat, 5 Aug 2023 07:19:34 -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 B67C51FB; Sat, 5 Aug 2023 07:20:16 -0700 (PDT) Received: from slackpad.lan (unknown [172.31.20.19]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 6F4963F59C; Sat, 5 Aug 2023 07:19:30 -0700 (PDT) Date: Sat, 5 Aug 2023 15:18:33 +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 , Ludwig Kormann , Andrew Lunn , Icenowy Zheng , 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 v3 3/4] arm64: dts: allwinner: h616: Add BigTreeTech CB1 SoM & boards support Message-ID: <20230805151833.4adcb6b5@slackpad.lan> In-Reply-To: References: <20230805083636.788048-1-martin@biqu3d.com> Organization: Arm Ltd. X-Mailer: Claws Mail 4.1.1 (GTK 3.24.31; x86_64-slackware-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 Sat, 5 Aug 2023 10:36:06 +0200 Martin Botka wrote: Hi, > 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 > - 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 Thanks, looks good now, git am, dtc, checkpatch and dt-validate all pass (given the "interrupt optional" binding patch): Reviewed-by: Andre Przywara Cheers, Andre > --- > 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 > Changes in V3: > - Add missed semicolons > - Move model string from dtsi to board dts > - Add cb1 compatible > - Remove extra empty line > > arch/arm64/boot/dts/allwinner/Makefile | 1 + > .../sun50i-h616-bigtreetech-cb1-manta.dts | 35 +++++ > .../sun50i-h616-bigtreetech-cb1.dtsi | 140 ++++++++++++++++++ > 3 files changed, 176 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..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 . > + */ > + > +/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..5f606fcce97c > --- /dev/null > +++ b/arch/arm64/boot/dts/allwinner/sun50i-h616-bigtreetech-cb1.dtsi > @@ -0,0 +1,140 @@ > +// SPDX-License-Identifier: (GPL-2.0+ or MIT) > +/* > + * Copyright (C) 2023 Martin Botka . > + */ > + > +/dts-v1/; > + > +#include "sun50i-h616.dtsi" > + > +#include > +#include > +#include > + > +/ { > + 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"; > +};