From: Ashok Reddy Soma Date: Fri, 11 Aug 2023 05:48:28 +0000 (-0600) Subject: pinctrl: zynqmp: Add version check for TRISTATE configuration X-Git-Url: http://git.dujemihanovic.xyz/?a=commitdiff_plain;h=4af320b10c1e6bfe6272980c303fe119f6c27197;p=u-boot.git pinctrl: zynqmp: Add version check for TRISTATE configuration Support for configuring TRISTATE parameter is added in ZYNQMP PMUFW(Xilinx ZynqMP Platform Management Firmware) Configuration Param Set version 2.0. If the requested configuration is TRISTATE then check the version before requesting Xilinx firmware to set the configuration. Signed-off-by: Ashok Reddy Soma Link: https://lore.kernel.org/r/20230811054829.13162-3-ashok.reddy.soma@amd.com Signed-off-by: Michal Simek --- diff --git a/drivers/pinctrl/pinctrl-zynqmp.c b/drivers/pinctrl/pinctrl-zynqmp.c index 02626a7561..e9857f5ed9 100644 --- a/drivers/pinctrl/pinctrl-zynqmp.c +++ b/drivers/pinctrl/pinctrl-zynqmp.c @@ -158,6 +158,12 @@ static int zynqmp_pm_pinctrl_set_config(const u32 pin, const u32 param, u32 valu { int ret; + if (param == PM_PINCTRL_CONFIG_TRI_STATE) { + ret = zynqmp_pm_feature(PM_PINCTRL_CONFIG_PARAM_SET); + if (ret < PM_PINCTRL_PARAM_SET_VERSION) + return -EOPNOTSUPP; + } + /* Request the pin first */ ret = xilinx_pm_request(PM_PINCTRL_REQUEST, pin, 0, 0, 0, NULL); if (ret) {