* [PATCH v3 0/3] Add support for NetCube Systems OpenNMC (dobermann)
@ 2026-06-06 19:16 Lukas Schmid
2026-06-06 19:16 ` [PATCH v3 1/3] dt-bindings: arm: sunxi: Add " Lukas Schmid
` (2 more replies)
0 siblings, 3 replies; 5+ messages in thread
From: Lukas Schmid @ 2026-06-06 19:16 UTC (permalink / raw)
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, linux-arm-kernel, linux-sunxi,
linux-kernel, linux-riscv
This series adds support for the NetCube Systems OpenNMC
Changes in v3:
- actually add the Makefile changes
Changes in v2:
- fixed ordering of compatible enum
- fixed gpio line names
Signed-off-by: Lukas Schmid <lukas.schmid@netcube.li>
---
Lukas Schmid (3):
dt-bindings: arm: sunxi: Add NetCube Systems OpenNMC (dobermann)
riscv: dts: allwinner: d1s-t113: Add uart4 pinctrl required by NetCube
Systems OpenNMC
ARM: dts: sunxi: add support for NetCube Systems OpenNMC (dobermann)
.../devicetree/bindings/arm/sunxi.yaml | 1 +
arch/arm/boot/dts/allwinner/Makefile | 2 +
.../sun8i-t113s-netcube-dobermann.dts | 149 ++++++++++++++++++
.../boot/dts/allwinner/sunxi-d1s-t113.dtsi | 6 +
4 files changed, 158 insertions(+)
create mode 100644 arch/arm/boot/dts/allwinner/sun8i-t113s-netcube-dobermann.dts
--
2.47.3
^ permalink raw reply [flat|nested] 5+ messages in thread* [PATCH v3 1/3] dt-bindings: arm: sunxi: Add NetCube Systems OpenNMC (dobermann) 2026-06-06 19:16 [PATCH v3 0/3] Add support for NetCube Systems OpenNMC (dobermann) Lukas Schmid @ 2026-06-06 19:16 ` Lukas Schmid 2026-06-06 19:16 ` [PATCH v3 2/3] riscv: dts: allwinner: d1s-t113: Add uart4 pinctrl required by NetCube Systems OpenNMC Lukas Schmid 2026-06-06 19:16 ` [PATCH v3 3/3] ARM: dts: sunxi: add support for NetCube Systems OpenNMC (dobermann) Lukas Schmid 2 siblings, 0 replies; 5+ messages in thread From: Lukas Schmid @ 2026-06-06 19:16 UTC (permalink / raw) 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, linux-arm-kernel, linux-sunxi, linux-kernel, linux-riscv The OpenNMC is an open replacement for APC SmartSlot management cards based on the Nagami System-on-Module. Signed-off-by: Lukas Schmid <lukas.schmid@netcube.li> --- Documentation/devicetree/bindings/arm/sunxi.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/Documentation/devicetree/bindings/arm/sunxi.yaml b/Documentation/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 -- 2.47.3 ^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH v3 2/3] riscv: dts: allwinner: d1s-t113: Add uart4 pinctrl required by NetCube Systems OpenNMC 2026-06-06 19:16 [PATCH v3 0/3] Add support for NetCube Systems OpenNMC (dobermann) Lukas Schmid 2026-06-06 19:16 ` [PATCH v3 1/3] dt-bindings: arm: sunxi: Add " Lukas Schmid @ 2026-06-06 19:16 ` Lukas Schmid 2026-06-06 19:16 ` [PATCH v3 3/3] ARM: dts: sunxi: add support for NetCube Systems OpenNMC (dobermann) Lukas Schmid 2 siblings, 0 replies; 5+ messages in thread From: Lukas Schmid @ 2026-06-06 19:16 UTC (permalink / raw) 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, linux-arm-kernel, linux-sunxi, linux-kernel, linux-riscv Added the "uart4_pb_pins" pinctrl used by the OpenNMC Signed-off-by: Lukas Schmid <lukas.schmid@netcube.li> --- 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 = "PB6", "PB7"; function = "uart3"; }; + + /omit-if-no-ref/ + uart4_pb_pins: uart4-pb-pins { + pins = "PB2", "PB3"; + function = "uart4"; + }; }; ccu: clock-controller@2001000 { -- 2.47.3 ^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH v3 3/3] ARM: dts: sunxi: add support for NetCube Systems OpenNMC (dobermann) 2026-06-06 19:16 [PATCH v3 0/3] Add support for NetCube Systems OpenNMC (dobermann) Lukas Schmid 2026-06-06 19:16 ` [PATCH v3 1/3] dt-bindings: arm: sunxi: Add " Lukas Schmid 2026-06-06 19:16 ` [PATCH v3 2/3] riscv: dts: allwinner: d1s-t113: Add uart4 pinctrl required by NetCube Systems OpenNMC Lukas Schmid @ 2026-06-06 19:16 ` Lukas Schmid 2026-06-06 19:26 ` sashiko-bot 2 siblings, 1 reply; 5+ messages in thread From: Lukas Schmid @ 2026-06-06 19:16 UTC (permalink / raw) 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, linux-arm-kernel, linux-sunxi, linux-kernel, linux-riscv 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 <lukas.schmid@netcube.li> --- 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-dobermann.dts diff --git a/arch/arm/boot/dts/allwinner/Makefile b/arch/arm/boot/dts/allwinner/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 := -@ DTC_FLAGS_sun8i-h3-bananapi-m2-plus-v1.2 := -@ DTC_FLAGS_sun8i-h3-orangepi-pc-plus := -@ DTC_FLAGS_sun8i-t113s-netcube-nagami-basic-carrier := -@ +DTC_FLAGS_sun8i-t113s-netcube-dobermann := -@ DTC_FLAGS_sun8i-v3s-netcube-kumquat := -@ dtb-$(CONFIG_MACH_SUN8I) += \ sun8i-a23-evb.dtb \ @@ -261,6 +262,7 @@ dtb-$(CONFIG_MACH_SUN8I) += \ 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 <lukas.schmid@netcube.li> + */ + +/dts-v1/; +#include "sun8i-t113s-netcube-nagami.dtsi" + +#include <dt-bindings/leds/common.h> + +/ { + model = "NetCube Systems OpenNMC (dobermann)"; + compatible = "netcube,dobermann", "netcube,nagami", + "allwinner,sun8i-t113s"; + + aliases { + serial2 = &uart4; // UART on SmartSlot + rtc0 = &ds3232; + rtc1 = &rtc; // not battery backed + }; + + leds { + compatible = "gpio-leds"; + + led_heartbeat_green: led-heartbeat-green { + gpios = <&pio 6 14 GPIO_ACTIVE_HIGH>; /* PG14 */ + linux,default-trigger = "heartbeat"; + color = <LED_COLOR_ID_GREEN>; + function = LED_FUNCTION_HEARTBEAT; + }; + }; +}; + +&ehci0 { + status = "okay"; +}; + +&ehci1 { + status = "okay"; +}; + +&i2c2 { + status = "okay"; + + tusb320: typec@60 { + compatible = "ti,tusb320"; + reg = <0x60>; + interrupts-extended = <&pio 3 22 IRQ_TYPE_LEVEL_LOW>; /* PD22 */ + }; + + ds3232: rtc@68 { + compatible = "dallas,ds3232"; + reg = <0x68>; + }; +}; + +/* microSD Card Slot on the board */ +&mmc0 { + vmmc-supply = <®_vcc3v3>; + disable-wp; + bus-width = <4>; + cd-gpios = <&pio 6 15 GPIO_ACTIVE_LOW>; /* PG15 */ + status = "okay"; +}; + +&ohci0 { + status = "okay"; +}; + +&ohci1 { + status = "okay"; +}; + +&pio { + gpio-line-names = "", "", "", "", // 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 = <&uart4_pb_pins>; + pinctrl-names = "default"; + status = "okay"; +}; + +&usb_otg { + extcon = <&tusb320 0>; + dr_mode = "otg"; + status = "okay"; +}; + +&usbphy { + usb0_id_det-gpios = <&pio 5 6 GPIO_ACTIVE_HIGH>; /* PF6 */ + status = "okay"; +}; -- 2.47.3 ^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH v3 3/3] ARM: dts: sunxi: add support for NetCube Systems OpenNMC (dobermann) 2026-06-06 19:16 ` [PATCH v3 3/3] ARM: dts: sunxi: add support for NetCube Systems OpenNMC (dobermann) Lukas Schmid @ 2026-06-06 19:26 ` sashiko-bot 0 siblings, 0 replies; 5+ messages in thread From: sashiko-bot @ 2026-06-06 19:26 UTC (permalink / raw) To: Lukas Schmid; +Cc: devicetree, robh, conor+dt, linux-sunxi Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider: - [Low] The device tree source file is incorrectly added to the Makefile with a `.dts` extension instead of `.dtb`, which prevents the build system from generating the compiled device tree blob. -- commit 050625703589dd3473dcaea2f70357c5bd2c45b5 Author: Lukas Schmid <lukas.schmid@netcube.li> ARM: dts: sunxi: add support for NetCube Systems OpenNMC (dobermann) This commit adds device tree support for the NetCube Systems OpenNMC board, which acts as an open replacement for APC SmartSlot Management Cards based on the Nagami System-on-Module. > diff --git a/arch/arm/boot/dts/allwinner/Makefile b/arch/arm/boot/dts/allwinner/Makefile > index f71392a55df87..220a20734dc24 100644 > --- a/arch/arm/boot/dts/allwinner/Makefile > +++ b/arch/arm/boot/dts/allwinner/Makefile [ ... ] > @@ -261,6 +262,7 @@ dtb-$(CONFIG_MACH_SUN8I) += \ > sun8i-s3-lichee-zero-plus.dtb \ > sun8i-s3-pinecube.dtb \ > sun8i-t113s-mangopi-mq-r-t113.dtb \ > + sun8i-t113s-netcube-dobermann.dts \ [Severity: Low] Does this target need to use the .dtb extension instead of .dts? Kbuild expects the compiled device tree blob targets in the dtb-y lists to resolve the compilation rules. Listing the source .dts file here might cause the build system to skip compiling the new device tree blob entirely. [ ... ] -- Sashiko AI review · https://sashiko.dev/#/patchset/20260606191649.2347704-1-lukas.schmid@netcube.li?part=3 ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2026-06-06 19:26 UTC | newest] Thread overview: 5+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2026-06-06 19:16 [PATCH v3 0/3] Add support for NetCube Systems OpenNMC (dobermann) Lukas Schmid 2026-06-06 19:16 ` [PATCH v3 1/3] dt-bindings: arm: sunxi: Add " Lukas Schmid 2026-06-06 19:16 ` [PATCH v3 2/3] riscv: dts: allwinner: d1s-t113: Add uart4 pinctrl required by NetCube Systems OpenNMC Lukas Schmid 2026-06-06 19:16 ` [PATCH v3 3/3] ARM: dts: sunxi: add support for NetCube Systems OpenNMC (dobermann) Lukas Schmid 2026-06-06 19:26 ` sashiko-bot
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox