From 996bd5692113c63d977800c561203456d8dcc542 Mon Sep 17 00:00:00 2001 From: Max Krummenacher Date: Tue, 24 Nov 2020 09:42:36 +0100 Subject: arm64: dts: imx8mp-verdin: add device tree for dahlia Only the Development Board gives access to the native hdmi signals. Move the nodes into imx8mp-verdin-dev.dtsi. Signed-off-by: Max Krummenacher --- arch/arm64/boot/dts/freescale/Makefile | 2 + .../boot/dts/freescale/imx8mp-verdin-dahlia.dtsi | 137 +++++++++++++++++++++ .../boot/dts/freescale/imx8mp-verdin-dev.dtsi | 128 ++++++------------- .../dts/freescale/imx8mp-verdin-nonwifi-dahlia.dts | 18 +++ .../dts/freescale/imx8mp-verdin-wifi-dahlia.dts | 18 +++ arch/arm64/boot/dts/freescale/imx8mp-verdin.dtsi | 69 +---------- 6 files changed, 214 insertions(+), 158 deletions(-) create mode 100755 arch/arm64/boot/dts/freescale/imx8mp-verdin-dahlia.dtsi create mode 100755 arch/arm64/boot/dts/freescale/imx8mp-verdin-nonwifi-dahlia.dts create mode 100755 arch/arm64/boot/dts/freescale/imx8mp-verdin-wifi-dahlia.dts (limited to 'arch/arm64') diff --git a/arch/arm64/boot/dts/freescale/Makefile b/arch/arm64/boot/dts/freescale/Makefile index ef352ba3e20a..b6fc275246b1 100644 --- a/arch/arm64/boot/dts/freescale/Makefile +++ b/arch/arm64/boot/dts/freescale/Makefile @@ -73,7 +73,9 @@ dtb-$(CONFIG_ARCH_MXC) += imx8mp-evk.dtb imx8mp-evk-root.dtb imx8mp-evk-inmate.d imx8mp-evk-rm67191.dtb imx8mp-evk-flexcan2.dtb imx8mp-evk-it6263-lvds-dual-channel.dtb \ imx8mp-evk-jdi-wuxga-lvds-panel.dtb imx8mp-ab2.dtb imx8mp-evk-sof-wm8960.dtb \ imx8mp-evk-dsp.dtb imx8mp-evk-ov2775.dtb imx8mp-evk-basler.dtb \ + imx8mp-verdin-nonwifi-dahlia.dtb \ imx8mp-verdin-nonwifi-dev.dtb \ + imx8mp-verdin-wifi-dahlia.dtb \ imx8mp-verdin-wifi-dev.dtb dtb-$(CONFIG_ARCH_MXC) += imx8mq-evk.dtb imx8mq-evk-rpmsg.dtb imx8mq-evk-pcie1-m2.dtb imx8mq-evk-usd-wifi.dtb \ imx8mq-evk-usdhc2-m2.dtb diff --git a/arch/arm64/boot/dts/freescale/imx8mp-verdin-dahlia.dtsi b/arch/arm64/boot/dts/freescale/imx8mp-verdin-dahlia.dtsi new file mode 100755 index 000000000000..d1fe98c9efdd --- /dev/null +++ b/arch/arm64/boot/dts/freescale/imx8mp-verdin-dahlia.dtsi @@ -0,0 +1,137 @@ +// SPDX-License-Identifier: GPL-2.0+ OR MIT +/* + * Copyright 2020 Toradex + */ + +/* Verdin SPI_1 */ +&ecspi1 { + status = "okay"; + + spidev10: spidev@0 { + compatible = "toradex,evalspi"; + reg = <0>; + spi-max-frequency = <10000000>; + status = "okay"; + }; +}; + +/* EEPROM on display adapter boards */ +&eeprom_display_adapter { + status = "okay"; +}; + +/* EEPROM on Verdin Development board */ +&eeprom_carrier_board { + status = "okay"; +}; + +&eqos { + status = "okay"; +}; + +&flexcan1 { + status = "okay"; +}; + +&flexcan2 { + status = "okay"; +}; + +/* Verdin QSPI_1 */ +&flexspi { + status = "okay"; +}; + +/* Current measurement into module VCC */ +&hwmon { + status = "okay"; +}; + +&i2c3 { + status = "okay"; +}; + +&i2c4 { + status = "okay"; +}; + +/* Verdin PCIE_1 */ +&pcie { + status = "okay"; +}; + +&pcie_phy{ + status = "okay"; +}; + +/* Verdin PWM_1 */ +&pwm1 { + status = "okay"; +}; + +/* Verdin PWM_2 */ +&pwm2 { + status = "okay"; +}; + +/* VERDIN I2S_1 */ +&sai1 { + status = "okay"; +}; + +/* Verdin UART_1 */ +&uart1 { + status = "okay"; +}; + +/* Verdin UART_2 */ +&uart2 { + status = "okay"; +}; + +/* Verdin UART_3, used as the Linux Console */ +&uart3 { + status = "okay"; +}; + +/* Verdin UART_4 */ +/* Often used by the M7 and then should not be enabled here. */ +&uart4 { + status = "disabled"; +}; + +/* Verdin USB_1 */ +&usb3_phy0 { + status = "okay"; +}; + +&usb3_0 { + status = "okay"; +}; + +&usb_dwc3_0 { + status = "okay"; +}; + +/* Verdin USB_2 */ +&usb3_phy1 { + status = "okay"; +}; + +&usb3_1 { + status = "okay"; +}; + +&usb_dwc3_1 { + status = "okay"; +}; + +/* Verdin SD_1 */ +&usdhc2 { + status = "okay"; +}; + +/* Audio Codec */ +&wm8904_1a { + status = "okay"; +}; diff --git a/arch/arm64/boot/dts/freescale/imx8mp-verdin-dev.dtsi b/arch/arm64/boot/dts/freescale/imx8mp-verdin-dev.dtsi index 7d1578a7df6a..41a58f458fb5 100755 --- a/arch/arm64/boot/dts/freescale/imx8mp-verdin-dev.dtsi +++ b/arch/arm64/boot/dts/freescale/imx8mp-verdin-dev.dtsi @@ -3,29 +3,26 @@ * Copyright 2020 Toradex */ -/* Verdin SPI_1 */ -&ecspi1 { - status = "okay"; - - spidev10: spidev@0 { - compatible = "toradex,evalspi"; - reg = <0>; - spi-max-frequency = <10000000>; +#include "imx8mp-verdin-dahlia.dtsi" + +/ { + sound-hdmi { + compatible = "fsl,imx-audio-cdnhdmi"; + model = "audio-hdmi"; + audio-cpu = <&aud2htx>; + hdmi-out; + constraint-rate = <44100>, + <88200>, + <176400>, + <32000>, + <48000>, + <96000>, + <192000>; status = "okay"; }; }; -/* EEPROM on display adapter boards */ -&eeprom_display_adapter { - status = "okay"; -}; - -/* EEPROM on Verdin Development board */ -&eeprom_carrier_board { - status = "okay"; -}; - -&eqos { +&aud2htx { status = "okay"; }; @@ -33,113 +30,62 @@ status = "okay"; }; -&flexcan1 { - status = "okay"; -}; - -&flexcan2 { - status = "okay"; -}; - -/* Verdin QSPI_1 */ -&flexspi { - status = "okay"; -}; - &gpio_expander_21 { status = "okay"; }; -/* Current measurement into module VCC */ -&hwmon { +&gpu_2d { status = "okay"; }; -&i2c3 { +&gpu_3d { status = "okay"; }; -&i2c4 { +&hdmi { status = "okay"; }; -/* Verdin PCIE_1 */ -&pcie { +&hdmimix_clk { status = "okay"; }; -&pcie_phy{ +&hdmimix_reset { status = "okay"; }; -/* Verdin PWM_1 */ -&pwm1 { +&hdmiphy { status = "okay"; }; -/* Verdin PWM_2 */ -&pwm2 { +&hdmi_pavi { status = "okay"; }; -/* VERDIN I2S_1 */ -&sai1 { +&irqsteer_hdmi { status = "okay"; }; -/* Verdin UART_1 */ -&uart1 { +/* LCDIF to on-SoC Samsung HDMI PHY */ +&lcdif3 { status = "okay"; }; -/* Verdin UART_2 */ -&uart2 { +&mix_gpu_ml { status = "okay"; }; -/* Verdin UART_3, used as the Linux Console */ -&uart3 { +&ml_vipsi { status = "okay"; }; -/* Verdin UART_4 */ -/* Often used by the M7 and then should not be enabled here. */ -&uart4 { - status = "disabled"; -}; - -/* Verdin USB_1 */ -&usb3_phy0 { - status = "okay"; -}; - -&usb3_0 { - status = "okay"; -}; - -&usb_dwc3_0 { - status = "okay"; -}; - -/* Verdin USB_2 */ -&usb3_phy1 { - status = "okay"; -}; - -&usb3_1 { - status = "okay"; -}; - -&usb_dwc3_1 { - status = "okay"; -}; - -/* Verdin SD_1 */ -&usdhc2 { - status = "okay"; -}; - -/* Audio Codec */ -&wm8904_1a { - status = "okay"; +&sound_card { + simple-audio-card,routing = + "Headphone Jack", "HPOUTL", + "Headphone Jack", "HPOUTR", + "IN2L", "Line In Jack", + "IN2R", "Line In Jack", + "Microphone Jack", "MICBIAS", + "IN1L", "Microphone Jack", + "IN1R", "Microphone Jack"; }; diff --git a/arch/arm64/boot/dts/freescale/imx8mp-verdin-nonwifi-dahlia.dts b/arch/arm64/boot/dts/freescale/imx8mp-verdin-nonwifi-dahlia.dts new file mode 100755 index 000000000000..72077039bc20 --- /dev/null +++ b/arch/arm64/boot/dts/freescale/imx8mp-verdin-nonwifi-dahlia.dts @@ -0,0 +1,18 @@ +// SPDX-License-Identifier: GPL-2.0+ OR MIT +/* + * Copyright 2020 Toradex + */ + +/dts-v1/; + +#include "imx8mp-verdin.dtsi" +#include "imx8mp-verdin-nonwifi.dtsi" +#include "imx8mp-verdin-dahlia.dtsi" + +/ { + model = "Toradex Verdin iMX8M Plus on Dahlia Board"; + compatible = "toradex,verdin-imx8mp-nonwifi-dahlia", + "toradex,verdin-imx8mp-nonwifi", + "toradex,verdin-imx8mp", + "fsl,imx8mp"; +}; diff --git a/arch/arm64/boot/dts/freescale/imx8mp-verdin-wifi-dahlia.dts b/arch/arm64/boot/dts/freescale/imx8mp-verdin-wifi-dahlia.dts new file mode 100755 index 000000000000..4dafa67f2d6d --- /dev/null +++ b/arch/arm64/boot/dts/freescale/imx8mp-verdin-wifi-dahlia.dts @@ -0,0 +1,18 @@ +// SPDX-License-Identifier: GPL-2.0+ OR MIT +/* + * Copyright 2020 Toradex + */ + +/dts-v1/; + +#include "imx8mp-verdin.dtsi" +#include "imx8mp-verdin-wifi.dtsi" +#include "imx8mp-verdin-dahlia.dtsi" + +/ { + model = "Toradex Verdin iMX8M Plus WB on Dahlia Board"; + compatible = "toradex,verdin-imx8mp-wifi-dahlia", + "toradex,verdin-imx8mp-wifi", + "toradex,verdin-imx8mp", + "fsl,imx8mp"; +}; diff --git a/arch/arm64/boot/dts/freescale/imx8mp-verdin.dtsi b/arch/arm64/boot/dts/freescale/imx8mp-verdin.dtsi index a5af34cde1c7..8c36339b3006 100755 --- a/arch/arm64/boot/dts/freescale/imx8mp-verdin.dtsi +++ b/arch/arm64/boot/dts/freescale/imx8mp-verdin.dtsi @@ -126,9 +126,8 @@ "Headphone Jack", "HPOUTR", "IN2L", "Line In Jack", "IN2R", "Line In Jack", - "Microphone Jack", "MICBIAS", - "IN1L", "Microphone Jack", - "IN1R", "Microphone Jack"; + "Headphone Jack", "MICBIAS", + "IN1L", "Headphone Jack"; simple-audio-card,widgets = "Microphone", "Microphone Jack", "Headphone", "Headphone Jack", @@ -143,31 +142,12 @@ sound-dai = <&sai1>; }; }; - - sound-hdmi { - compatible = "fsl,imx-audio-cdnhdmi"; - model = "audio-hdmi"; - audio-cpu = <&aud2htx>; - hdmi-out; - constraint-rate = <44100>, - <88200>, - <176400>, - <32000>, - <48000>, - <96000>, - <192000>; - status = "okay"; - }; }; &A53_0 { cpu-supply = <&buck2_reg>; }; -&aud2htx { - status = "okay"; -}; - /* compare with commit d0307f1e31c64 */ &clk { init-on-array = ; @@ -280,34 +260,6 @@ gpio-line-names = ""; }; -&gpu_2d { - status = "okay"; -}; - -&gpu_3d { - status = "okay"; -}; - -&hdmi { - status = "okay"; -}; - -&hdmimix_clk { - status = "okay"; -}; - -&hdmimix_reset { - status = "okay"; -}; - -&hdmiphy { - status = "okay"; -}; - -&hdmi_pavi { - status = "okay"; -}; - /* On-module I2C */ &i2c1 { clock-frequency = <400000>; @@ -570,23 +522,6 @@ }; }; -&irqsteer_hdmi { - status = "okay"; -}; - -/* LCDIF to on-SoC Samsung HDMI PHY */ -&lcdif3 { - status = "okay"; -}; - -&mix_gpu_ml { - status = "okay"; -}; - -&ml_vipsi { - status = "okay"; -}; - &mu { status = "okay"; }; -- cgit v1.2.3