summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorQuentin Schulz <quentin.schulz@cherry.de>2026-08-11 16:08:27 +0200
committerHeiko Stuebner <heiko@sntech.de>2026-09-02 13:07:56 +0200
commit7aa165b62ccaf340da22c517074e7c6853db55cd (patch)
tree958af72145b7817a537978afb32ac63e8c6c3a41
parentb217437b8f20cbc745d789ea99244274b9dc592f (diff)
downloadlinux-next-7aa165b62ccaf340da22c517074e7c6853db55cd.tar.gz
linux-next-7aa165b62ccaf340da22c517074e7c6853db55cd.zip
arm64: dts: rockchip: support CAN1-CAN2-UART4 adapter for RK3588 Jaguar
RK3588 Jaguar has a proprietary Mezzanine connector which exposes among other things CAN1 and CAN2 controllers as well as UART4. Add support for the CAN1-CAN2-UART4 Mezzanine adapter for RK3588 Jaguar which exposes two CAN busses (CAN1 and CAN2) and an RS-232 UART, limited to 250Kbps. Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de> Link: https://patch.msgid.link/20260811-jaguar-can-v2-2-7e78415b5a08@cherry.de Signed-off-by: Heiko Stuebner <heiko@sntech.de>
-rw-r--r--arch/arm64/boot/dts/rockchip/Makefile5
-rw-r--r--arch/arm64/boot/dts/rockchip/rk3588-jaguar-can1-can2-uart4.dtso26
-rw-r--r--arch/arm64/boot/dts/rockchip/rk3588-jaguar.dts10
3 files changed, 41 insertions, 0 deletions
diff --git a/arch/arm64/boot/dts/rockchip/Makefile b/arch/arm64/boot/dts/rockchip/Makefile
index f5d5e819a948..b677914cd3f1 100644
--- a/arch/arm64/boot/dts/rockchip/Makefile
+++ b/arch/arm64/boot/dts/rockchip/Makefile
@@ -197,6 +197,7 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-firefly-itx-3588j.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-friendlyelec-cm3588-nas.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-h96-max-v58.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-jaguar.dtb
+dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-jaguar-can1-can2-uart4.dtbo
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-jaguar-ethernet-switch.dtbo
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-jaguar-pre-ict-tester.dtbo
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-lubancat-5io.dtb
@@ -320,6 +321,10 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-edgeble-neu6b-wifi.dtb
rk3588-edgeble-neu6b-wifi-dtbs := rk3588-edgeble-neu6b-io.dtb \
rk3588-edgeble-neu6a-wifi.dtbo
+dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-jaguar-can1-can2-uart4.dtb
+rk3588-jaguar-can1-can2-uart4-dtbs := rk3588-jaguar.dtb \
+ rk3588-jaguar-can1-can2-uart4.dtbo
+
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-jaguar-ethernet-switch.dtb
rk3588-jaguar-ethernet-switch-dtbs := rk3588-jaguar.dtb \
rk3588-jaguar-ethernet-switch.dtbo
diff --git a/arch/arm64/boot/dts/rockchip/rk3588-jaguar-can1-can2-uart4.dtso b/arch/arm64/boot/dts/rockchip/rk3588-jaguar-can1-can2-uart4.dtso
new file mode 100644
index 000000000000..6c21bf78591b
--- /dev/null
+++ b/arch/arm64/boot/dts/rockchip/rk3588-jaguar-can1-can2-uart4.dtso
@@ -0,0 +1,26 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright (c) 2026 Cherry Embedded Solutions GmbH
+ *
+ * Device Tree Overlay for CAN1-CAN2-UART4 adapter for the Mezzanine connector
+ * on RK3588 Jaguar.
+ *
+ * This adapter has two CAN transceivers and one RS232 transceiver.
+ */
+
+/dts-v1/;
+/plugin/;
+
+&can1 {
+ status = "okay";
+};
+
+&can2 {
+ status = "okay";
+};
+
+/* RS232 */
+&uart4 {
+ /* ST3232B only guarantees 250Kbps */
+ status = "okay";
+};
diff --git a/arch/arm64/boot/dts/rockchip/rk3588-jaguar.dts b/arch/arm64/boot/dts/rockchip/rk3588-jaguar.dts
index ed6c1162bd82..0446834e84d5 100644
--- a/arch/arm64/boot/dts/rockchip/rk3588-jaguar.dts
+++ b/arch/arm64/boot/dts/rockchip/rk3588-jaguar.dts
@@ -201,6 +201,16 @@
status = "okay";
};
+&can1 {
+ assigned-clocks = <&cru CLK_CAN1>;
+ assigned-clock-rates = <300000000>;
+};
+
+&can2 {
+ assigned-clocks = <&cru CLK_CAN2>;
+ assigned-clock-rates = <300000000>;
+};
+
&combphy1_ps {
status = "okay";
};