[PATCH v1 3/4] arm64: dts: freescale: Add support for the Variscite i.MX8MP DART8MCustomBoard

Krzysztof Kozlowski krzysztof.kozlowski at linaro.org
Sun Feb 19 01:42:53 PST 2023


On 19/02/2023 04:11, Laurent Pinchart wrote:
> The DT8MCustomBoard is a carrier board for DART i.MX8-based modules.
> This device tree file adds support for the DT8MCustomBoard v2.0 with a
> connected DART-MX8M-PLUS module.
> 
> Signed-off-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
> ---
>  arch/arm64/boot/dts/freescale/Makefile        |   1 +
>  .../imx8mp-var-dart-dt8mcustomboard-v2.dts    | 499 ++++++++++++++++++
>  2 files changed, 500 insertions(+)
>  create mode 100644 arch/arm64/boot/dts/freescale/imx8mp-var-dart-dt8mcustomboard-v2.dts
> 
> diff --git a/arch/arm64/boot/dts/freescale/Makefile b/arch/arm64/boot/dts/freescale/Makefile
> index ef6f364eaa18..4e6cfcd22e86 100644
> --- a/arch/arm64/boot/dts/freescale/Makefile
> +++ b/arch/arm64/boot/dts/freescale/Makefile
> @@ -92,6 +92,7 @@ dtb-$(CONFIG_ARCH_MXC) += imx8mp-icore-mx8mp-edimm2.2.dtb
>  dtb-$(CONFIG_ARCH_MXC) += imx8mp-msc-sm2s-ep1.dtb
>  dtb-$(CONFIG_ARCH_MXC) += imx8mp-phyboard-pollux-rdk.dtb
>  dtb-$(CONFIG_ARCH_MXC) += imx8mp-tqma8mpql-mba8mpxl.dtb
> +dtb-$(CONFIG_ARCH_MXC) += imx8mp-var-dart-dt8mcustomboard-v2.dtb
>  dtb-$(CONFIG_ARCH_MXC) += imx8mp-venice-gw74xx.dtb
>  dtb-$(CONFIG_ARCH_MXC) += imx8mp-verdin-nonwifi-dahlia.dtb
>  dtb-$(CONFIG_ARCH_MXC) += imx8mp-verdin-nonwifi-dev.dtb
> diff --git a/arch/arm64/boot/dts/freescale/imx8mp-var-dart-dt8mcustomboard-v2.dts b/arch/arm64/boot/dts/freescale/imx8mp-var-dart-dt8mcustomboard-v2.dts
> new file mode 100644
> index 000000000000..5677236e0ef1
> --- /dev/null
> +++ b/arch/arm64/boot/dts/freescale/imx8mp-var-dart-dt8mcustomboard-v2.dts
> @@ -0,0 +1,499 @@
> +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
> +/*
> + * Copyright 2019 NXP
> + * Copyright 2020-2021 Variscite Ltd.
> + * Copyright 2023 Ideas on Board Oy
> + */
> +
> +#include "imx8mp-var-dart.dtsi"
> +
> +/ {
> +	compatible = "variscite,dart-mx8mp-dt8mcustomboard-v2",
> +		     "variscite,dart-mx8mp",
> +		     "fsl,imx8mp";
> +	model = "Variscite DART-MX8M-PLUS on DT8MCustomBoard 2.x";
> +
> +	chosen {
> +		stdout-path = &uart1;
> +	};
> +
> +	can0_osc: can0-osc {
> +		compatible = "fixed-clock";
> +		#clock-cells = <0>;
> +		clock-frequency = <40000000>;
> +	};
> +
> +	gpio-keys {
> +		compatible = "gpio-keys";
> +		status = "okay";

Drop status.

> +
> +		key-back {
> +			label = "BACK";
> +			linux,code = <KEY_BACK>;
> +			gpios = <&gpio_exp_1 7 GPIO_ACTIVE_LOW>;
> +			wakeup-source;
> +		};
> +
> +		key-up {
> +			label = "UP";
> +			linux,code = <KEY_UP>;
> +			gpios = <&gpio_exp_1 5 GPIO_ACTIVE_LOW>;
> +			wakeup-source;
> +		};
> +
> +		key-home {
> +			label = "HOME";
> +			linux,code = <KEY_HOME>;
> +			gpios = <&gpio_exp_1 4 GPIO_ACTIVE_LOW>;
> +			wakeup-source;
> +		};
> +
> +		key-down {
> +			label = "DOWN";
> +			linux,code = <KEY_DOWN>;
> +			gpios = <&gpio_exp_1 6 GPIO_ACTIVE_LOW>;
> +			wakeup-source;
> +		};
> +	};
> +
> +	gpio-leds {
> +		compatible = "gpio-leds";
> +		pinctrl-names = "default";
> +		pinctrl-0 = <&pinctrl_gpio_leds>;
> +		status = "okay";

Drop status

> +
> +		led1 {
> +			label = "LED1";
> +			gpios = <&gpio_exp_2 7 GPIO_ACTIVE_HIGH>;
> +			linux,default-trigger = "heartbeat";
> +		};
> +
> +		led2 {
> +			label = "LED2";
> +			gpios = <&gpio_exp_2 6 GPIO_ACTIVE_HIGH>;
> +		};
> +
> +		led3 {
> +			label = "LED3";
> +			gpios = <&gpio_exp_2 5 GPIO_ACTIVE_HIGH>;
> +		};
> +
> +		led4 {
> +			label = "LED4";
> +			gpios = <&gpio4 18 GPIO_ACTIVE_HIGH>;
> +			linux,default-trigger = "mmc2";
> +		};
> +	};
> +
> +	reg_usdhc2_vmmc: regulator-usdhc2-vmmc {
> +		compatible = "regulator-fixed";
> +		regulator-name = "VSD_3V3";
> +		regulator-min-microvolt = <3300000>;
> +		regulator-max-microvolt = <3300000>;
> +		gpio = <&gpio2 19 GPIO_ACTIVE_HIGH>;
> +		enable-active-high;
> +		startup-delay-us = <100>;
> +		off-on-delay-us = <12000>;
> +	};
> +};
> +
> +&ecspi1 {
> +	pinctrl-names = "default";
> +	pinctrl-0 = <&pinctrl_ecspi1>;
> +	cs-gpios = <&gpio5  9 GPIO_ACTIVE_LOW>,
> +		   <&gpio1 12 GPIO_ACTIVE_LOW>;
> +	status = "okay";
> +
> +	touch at 0 {
> +		compatible = "ti,tsc2046";
> +		spi-max-frequency = <1500000>;
> +		reg = <0>;

reg is usually second property

> +		status = "disabled";
> +
> +		pinctrl-names = "default";
> +		pinctrl-0 = <&pinctrl_restouch>;
> +
> +		interrupt-parent = <&gpio1>;
> +		interrupts = <7 IRQ_TYPE_EDGE_FALLING>;
> +
> +		pendown-gpio = <&gpio1 7 GPIO_ACTIVE_LOW>;
> +		wakeup-source;
> +
> +		touchscreen-min-x = <125>;
> +		touchscreen-min-y = <282>;
> +		touchscreen-size-x = <4009>;
> +		touchscreen-size-y = <3865>;
> +		touchscreen-max-pressure = <255>;
> +		touchscreen-average-samples = <10>;
> +
> +		ti,keep-vref-on;
> +		ti,settle-delay-usec = /bits/ 16 <150>;
> +		ti,x-plate-ohms = /bits/ 16 <180>;
> +		ti,debounce-tol = /bits/ 16 <3>;
> +		ti,debounce-rep = /bits/ 16 <1>;
> +	};
> +
> +	can at 1 {
> +		compatible = "microchip,mcp2518fd";
> +		spi-max-frequency = <20000000>;
> +		reg = <1>;

Ditto

> +		clocks = <&can0_osc>;> +
> +		pinctrl-names = "default";
> +		pinctrl-0 = <&pinctrl_can>;
> +
> +		interrupt-parent = <&gpio1>;
> +		interrupts = <6 IRQ_TYPE_LEVEL_LOW>;
> +
> +		microchip,rx-int-gpios = <&gpio5 4 GPIO_ACTIVE_LOW>;
> +	};
> +};


Best regards,
Krzysztof




More information about the linux-arm-kernel mailing list