ARM: dts: allwinner: add support for NetCube Systems OpenNMC (dobermann)

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>
Acked-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Link: https://patch.msgid.link/20260606205452.2386930-4-lukas.schmid@netcube.li
[wens@kernel.org: Change "sunxi" in subject to "allwinner"]
Signed-off-by: Chen-Yu Tsai <wens@kernel.org>
This commit is contained in:
Lukas Schmid 2026-06-06 22:54:43 +02:00 committed by Chen-Yu Tsai
parent 5b0fd777eb
commit 8a5c37efce
2 changed files with 151 additions and 0 deletions

View File

@ -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.dtb \
sun8i-t113s-netcube-nagami-basic-carrier.dtb \
sun8i-t113s-netcube-nagami-keypad-carrier.dtb \
sun8i-t3-cqa3t-bv3.dtb \

View File

@ -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 = <&reg_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";
};