ALT Linux kernel packages development
 help / color / mirror / Atom feed
From: Vitaly Chikunov <vt@altlinux.org>
To: ALT Linux kernel packages development <devel-kernel@lists.altlinux.org>
Subject: Re: [d-kernel] [PATCH] arm64: dts: rockchip: Add NMS-SM-EVM v1 Board support
Date: Fri, 7 Nov 2025 04:24:13 +0300
Message-ID: <xby5xju4gykeb3cvmt2gbfvk5d@altlinux.org> (raw)
In-Reply-To: <20251106140127.208052-1-gnusarevda@basealt.ru>

Daniil,

On Thu, Nov 06, 2025 at 06:01:27PM +0400, Daniil Gnusarev wrote:
> The NMS-SM-EVM motherboard is designed to route the NMS-SM-RK3568
> module's interface signals to external standard connectors.
> It includes the following peripherals:
> 1 x USB 3.0 OTG
> 2 x USB 2.0 HOST
> 2 x GbE LAN
> 1 x PCI-e 2.0 (+ USB 2.0 HOST + I2C_MPCI)
> 1 x PCI-e 3.0
> 1 x Serial port (RS-232)
> 1 x Debug console (UART → USB)
> 1 x HDMI
> 2 x MIPI DSI (+ 2 x I2C_DSI)
> 1 x MIPI CSI
> 1 x I2S
> 1 x DP
> 2 x CAN
> 1 x SATA
> 3 x I2C
> 2 x SPI
> 1 x PWM
> GPIO pins
> 
> Link: https://github.com/inmys/buildroot-external-inmys/tree/nms-sm-rk3568-6.12/dts

Видимо, имелось ввиду что это для 6.12/sisyphus.
Applied, thanks

> Signed-off-by: Daniil Gnusarev <gnusarevda@basealt.ru>


