Re: [PATCH v7 7/7] arm64: dts: imx8mm: imx8mp: Add FIO1-Audio DTOs for Data Modul i.MX8M Mini and Plus eDM SBC

Marek Vasut <[email protected]> Thu, 30 Jul 2026 21:34:43 +0200
Newsgroups dev.linux.lists.imx,dev.linux.lists.sashiko-reviews,org.kernel.vger.linux-devicetree
Message-ID <[email protected]>
On 7/30/26 5:17 PM, Frank Li wrote:

Hello Frank,

>>> +++ b/arch/arm64/boot/dts/freescale/imx8mm-data-modul-edm-sbc-overlay-edm-mod-imx8mm-fio1-audio.dtsi
>> [ ... ]
>>> +	gpio_feature: io-expander@20 {
>>> +		compatible = "nxp,pca9554";
>>> +		reg = <0x20>;
>>> +		#gpio-cells = <2>;
>>> +		gpio-controller;
>>> +		#interrupt-cells = <2>;
>>> +		interrupt-controller;
>>> +		interrupt-parent = <&gpio5>;
>>> +		interrupts = <4 IRQ_TYPE_LEVEL_LOW>;
>>
>> [Severity: High]
>> Does this interrupt routing conflict on the i.MX8MP baseboard?
>>
>> The shared overlay hardcodes the PCA9554 interrupt to GPIO5_IO04, which is
>> correct for i.MX8MM. However, on i.MX8MP, this pad (SPDIF_RX) is physically
>> routed and configured for CAN1_RX.
>>
>> Could this cause the GPIO expander interrupts to fail and CAN traffic to
>> trigger spurious GPIO interrupts when loaded on the i.MX8MP? Would it be
>> better to override this interrupt in the i.MX8MP overlay?
> 
> Yes, I check flexcan1 use this pad at i.MX8MP. you need disable flexcan1
> at i.mx8mp's dtso file.

I'll fix that in V8.

[...]

>>> +++ b/arch/arm64/boot/dts/freescale/imx8mm-data-modul-edm-sbc-overlay-edm-mod-imx8mm-fio1-audio.dtso
>> [ ... ]
>>> +	sai5clk: clock-controller@30050000 {	/* SAI5 */
>>> +		compatible = "fsl,imx8mm-sai-clock", "fsl,imx8mq-sai-clock";
>>> +		reg = <0x30050000 0x10000>;
>>
>> [Severity: High]
>> Can this cause a devres memory region conflict during driver probe?
>>
>> This overlay adds a new clock-controller node with the exact same unit address
>> and register range as the existing sai@30050000 audio node.
>>
>> Since both drivers will use devm_platform_ioremap_resource() to request the
>> region exclusively, whichever probes second might receive -EBUSY and fail.
> 
> at imx8mm.dts, 30050000 is SAI5, here you change to to use clock-controller
> 
> Suppose address here is wrong.
This is correct and we already discussed this in V4, the SAI here is not 
used as an audio controller (not using sound/soc/fsl/fsl_sai.c driver), 
but as a clock controller (yes using drivers/clk/clk-fsl-sai.c driver), 
the bindings differ, hence this node.