[RFC PATCH 1/2] arm64: dts: imx8mp: Make MX8MP_I2C_DEFAULT independent on drive strength

Maud Spierings maudspierings at gocontroll.com
Fri Feb 27 05:31:48 PST 2026


Hi Daniel,

Glad to see others using them :)

Reviewed-by: Maud Spierings <maudspierings at gocontroll.com>

On 2/27/26 14:02, Daniel Baluta wrote:
> Currently MX8MP_I2C_DEFAULT macro includes a fixed drive
> strength (MX8MP_DSE_X6) thus limiting its use to only I2C
> pins that require X6 drive.
> 
> There are many pinctrl configurations for I2C that use different
> drive strength while still using the common I2C default configurations
> (pull-up, Schmitt input, pull enable, SION).
> 
> So make the MX8MP_I2C_DEFAULT macro more flexible and reusable by removing
> DSE_X6 drive strength from it's definition but add it in all places
> it is necessary.
> 
> Signed-off-by: Daniel Baluta <daniel.baluta at nxp.com>
> ---
>   arch/arm64/boot/dts/freescale/imx8mp-pinfunc.h   |  2 +-
>   .../imx8mp-tx8p-ml81-moduline-display-106.dts    | 16 ++++++++--------
>   .../boot/dts/freescale/imx8mp-tx8p-ml81.dtsi     |  8 ++++----
>   3 files changed, 13 insertions(+), 13 deletions(-)
> 
> diff --git a/arch/arm64/boot/dts/freescale/imx8mp-pinfunc.h b/arch/arm64/boot/dts/freescale/imx8mp-pinfunc.h
> index 16f5899de4152..26e7a9428c4c7 100644
> --- a/arch/arm64/boot/dts/freescale/imx8mp-pinfunc.h
> +++ b/arch/arm64/boot/dts/freescale/imx8mp-pinfunc.h
> @@ -36,7 +36,7 @@
>   /* long defaults */
>   #define MX8MP_USDHC_DATA_DEFAULT (MX8MP_FSEL_FAST | MX8MP_PULL_UP | \
>   				  MX8MP_HYS_SCHMITT | MX8MP_PULL_ENABLE)
> -#define MX8MP_I2C_DEFAULT (MX8MP_DSE_X6 | MX8MP_PULL_UP | MX8MP_HYS_SCHMITT | \
> +#define MX8MP_I2C_DEFAULT (MX8MP_PULL_UP | MX8MP_HYS_SCHMITT | \
>   			   MX8MP_PULL_ENABLE | MX8MP_SION)
>   
>   /*
> diff --git a/arch/arm64/boot/dts/freescale/imx8mp-tx8p-ml81-moduline-display-106.dts b/arch/arm64/boot/dts/freescale/imx8mp-tx8p-ml81-moduline-display-106.dts
> index 399230144ce39..87b20b8564583 100644
> --- a/arch/arm64/boot/dts/freescale/imx8mp-tx8p-ml81-moduline-display-106.dts
> +++ b/arch/arm64/boot/dts/freescale/imx8mp-tx8p-ml81-moduline-display-106.dts
> @@ -302,36 +302,36 @@ MX8MP_IOMUXC_ECSPI1_SS0__GPIO5_IO09
>   	pinctrl_i2c2: i2c2grp {
>   		fsl,pins = <
>   			MX8MP_IOMUXC_I2C2_SCL__I2C2_SCL
> -				MX8MP_I2C_DEFAULT
> +				(MX8MP_DSE_X6 | MX8MP_I2C_DEFAULT)
>   			MX8MP_IOMUXC_I2C2_SDA__I2C2_SDA
> -				MX8MP_I2C_DEFAULT
> +				(MX8MP_DSE_X6 | MX8MP_I2C_DEFAULT)
>   		>;
>   	};
>   
>   	pinctrl_i2c2_gpio: i2c2-gpiogrp {
>   		fsl,pins = <
>   			MX8MP_IOMUXC_I2C2_SCL__GPIO5_IO16
> -				MX8MP_I2C_DEFAULT
> +				(MX8MP_DSE_X6 | MX8MP_I2C_DEFAULT)
>   			MX8MP_IOMUXC_I2C2_SDA__GPIO5_IO17
> -				MX8MP_I2C_DEFAULT
> +				(MX8MP_DSE_X6 | MX8MP_I2C_DEFAULT)
>   		>;
>   	};
>   
>   	pinctrl_i2c4: i2c4grp {
>   		fsl,pins = <
>   			MX8MP_IOMUXC_ECSPI2_MISO__I2C4_SCL
> -				MX8MP_I2C_DEFAULT
> +				(MX8MP_DSE_X6 | MX8MP_I2C_DEFAULT)
>   			MX8MP_IOMUXC_ECSPI2_SS0__I2C4_SDA
> -				MX8MP_I2C_DEFAULT
> +				(MX8MP_DSE_X6 | MX8MP_I2C_DEFAULT)
>   		>;
>   	};
>   
>   	pinctrl_i2c4_gpio: i2c4-gpiogrp {
>   		fsl,pins = <
>   			MX8MP_IOMUXC_ECSPI2_MISO__GPIO5_IO12
> -				MX8MP_I2C_DEFAULT
> +				(MX8MP_DSE_X6 | MX8MP_I2C_DEFAULT)
>   			MX8MP_IOMUXC_ECSPI2_SS0__GPIO5_IO13
> -				MX8MP_I2C_DEFAULT
> +				(MX8MP_DSE_X6 | MX8MP_I2C_DEFAULT)
>   		>;
>   	};
>   
> diff --git a/arch/arm64/boot/dts/freescale/imx8mp-tx8p-ml81.dtsi b/arch/arm64/boot/dts/freescale/imx8mp-tx8p-ml81.dtsi
> index 761ee046eb72e..bf49ae942d411 100644
> --- a/arch/arm64/boot/dts/freescale/imx8mp-tx8p-ml81.dtsi
> +++ b/arch/arm64/boot/dts/freescale/imx8mp-tx8p-ml81.dtsi
> @@ -425,18 +425,18 @@ MX8MP_IOMUXC_SAI2_RXC__GPIO4_IO22
>   	pinctrl_i2c1: i2c1grp {
>   		fsl,pins = <
>   			MX8MP_IOMUXC_I2C1_SCL__I2C1_SCL
> -				MX8MP_I2C_DEFAULT
> +				(MX8MP_DSE_X6 | MX8MP_I2C_DEFAULT)
>   			MX8MP_IOMUXC_I2C1_SDA__I2C1_SDA
> -				MX8MP_I2C_DEFAULT
> +				(MX8MP_DSE_X6 | MX8MP_I2C_DEFAULT)
>   		>;
>   	};
>   
>   	pinctrl_i2c1_gpio: i2c1-gpiogrp {
>   		fsl,pins = <
>   			MX8MP_IOMUXC_I2C1_SCL__GPIO5_IO14
> -				MX8MP_I2C_DEFAULT
> +				(MX8MP_DSE_X6 | MX8MP_I2C_DEFAULT)
>   			MX8MP_IOMUXC_I2C1_SDA__GPIO5_IO15
> -				MX8MP_I2C_DEFAULT
> +				(MX8MP_DSE_X6 | MX8MP_I2C_DEFAULT)
>   		>;
>   	};
>   




More information about the linux-arm-kernel mailing list