> ---
>  arch/arm64/boot/dts/rockchip/Makefile         |   1 +
>  .../dts/rockchip/rk3568-inmys-smarc-evm.dts   | 357 ++++++++++++++++++
>  2 files changed, 358 insertions(+)
>  create mode 100644 arch/arm64/boot/dts/rockchip/rk3568-inmys-smarc-evm.dts
> 
> diff --git a/arch/arm64/boot/dts/rockchip/Makefile b/arch/arm64/boot/dts/rockchip/Makefile
> index 3906bfde7970b4..40241c47f68a9d 100644
> --- a/arch/arm64/boot/dts/rockchip/Makefile
> +++ b/arch/arm64/boot/dts/rockchip/Makefile
> @@ -111,6 +111,7 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3568-bpi-r2-pro.dtb
>  dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3568-evb1-v10.dtb
>  dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3568-fastrhino-r66s.dtb
>  dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3568-fastrhino-r68s.dtb
> +dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3568-inmys-smarc-evm.dtb
>  dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3568-lubancat-2.dtb
>  dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3568-mecsbc.dtb
>  dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3568-nanopi-r5c.dtb
> diff --git a/arch/arm64/boot/dts/rockchip/rk3568-inmys-smarc-evm.dts b/arch/arm64/boot/dts/rockchip/rk3568-inmys-smarc-evm.dts
> new file mode 100644
> index 00000000000000..6a42410befec3e
> --- /dev/null
> +++ b/arch/arm64/boot/dts/rockchip/rk3568-inmys-smarc-evm.dts
> @@ -0,0 +1,357 @@
> +// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
> +
> +/dts-v1/;
> +#include <dt-bindings/gpio/gpio.h>
> +#include <dt-bindings/leds/common.h>
> +#include <dt-bindings/pinctrl/rockchip.h>
> +#include <dt-bindings/soc/rockchip,vop2.h>
> +#include "rk3568-inmys-smarc-som_v2.dtsi"
> +
> +/ {
> +	model = "NMS-SM-EVM with NMS-SM-RK3568";
> +	compatible = "inmys,rk3568-smarc-evm", "inmys,rk3568-smarc-som", "rockchip,rk3568";
> +
> +	vcc12v_dcin: vcc12v-dcin {
> +		compatible = "regulator-fixed";
> +		regulator-name = "vcc12v_dcin";
> +		regulator-always-on;
> +		regulator-boot-on;
> +		regulator-min-microvolt = <12000000>;
> +		regulator-max-microvolt = <12000000>;
> +	};
> +
> +	vcc5v0_mb: vcc5v0-mb {
> +		compatible = "regulator-fixed";
> +		regulator-name = "vcc5v0_mb";
> +		regulator-always-on;
> +		regulator-boot-on;
> +		regulator-min-microvolt = <5000000>;
> +		regulator-max-microvolt = <5000000>;
> +		vin-supply = <&vcc12v_dcin>;
> +	};
> +
> +	vcc3v3_mb: vcc3v3-mb {
> +		compatible = "regulator-fixed";
> +		regulator-name = "vcc3v3_mb";
> +		regulator-always-on;
> +		regulator-boot-on;
> +		regulator-min-microvolt = <3300000>;
> +		regulator-max-microvolt = <3300000>;
> +		vin-supply = <&vcc12v_dcin>;
> +	};
> +};
> +
> +&smarc_vdd_in{
> +	/* 5V to SOM */
> +	vin-supply = <&vcc5v0_mb>;
> +};
> +
> +&gmac0 {
> +	status = "okay";
> +};
> +
> +&gmac1 {
> +	status = "okay";
> +};
> +
> +
> +/* HDMI output */
> +/{
> +	hdmi-con {
> +		compatible = "hdmi-connector";
> +		type = "a";
> +
> +		port {
> +			hdmi_con_in: endpoint {
> +				remote-endpoint = <&hdmi_out_con>;
> +			};
> +		};
> +	};
> +};
> +
> +&gpu {
> +	status = "okay";
> +};
> +
> +&hdmi {
> +	status = "okay";
> +};
> +
> +&hdmi_in {
> +	hdmi_in_vp0: endpoint {
> +		remote-endpoint = <&vp0_out_hdmi>;
> +	};
> +};
> +
> +&hdmi_out {
> +	hdmi_out_con: endpoint {
> +		remote-endpoint = <&hdmi_con_in>;
> +	};
> +};
> +
> +&vop {
> +	status = "okay";
> +};
> +
> +&vop_mmu {
> +	status = "okay";
> +};
> +
> +&vp0 {
> +	vp0_out_hdmi: endpoint@ROCKCHIP_VOP2_EP_HDMI0 {
> +		reg = <ROCKCHIP_VOP2_EP_HDMI0>;
> +		remote-endpoint = <&hdmi_in_vp0>;
> +	};
> +};
> +
> +&hdmi_sound {
> +	status = "okay";
> +};
> +
> +&i2s0_8ch {
> +	status = "okay";
> +};
> +
> +/* end HDMI */
> +
> +
> +/* mini PCIE connector */
> +&combphy2 {
> +	status = "okay";
> +};
> +
> +&pcie2x1 {
> +	status = "okay";
> +};
> +/* end mini PCIE connector */
> +
> +/* PCIE X4 connector */
> +&pcie30phy {
> +	status = "okay";
> +};
> +
> +&pcie3x2 {
> +	status = "okay";
> +};
> +/* end PCIE X4 connector */
> +
> +
> +&sdmmc0 {
> +	status = "okay";
> +};
> +
> +&uart2 {
> +	status = "okay";
> +};
> +
> +&uart4 {
> +	status = "okay";
> +};
> +
> +&uart5 {
> +	status = "okay";
> +};
> +
> +&uart8 {
> +	status = "okay";
> +};
> +
> +
> +/* USB start */
> +&usb2phy0 {
> +	status = "okay";
> +};
> +
> +&usb2phy0_host {
> +	/*phy-supply = <&vcc5v0_usb_host>;*/
> +	status = "okay";
> +};
> +
> +&usb2phy0_otg {
> +	/*phy-supply = <&vcc5v0_usb_otg>;*/
> +	status = "okay";
> +};
> +
> +&usb_host0_ehci {
> +	status = "okay";
> +};
> +
> +&usb_host0_ohci {
> +	status = "okay";
> +};
> +
> +&usb_host0_xhci {
> +	extcon = <&usb2phy0>;
> +	status = "okay";
> +};
> +&combphy0 { /* USB3_OTG SS */
> +	status = "okay";
> +};
> +
> +
> +&usb2phy1 {
> +	status = "okay";
> +};
> +
> +&usb2phy1_host {
> +	/*phy-supply = <&vcc5v0_usb_host>;*/
> +	status = "okay";
> +};
> +
> +&usb2phy1_otg {
> +	/*phy-supply = <&vcc5v0_usb_host>;*/
> +	status = "okay";
> +};
> +
> +&usb_host1_ehci {
> +	status = "okay";
> +};
> +
> +&usb_host1_ohci {
> +	status = "okay";
> +};
> +
> +&usb_host1_xhci {
> +	status = "okay";
> +};
> +/* end USB*/
> +
> +
> +/* SATA to m.2 connector */
> +&combphy1 {
> +	status = "okay";
> +};
> +
> +&sata1 {
> +	status = "okay";
> +};
> +/* end SATA to m.2 connector */
> +
> +
> +/* SMARC: I2C_GP */
> +&i2c3{
> +	status = "okay";
> +	i2cgpio: pca9535@20 {
> +		compatible = "nxp,pca9535";
> +		/* vcc-supply = <&regulator_i2c_1v8 */
> +		reg = <0x20>;
> +		/*GPIO.3 -> P111 (som) -> gpio3_d2*/
> +		interrupt-parent = <&gpio3>;
> +		interrupts = <27 IRQ_TYPE_LEVEL_LOW>;
> +		interrupt-controller;
> +		#interrupt-cells = <2>;
> +
> +		gpio-controller;
> +		#gpio-cells = <2>;
> +		gpio-line-names =
> +			"DSI0_TP_RST_N","DSI1_TP_RST_N","DSI0_RST_N","DSI1_RST_N",
> +			"CAM0_PWDN","I2C_GPIO05","I2C_GPIO06","I2C_GPIO07",
> +			"I2C_GPIO10","I2C_GPIO11","I2C_GPIO12","I2C_GPIO13",
> +			"I2C_GPIO14","I2C_GPIO15","I2C_GPIO16","I2C_GPIO17";
> +		cam_pwd {
> +			gpio-hog;
> +			gpios = <4 GPIO_ACTIVE_HIGH>;
> +			output-high;
> +		};
> +	};
> +	/* one of: 0x2c or 0x2e on board*/
> +	/* fan control*/
> +	u19a: adt7473@2e {
> +		compatible = "adi,adt7473";
> +		reg = <0x2e>;
> +		adi,bypass-attenuator-in0 = <1>;
> +		adi,bypass-attenuator-in1 = <1>;
> +		adi,bypass-attenuator-in2 = <1>;
> +		adi,bypass-attenuator-in3 = <1>;
> +		adi,pwm-active-state = <1 1 1>;
> +	};
> +
> +	i2cmux: pca9546a@70 {
> +		compatible = "nxp,pca9546";
> +		reg = <0x70>;
> +		#address-cells = <1>;
> +		#size-cells = <0>;
> +		vcc-supply = <&V3P3>;
> +		vcc-pullup-supply = <&V3P3>;
> +
> +		/*I2C_MUX_RST->GPIO.0 -> P108 (som) -> gpio3_d5*/
> +		reset-gpios = <&gpio3 RK_PD5 GPIO_ACTIVE_HIGH>;
> +
> +		i2c@0 { /*I2C_DSI1 -> to X25*/
> +			reg = <0>;
> +			#address-cells = <1>;
> +			#size-cells = <0>;
> +		};
> +		i2c@1 { /*I2C_DSI0 -> to X24*/
> +			reg = <0>;
> +			#address-cells = <1>;
> +			#size-cells = <0>;
> +		};
> +		i2c@2 { /*I2C_GP_A -> to X32*/
> +			reg = <0>;
> +			#address-cells = <1>;
> +			#size-cells = <0>;
> +		};
> +		i2c@3 { /*I2C_MPCI -> to minipcie connector*/
> +			reg = <0>;
> +			#address-cells = <1>;
> +			#size-cells = <0>;
> +		};
> +
> +	};
> +};
> +
> +/*SMARC: I2C_CAM0*/
> +&i2c4{
> +	status = "okay";
> +#if 0
> +	camera0: imx219@10 {
> +		compatible = "sony,imx219";
> +		reg = <0x10>;
> +		clocks = <&ext_cam_clk>;
> +		status = "okay";
> +		rockchip,camera-module-index = <0>;
> +		rockchip,camera-module-facing = "back";
> +		rockchip,camera-module-name = "NC";
> +		rockchip,camera-module-lens-name = "NC";
> +		port {
> +			ucam_out0: endpoint {
> +				remote-endpoint = <&mipi_in_ucam0>;
> +				data-lanes = <1 2>;
> +			};
> +		};
> +	};
> +#endif
> +};
> +
> +
> +&spi0 {
> +	status = "okay";
> +	spidev@0{
> +		compatible = "rohm,dh2228fv"; //linux,spidev
> +		reg = <0>;
> +	};
> +};
> +
> +
> +&can0 { /* SMARC CAN0 -> CAN A */
> +	status = "okay";
> +};
> +
> +&can2 { /* SMARC CAN1 -> CAN B */
> +	status = "okay";
> +};
> +
> +&sata_usb3_mux_hog {
> +	output-low; /* SMARC SATA1 */
> +	/*output-high;*/ /* SMARC USB3_HOST1_SS */
> +
> +	/* selected SMARC SATA1 -> go to m.2 connector*/
> +};
> +
> +&can_i2c2_mux_hog {
> +	output-low;  /* CAN */
> +	/* output-high; */ /* i2c */
> +
> +	/* selected CAN -> CAN interface on pins S139/S140 */
> +};
> -- 
> 2.42.2
> 
> _______________________________________________
> devel-kernel mailing list
> devel-kernel@lists.altlinux.org
> https://lists.altlinux.org/mailman/listinfo/devel-kernel


      reply	other threads:[~2025-11-07  1:24 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-11-06 14:01 Daniil Gnusarev
2025-11-07  1:24 ` Vitaly Chikunov [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=xby5xju4gykeb3cvmt2gbfvk5d@altlinux.org \
    --to=vt@altlinux.org \
    --cc=devel-kernel@lists.altlinux.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

ALT Linux kernel packages development

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/devel-kernel/0 devel-kernel/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 devel-kernel devel-kernel/ http://lore.altlinux.org/devel-kernel \
		devel-kernel@altlinux.org devel-kernel@altlinux.ru devel-kernel@altlinux.com
	public-inbox-index devel-kernel

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.devel-kernel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git