[PATCH v2] arm64: dts: imx8mm: imx8mp: Add DTOs for Data Modul i.MX8M Mini and Plus eDM SBC

Marek Vasut marex at nabladev.com
Tue Apr 7 09:07:24 PDT 2026


On 4/7/26 3:58 AM, Frank Li wrote:
> On Mon, Apr 06, 2026 at 11:58:45PM +0200, Marek Vasut wrote:
>> Add DT overlay for feature connector expansion module eDM-MOD-iMX8Mm-FIO1
>> providing additional UARTs, CAN, PWM Beeper, I2C, SPI and GPIO breakout.
>> This adapter can be optionally populated onto the eDM SBC.
>>
>> Add DT overlay for the DSI-to-HDMI adapter eDM-MOD-iMX8Mm-HDMI populated
>> with Lontium LT9611 bridge. This adapter can be optionally populated onto
>> the eDM SBC.
>>
>> Add DT overlay for the DSI-to-LVDS adapter eDM-MOD-iMX8Mm-LVDS populated
>> with Lontium LT9211 bridge. This adapter can be optionally populated onto
>> the eDM SBC. This adapter can be extended with multiple panels, currently
>> supported are the following:
> 
> At least you can split to 3 patches to add these.

I did now, will send V3 patchset as 6 patches, but it won't help much 
because most of the stuff is DSI-to-LVDS .

>> +#include "imx8mm-pinfunc.h"
>> +#include "imx8mm-data-modul-edm-sbc-overlay-edm-mod-imx8mm-fio1-audio.dtsi"
>> +
>> +&can_fio {
>> +	interrupts-extended = <&gpio4 25 IRQ_TYPE_LEVEL_LOW>;
> 
> Now, I have not good ways to unify this information for difference boards
> yet. It is quite common user case, let me think more.

It is a different interrupt line on these two boards.

>> +};
>> +
>> +&iomuxc {
>> +	pinctrl_codec_mclk: codec-mclk_feature-grp {
>> +		fsl,pins = <
>> +			/* GPIO4_IO27 */
>> +			MX8MM_IOMUXC_SAI2_MCLK_SAI5_MCLK		0x2
>> +		>;
>> +	};
>> +
>> +	pinctrl_sai2: sai2_feature-grp {
>> +		fsl,pins = <
>> +			MX8MM_IOMUXC_SAI2_RXC_SAI2_RX_BCLK		0x90
>> +			MX8MM_IOMUXC_SAI2_TXD0_SAI2_TX_DATA0		0x96
>> +			MX8MM_IOMUXC_SAI2_RXD0_SAI2_RX_DATA0		0x90
>> +			MX8MM_IOMUXC_SAI2_TXFS_SAI2_TX_SYNC		0x96
>> +		>;
>> +	};
> 
> I think this part should be in main boards's dts file, there should have
> hardware plug header, which include these signals.
> 
> If there are other added on boards, add-on dtso can resuse the label,
> pinctrl_sai2 and pinctrl_codec_mclk.

No, not really, the audio-board is a bit of an outlier so I would prefer 
to keep the audio-board specific changes in the audio-board DTO instead 
of polluting the base DT with its specifics.

>> +};
>> +
>> +&pinctrl_hog_feature {
>> +	fsl,pins = <
>> +		/* GPIO5_IO03 */
>> +		MX8MM_IOMUXC_SPDIF_TX_GPIO5_IO3				0x40000006
>> +		/* GPIO5_IO04 */
>> +		MX8MM_IOMUXC_SPDIF_RX_GPIO5_IO4				0x40000006
>> +
>> +		/* CAN_INT# */
>> +		MX8MM_IOMUXC_SAI2_TXC_GPIO4_IO25			0x40000090
>> +	>;
>> +};
>> +
>> +&sai2 {
>> +	assigned-clocks = <&clk IMX8MM_CLK_SAI2>;
>> +	assigned-clock-parents = <&clk IMX8MM_AUDIO_PLL1_OUT>;
>> +	fsl,sai-bit-clock-swap;
>> +};
>> +
>> +&sgtl5000_fio {
>> +	VDDA-supply = <&buck4_reg>;
>> +	VDDD-supply = <&buck5_reg>;
>> +	VDDIO-supply = <&buck4_reg>;
> 
> buck4_reg can provide addtional label, such as porta_vdd ..., so needn't
> this sections.

I simply renamed the base DT regulator names to buckN_reg and ldoN_reg 
for both MX8MM and MX8MP eDM SBC , no need for additional labels .

>> +};
>> +
>> +&spba2 {
>> +	#address-cells = <1>;
>> +	#size-cells = <1>;
>> +
>> +	sai5clk: clock-controller at 30050000 {	/* SAI5 */
>> +		compatible = "fsl,imx8mm-sai-clock", "fsl,imx8mq-sai-clock";
>> +		reg = <0x30050000 0x10000>;
>> +		#clock-cells = <1>;
> 
> Not sure why need overwrite these informaiton here, suppose it should be
> the same for Soc.
I don't quite understand this comment, I am adding a node separate from 
the sai5 node, so I won't end up pulling in unrelated properties for the 
"fsl,imx8mm-sai-clock" (which is not "fsl,imx8mm-sai").



More information about the linux-arm-kernel mailing list