soc: nxp: imxrt: fix PDRV field setting for drive strength

In the IOMUXC controller, the PDRV field uses 0b0 to set the pin drive
to high, and 0b1 to set the pin to normal drive. Fix the pinctrl_soc.h
definitions for the iMXRT11xx parts to use the correct setting for this
register, based on the documentation for the pin control binding

Note that for PDRV type pins, this commit effectively switches their
drive strength setting.

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
This commit is contained in:
Daniel DeGrasse 2024-12-04 16:37:39 -06:00 committed by Benjamin Cabé
commit 04dd110881
2 changed files with 2 additions and 2 deletions

View file

@ -56,7 +56,7 @@ extern "C" {
IF_ENABLED(DT_PROP(node_id, bias_pull_up), \
(MCUX_IMX_PULL_PULLUP << MCUX_IMX_PULL_SHIFT) |) \
(MCUX_IMX_NOPULL(node_id) << MCUX_IMX_PULL_SHIFT) | \
(DT_ENUM_IDX_OR(node_id, drive_strength, 0) << MCUX_IMX_PDRV_SHIFT) | \
((!DT_ENUM_IDX_OR(node_id, drive_strength, 0)) << MCUX_IMX_PDRV_SHIFT) | \
(DT_PROP(node_id, drive_open_drain) << MCUX_IMX_ODE_SHIFT) | \
(DT_PROP(node_id, input_enable) << MCUX_IMX_INPUT_ENABLE_SHIFT)

View file

@ -58,7 +58,7 @@ extern "C" {
IF_ENABLED(DT_PROP(node_id, bias_pull_up), \
(MCUX_IMX_PULL_PULLUP << MCUX_IMX_PULL_SHIFT) |) \
(MCUX_IMX_NOPULL(node_id) << MCUX_IMX_PULL_SHIFT) | \
(DT_ENUM_IDX_OR(node_id, drive_strength, 0) << MCUX_IMX_PDRV_SHIFT) | \
((!DT_ENUM_IDX_OR(node_id, drive_strength, 0)) << MCUX_IMX_PDRV_SHIFT) | \
(DT_PROP(node_id, drive_open_drain) << MCUX_IMX_ODE_SHIFT) | \
(DT_PROP(node_id, input_enable) << MCUX_IMX_INPUT_ENABLE_SHIFT)