From nobody Mon Jun 8 05:25:48 2026 Received: from mail.netcube.li (mail.netcube.li [173.249.15.149]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 4A5F92E2DFB; Sat, 6 Jun 2026 19:17:23 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=173.249.15.149 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780773445; cv=none; b=U3fUBCjpeCQFqQrB/e6ge/M1xD4xRpW42bcCvTOOGIjlmpJMIKh3tc+2oQscvl1P8JrSQm+98/WuGoFhi6v2DP7HQiWZA8N6mgx00AbamCA4stxsXxe+iw88SVZ+njnbO7r0evkBksGLdpg58ze9YRJrIv3z4bwRkdHK8yJhvP4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780773445; c=relaxed/simple; bh=27FZggmFfooUbRXK18oUXNCON2FidPig+TucrvZfa70=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=acPy0I+TtK13jfQgA26vFF1UDD5KJb3pLGWomkNcakBgipSbLwS4VeBvndGU+2PWXlia609z3gThel2A9yHPYPRLvL0usx5MydhgzIfKF7YADhEeMdevo3tPdyoJrWSalolnVqszWC8rR6Xc9ApJglwN7NEIjhWKU4zYYOgL64I= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=netcube.li; spf=pass smtp.mailfrom=netcube.li; dkim=pass (1024-bit key) header.d=netcube.li header.i=@netcube.li header.b=RBRHVYP4; arc=none smtp.client-ip=173.249.15.149 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=netcube.li Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=netcube.li Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=netcube.li header.i=@netcube.li header.b="RBRHVYP4" dkim-signature: v=1; a=rsa-sha256; d=netcube.li; s=s1; c=relaxed/relaxed; q=dns/txt; h=From:Subject:Date:Message-ID:To:CC:MIME-Version:Content-Transfer-Encoding:In-Reply-To:References; bh=xgNX3BfF0sHR956gYPtFqiQRwqATyVW0rwVI7QS8mHU=; b=RBRHVYP4XyzunN15b//UgQuE6T7NVfWFFDRGeFa84u0ubocFJSulFmObdIUaTKHxf9FqYO28fzQPX9Ibf+byn5BEJvB4g+Uky4Xgc40dK1z31Wl3sRgjtesT0752j6DJ9XYR9lsi4vNHw69sAInEzSskfh9jzvqXrpc8ZxolLlE= Received: from lukas-hpz440workstation.lan.sk100508.local (194-166-56-114.hdsl.highway.telekom.at [194.166.56.114]) by mail.netcube.li with ESMTPA ; Sat, 6 Jun 2026 21:17:12 +0200 From: Lukas Schmid To: Rob Herring , Krzysztof Kozlowski , Conor Dooley , Chen-Yu Tsai , Jernej Skrabec , Samuel Holland , Paul Walmsley , Palmer Dabbelt , Albert Ou , Alexandre Ghiti , Maxime Ripard Cc: Lukas Schmid , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-sunxi@lists.linux.dev, linux-kernel@vger.kernel.org, linux-riscv@lists.infradead.org Subject: [PATCH v3 1/3] dt-bindings: arm: sunxi: Add NetCube Systems OpenNMC (dobermann) Date: Sat, 6 Jun 2026 21:16:39 +0200 Message-ID: <20260606191649.2347704-2-lukas.schmid@netcube.li> X-Mailer: git-send-email 2.47.3 In-Reply-To: <20260606191649.2347704-1-lukas.schmid@netcube.li> References: <20260606191649.2347704-1-lukas.schmid@netcube.li> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" The OpenNMC is an open replacement for APC SmartSlot management cards based on the Nagami System-on-Module. Signed-off-by: Lukas Schmid --- Documentation/devicetree/bindings/arm/sunxi.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/Documentation/devicetree/bindings/arm/sunxi.yaml b/Documentati= on/devicetree/bindings/arm/sunxi.yaml index e6443c266fa1..077b65507645 100644 --- a/Documentation/devicetree/bindings/arm/sunxi.yaml +++ b/Documentation/devicetree/bindings/arm/sunxi.yaml @@ -598,6 +598,7 @@ properties: - description: NetCube Systems Nagami SoM based boards items: - enum: + - netcube,dobermann - netcube,nagami-basic-carrier - netcube,nagami-keypad-carrier - const: netcube,nagami --=20 2.47.3 From nobody Mon Jun 8 05:25:48 2026 Received: from mail.netcube.li (mail.netcube.li [173.249.15.149]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 56C133C0625; Sat, 6 Jun 2026 19:17:25 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=173.249.15.149 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780773448; cv=none; b=T2t9QamnC8naflCXlSl9tKbQDaAW6XxsbuyHj+5AMvbGYcvVdk+u5Pm56h0hUfCDgAfI57qZzT/ye/iAnl39KWbyy8IuDxwuAVx4w/cc0fLDQREE2Dox1XXdqZdGra7lWRuIi/BFKaMm3ZauKhwVTDZAsLgFQ+M1E3k1TEKcROQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780773448; c=relaxed/simple; bh=fxjxwfx7XvPeO/NbiTK9kR5HAqqnG8gD+SZpa0q6mc0=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=Rz3FqekdbKri6qlbbmtV/Ujj2fTCiPKCEDZ7VwPtabtOX+qtLzWYZgaXqX0rq10qaMB/a7q4usbGAk0Wmie1eEKQQNtrmoTsl6Ezjcae+Y94LeO86GhXs1PA1esbrnuatslNZdPfWURP0DccB/mL6riA7K2yZ9ne96wMd/OTs2s= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=netcube.li; spf=pass smtp.mailfrom=netcube.li; dkim=pass (1024-bit key) header.d=netcube.li header.i=@netcube.li header.b=YzTXiYFx; arc=none smtp.client-ip=173.249.15.149 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=netcube.li Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=netcube.li Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=netcube.li header.i=@netcube.li header.b="YzTXiYFx" dkim-signature: v=1; a=rsa-sha256; d=netcube.li; s=s1; c=relaxed/relaxed; q=dns/txt; h=From:Subject:Date:Message-ID:To:CC:MIME-Version:Content-Transfer-Encoding:In-Reply-To:References; bh=gTs0cZaUUQQv4ViGpAM8i/wK3g92g6IK/a+nwJZu5P4=; b=YzTXiYFxyPJlipiSBs6WMacjC//y3aESKAjTWxTX3EqgITWEXsJWdcQqAXzMZgG+Tgqo3KQ1qRWEpzIrH31/Gs1HfnPtakk8KAF4l+oFZKhfqU7WLgyRSAPG5hFHgPxkTsu3LDxmOhuZR3EUk7mAT4Q/r4r7ERuFGiJ1xo8L3mA= Received: from lukas-hpz440workstation.lan.sk100508.local (194-166-56-114.hdsl.highway.telekom.at [194.166.56.114]) by mail.netcube.li with ESMTPA ; Sat, 6 Jun 2026 21:17:15 +0200 From: Lukas Schmid To: Rob Herring , Krzysztof Kozlowski , Conor Dooley , Chen-Yu Tsai , Jernej Skrabec , Samuel Holland , Paul Walmsley , Palmer Dabbelt , Albert Ou , Alexandre Ghiti , Maxime Ripard Cc: Lukas Schmid , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-sunxi@lists.linux.dev, linux-kernel@vger.kernel.org, linux-riscv@lists.infradead.org Subject: [PATCH v3 2/3] riscv: dts: allwinner: d1s-t113: Add uart4 pinctrl required by NetCube Systems OpenNMC Date: Sat, 6 Jun 2026 21:16:40 +0200 Message-ID: <20260606191649.2347704-3-lukas.schmid@netcube.li> X-Mailer: git-send-email 2.47.3 In-Reply-To: <20260606191649.2347704-1-lukas.schmid@netcube.li> References: <20260606191649.2347704-1-lukas.schmid@netcube.li> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Added the "uart4_pb_pins" pinctrl used by the OpenNMC Signed-off-by: Lukas Schmid --- arch/riscv/boot/dts/allwinner/sunxi-d1s-t113.dtsi | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/arch/riscv/boot/dts/allwinner/sunxi-d1s-t113.dtsi b/arch/riscv= /boot/dts/allwinner/sunxi-d1s-t113.dtsi index 82cc85acccb1..00fddedfa36f 100644 --- a/arch/riscv/boot/dts/allwinner/sunxi-d1s-t113.dtsi +++ b/arch/riscv/boot/dts/allwinner/sunxi-d1s-t113.dtsi @@ -191,6 +191,12 @@ uart3_pb_pins: uart3-pb-pins { pins =3D "PB6", "PB7"; function =3D "uart3"; }; + + /omit-if-no-ref/ + uart4_pb_pins: uart4-pb-pins { + pins =3D "PB2", "PB3"; + function =3D "uart4"; + }; }; =20 ccu: clock-controller@2001000 { --=20 2.47.3 From nobody Mon Jun 8 05:25:48 2026 Received: from mail.netcube.li (mail.netcube.li [173.249.15.149]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 8082E3B18A; Sat, 6 Jun 2026 19:17:44 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=173.249.15.149 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780773466; cv=none; b=ApCkiIdM38m7VJJ+YshtYBImuFwOLhWeG9u8XB3j/3kqov1Q/PF+yR1p4yKKmTbdsGXekv7ZIDr72j17tTSqLxZgkUN7g3OtHXJ4tN9+JYdhRZgJ3r1zJAjN6Ex+zjzgGJK5umnRcMnekBfwalVVMhWTzgXiLp4TD/EHXZfdb8E= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780773466; c=relaxed/simple; bh=1CwDfWv7a0O11A5Q5Lc7EFxGOFJYxTyi9xGjkhMfFCs=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=fSrG0ogxcUCdJ56iOrkLcCZKBNQxhs09gBerOv8OdL6T8Gx16IsafWjlN/iTSHLg289fCKkq9NeX7PSh5xbrn6uQguRoKns8WTbMF7Don5/VO1xz8SGiRSgAMquzBcSci0K0DBMCrQFy15ndDYA+IZIm5Dlq91e9QR6mSesW1oU= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=netcube.li; spf=pass smtp.mailfrom=netcube.li; dkim=pass (1024-bit key) header.d=netcube.li header.i=@netcube.li header.b=mcuVUmVF; arc=none smtp.client-ip=173.249.15.149 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=netcube.li Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=netcube.li Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=netcube.li header.i=@netcube.li header.b="mcuVUmVF" dkim-signature: v=1; a=rsa-sha256; d=netcube.li; s=s1; c=relaxed/relaxed; q=dns/txt; h=From:Subject:Date:Message-ID:To:CC:MIME-Version:Content-Transfer-Encoding:In-Reply-To:References; bh=ffnXUd5LBhLAi8JREDtR4sxemQe4e7mHjc/Pb44ejsU=; b=mcuVUmVFeZzEnQXfAVAhzvp+Lz/3htFarmZ6wAHsZJwdXdIvKmqlry3WKqfKVU1suy2cww1roC89Dq1eWXKvEjZdfzdcw3sbVA5+NYtJqTUrFywmc82oenXGV97teHhBKH2XEPuBa6kI2iazBUWwHS8LY2MXGDZtmS7AcLfJrQk= Received: from lukas-hpz440workstation.lan.sk100508.local (194-166-56-114.hdsl.highway.telekom.at [194.166.56.114]) by mail.netcube.li with ESMTPA ; Sat, 6 Jun 2026 21:17:18 +0200 From: Lukas Schmid To: Rob Herring , Krzysztof Kozlowski , Conor Dooley , Chen-Yu Tsai , Jernej Skrabec , Samuel Holland , Paul Walmsley , Palmer Dabbelt , Albert Ou , Alexandre Ghiti , Maxime Ripard Cc: Lukas Schmid , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-sunxi@lists.linux.dev, linux-kernel@vger.kernel.org, linux-riscv@lists.infradead.org Subject: [PATCH v3 3/3] ARM: dts: sunxi: add support for NetCube Systems OpenNMC (dobermann) Date: Sat, 6 Jun 2026 21:16:41 +0200 Message-ID: <20260606191649.2347704-4-lukas.schmid@netcube.li> X-Mailer: git-send-email 2.47.3 In-Reply-To: <20260606191649.2347704-1-lukas.schmid@netcube.li> References: <20260606191649.2347704-1-lukas.schmid@netcube.li> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" NetCube Systems OpenNMC is an open replacement for APC SmartSlot Management Cards. It is based on the Nagami System-on-Module. It breaks out the following interfaces: - 10/100 Mbps Ethernet - USB Type-C OTG using a TUSB320 (usb0) - USB Type-C Console Port using a CH340 (uart3) - USB Type-A Host with internal CH334 USB-Hub (usb1) - MicroSD Slot with Card-Detect (mmc0) - WiFi/Bluetooth using the modules built-in ESP32 - SmartSlot serial interface (uart4) - DS3232 RTC with CR1220 Battery Backup - Extension connector providing SPI,I2C,USB,CAN,UART for future use. Signed-off-by: Lukas Schmid --- arch/arm/boot/dts/allwinner/Makefile | 2 + .../sun8i-t113s-netcube-dobermann.dts | 149 ++++++++++++++++++ 2 files changed, 151 insertions(+) create mode 100644 arch/arm/boot/dts/allwinner/sun8i-t113s-netcube-doberma= nn.dts diff --git a/arch/arm/boot/dts/allwinner/Makefile b/arch/arm/boot/dts/allwi= nner/Makefile index f71392a55df8..220a20734dc2 100644 --- a/arch/arm/boot/dts/allwinner/Makefile +++ b/arch/arm/boot/dts/allwinner/Makefile @@ -201,6 +201,7 @@ DTC_FLAGS_sun8i-h3-orangepi-pc :=3D -@ DTC_FLAGS_sun8i-h3-bananapi-m2-plus-v1.2 :=3D -@ DTC_FLAGS_sun8i-h3-orangepi-pc-plus :=3D -@ DTC_FLAGS_sun8i-t113s-netcube-nagami-basic-carrier :=3D -@ +DTC_FLAGS_sun8i-t113s-netcube-dobermann :=3D -@ DTC_FLAGS_sun8i-v3s-netcube-kumquat :=3D -@ dtb-$(CONFIG_MACH_SUN8I) +=3D \ sun8i-a23-evb.dtb \ @@ -261,6 +262,7 @@ dtb-$(CONFIG_MACH_SUN8I) +=3D \ sun8i-s3-lichee-zero-plus.dtb \ sun8i-s3-pinecube.dtb \ sun8i-t113s-mangopi-mq-r-t113.dtb \ + sun8i-t113s-netcube-dobermann.dts \ sun8i-t113s-netcube-nagami-basic-carrier.dtb \ sun8i-t113s-netcube-nagami-keypad-carrier.dtb \ sun8i-t3-cqa3t-bv3.dtb \ diff --git a/arch/arm/boot/dts/allwinner/sun8i-t113s-netcube-dobermann.dts = b/arch/arm/boot/dts/allwinner/sun8i-t113s-netcube-dobermann.dts new file mode 100644 index 000000000000..d7765caffe2a --- /dev/null +++ b/arch/arm/boot/dts/allwinner/sun8i-t113s-netcube-dobermann.dts @@ -0,0 +1,149 @@ +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) +/* + * Copyright (C) 2026 Lukas Schmid + */ + +/dts-v1/; +#include "sun8i-t113s-netcube-nagami.dtsi" + +#include + +/ { + model =3D "NetCube Systems OpenNMC (dobermann)"; + compatible =3D "netcube,dobermann", "netcube,nagami", + "allwinner,sun8i-t113s"; + + aliases { + serial2 =3D &uart4; // UART on SmartSlot + rtc0 =3D &ds3232; + rtc1 =3D &rtc; // not battery backed + }; + + leds { + compatible =3D "gpio-leds"; + + led_heartbeat_green: led-heartbeat-green { + gpios =3D <&pio 6 14 GPIO_ACTIVE_HIGH>; /* PG14 */ + linux,default-trigger =3D "heartbeat"; + color =3D ; + function =3D LED_FUNCTION_HEARTBEAT; + }; + }; +}; + +&ehci0 { + status =3D "okay"; +}; + +&ehci1 { + status =3D "okay"; +}; + +&i2c2 { + status =3D "okay"; + + tusb320: typec@60 { + compatible =3D "ti,tusb320"; + reg =3D <0x60>; + interrupts-extended =3D <&pio 3 22 IRQ_TYPE_LEVEL_LOW>; /* PD22 */ + }; + + ds3232: rtc@68 { + compatible =3D "dallas,ds3232"; + reg =3D <0x68>; + }; +}; + +/* microSD Card Slot on the board */ +&mmc0 { + vmmc-supply =3D <®_vcc3v3>; + disable-wp; + bus-width =3D <4>; + cd-gpios =3D <&pio 6 15 GPIO_ACTIVE_LOW>; /* PG15 */ + status =3D "okay"; +}; + +&ohci0 { + status =3D "okay"; +}; + +&ohci1 { + status =3D "okay"; +}; + +&pio { + gpio-line-names =3D "", "", "", "", // PA + "", "", "", "", + "", "", "", "", + "", "", "", "", + "", "", "", "", + "", "", "", "", + "", "", "", "", + "", "", "", "", + "", "", "SMART_TX", "SMART_RX", // PB + "EXT_IO3", "EXT_IO2", "CONSOLE_TX", "CONSOLE_RX", + "", "", "", "", + "", "", "", "", + "", "", "", "", + "", "", "", "", + "", "", "", "", + "", "", "", "", + "", "", "eMMC_CLK", "eMMC_CMD", // PC + "eMMC_D2", "eMMC_D1", "eMMC_D0", "eMMC_D3", + "", "", "", "", + "", "", "", "", + "", "", "", "", + "", "", "", "", + "", "", "", "", + "", "", "", "", + "", "", "", "", // PD + "", "", "", "", + "", "USB_SEC_EN", "EXT_SPI_nCS", "EXT_SPI_SCK", + "EXT_SPI_MOSI", "EXT_SPI_MISO", "EXT_IO5", "EXT_IO4", + "SMART_SEL", "", "", "", + "I2C2_SCL", "I2C2_SDA", "TUSB320_nINT", "", + "", "", "", "", + "", "", "", "", + "ETH_CRSDV", "ETH_RXD0", "ETH_RXD1", "ETH_TXCK", // PE + "ETH_TXD0", "ETH_TXD1", "ETH_TXEN", "", + "ETH_MDC", "ETH_MDIO", "I2C3_nINT", "", + "", "", "", "", + "", "", "", "", + "", "", "", "", + "", "", "", "", + "", "", "", "", + "uSD_D1", "uSD_D0", "uSD_CLK", "uSD_CMD", // PF + "uSD_D3", "uSD_D2", "TUSB320_ID", "", + "", "", "", "", + "", "", "", "", + "", "", "", "", + "", "", "", "", + "", "", "", "", + "", "", "", "", + "ESP_CLK", "ESP_CMD", "ESP_D0", "ESP_D1", // PG + "ESP_D2", "ESP_D3", "ESP_TXD", "ESP_RXD", + "ESP_nBOOT", "ESP_nRST", "I2C3_SCL", "I2C3_SDA", + "EXT_IO1", "EXT_IO0", "LED_HEARTBEAT", "SD_DETECT", + "", "", "", "", + "", "", "", "", + "", "", "", "", + "", "", "", ""; +}; + +/* SmartSlot serial */ +&uart4 { + pinctrl-0 =3D <&uart4_pb_pins>; + pinctrl-names =3D "default"; + status =3D "okay"; +}; + +&usb_otg { + extcon =3D <&tusb320 0>; + dr_mode =3D "otg"; + status =3D "okay"; +}; + +&usbphy { + usb0_id_det-gpios =3D <&pio 5 6 GPIO_ACTIVE_HIGH>; /* PF6 */ + status =3D "okay"; +}; --=20 2.47.3