[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <58ad4a7f-49d6-bb62-2202-4f7b7564505c@amd.com>
Date: Mon, 31 Jul 2023 12:06:14 +0200
From: Michal Simek <michal.simek@....com>
To: Sai Krishna Potthuri <sai.krishna.potthuri@....com>,
Linus Walleij <linus.walleij@...aro.org>,
Rob Herring <robh+dt@...nel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@...aro.org>,
Conor Dooley <conor+dt@...nel.org>,
Mathieu Poirier <mathieu.poirier@...aro.org>,
Tanmay Shah <tanmay.shah@....com>,
Ben Levinsky <ben.levinsky@....com>,
Marek Vasut <marex@...x.de>,
Roman Gushchin <roman.gushchin@...ux.dev>,
Arnd Bergmann <arnd@...db.de>
Cc: linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org,
linux-gpio@...r.kernel.org, devicetree@...r.kernel.org,
saikrishna12468@...il.com, git@....com
Subject: Re: [PATCH v3 4/4] pinctrl: pinctrl-zynqmp: Add support for
output-enable and bias-high impedance
On 7/31/23 11:50, Sai Krishna Potthuri wrote:
> Add support to handle 'output-enable' and 'bias-high-impedance'
> configurations.
>
> Using these pinctrl properties observed hang issues with older PMUFW(Xilinx
> ZynqMP Platform Management Firmware), hence reverted the patch.
> Commit 9989bc33c4894e075167 ("Revert "pinctrl: pinctrl-zynqmp: Add support
> for output-enable and bias-high-impedance"").
>
> Support for configuring these properties added in PMUFW Configuration Set
> version 2.0. When there is a request for these configurations from pinctrl
> driver for ZynqMP platform, xilinx firmware driver checks for this version
> before configuring these properties to avoid the hang issue and proceeds
> further only when firmware version is >=2 otherwise it returns error.
>
> Signed-off-by: Sai Krishna Potthuri <sai.krishna.potthuri@....com>
> ---
> drivers/pinctrl/pinctrl-zynqmp.c | 9 +++++++++
> 1 file changed, 9 insertions(+)
>
> diff --git a/drivers/pinctrl/pinctrl-zynqmp.c b/drivers/pinctrl/pinctrl-zynqmp.c
> index 8d2cb0999f2f..f2be341f73e1 100644
> --- a/drivers/pinctrl/pinctrl-zynqmp.c
> +++ b/drivers/pinctrl/pinctrl-zynqmp.c
> @@ -415,6 +415,10 @@ static int zynqmp_pinconf_cfg_set(struct pinctrl_dev *pctldev,
>
> break;
> case PIN_CONFIG_BIAS_HIGH_IMPEDANCE:
> + param = PM_PINCTRL_CONFIG_TRI_STATE;
> + arg = PM_PINCTRL_TRI_STATE_ENABLE;
> + ret = zynqmp_pm_pinctrl_set_config(pin, param, arg);
> + break;
> case PIN_CONFIG_MODE_LOW_POWER:
> /*
> * These cases are mentioned in dts but configurable
> @@ -423,6 +427,11 @@ static int zynqmp_pinconf_cfg_set(struct pinctrl_dev *pctldev,
> */
> ret = 0;
> break;
> + case PIN_CONFIG_OUTPUT_ENABLE:
> + param = PM_PINCTRL_CONFIG_TRI_STATE;
> + arg = PM_PINCTRL_TRI_STATE_DISABLE;
> + ret = zynqmp_pm_pinctrl_set_config(pin, param, arg);
> + break;
> default:
> dev_warn(pctldev->dev,
> "unsupported configuration parameter '%u'\n",
Reviewed-by: Michal Simek <michal.simek@....com>
Thanks,
Michal
Powered by blists - more mailing lists