Changing GPIO behaviour using Device Tree Overlay

Hello @erikr,

Your understanding is correct, the MX8MP_IOMUXC_SAI2_TXFS__GPIO4_IO24 configures the SAI2_TXFS pin (SODIMM_133) to be a GPIO.

What may be the problem here is that this pin is used somewhere else in your device tree.
In this case, it is used in pinctrl_uart1: imx8mp-verdin.dtsi « freescale « dts « boot « arm64 « arch - linux-toradex.git - Linux kernel for Apalis, Colibri and Verdin modules
Which is used by uart1: imx8mp-verdin.dtsi « freescale « dts « boot « arm64 « arch - linux-toradex.git - Linux kernel for Apalis, Colibri and Verdin modules

Therefore, to use this pin you need to disable the uart1 node.

To configure pins with non-default configurations, you always need to search for the current configuration on the device tree and make sure it is not being used.

Best Regards,
Bruno