On Thu 12 Oct 23:15 PDT 2017, fengl...@codeaurora.org wrote:

> From: Fenglin Wu <fengl...@codeaurora.org>
> 
> The initial value of is_enabled flag is read out from hardware in
> pmic_gpio_populate(), and it will be set in pmic_gpio_config_set() if
> pinconf is defined. For any GPIOs disabled initially in hardware which
> only have pinmux defined, they won't be enabled in pmic_gpio_set_mux()
> calling. So set is_enabled flag in set_mux() to ensure the GPIO module
> could be enabled in above case.
> 

I'm still interested in knowing when it is valid to configure a pin with
only mux, no config.  I.e. in what cases does setting a alternative
function make the pinconfig not count.

Regards,
Bjorn

> Signed-off-by: Fenglin Wu <fengl...@codeaurora.org>
> ---
>  drivers/pinctrl/qcom/pinctrl-spmi-gpio.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/drivers/pinctrl/qcom/pinctrl-spmi-gpio.c 
> b/drivers/pinctrl/qcom/pinctrl-spmi-gpio.c
> index 0a1e173..219c934 100644
> --- a/drivers/pinctrl/qcom/pinctrl-spmi-gpio.c
> +++ b/drivers/pinctrl/qcom/pinctrl-spmi-gpio.c
> @@ -312,6 +312,7 @@ static int pmic_gpio_set_mux(struct pinctrl_dev *pctldev, 
> unsigned function,
>       }
>  
>       pad = pctldev->desc->pins[pin].drv_data;
> +     pad->is_enabled = true;
>       /*
>        * Non-LV/MV subtypes only support 2 special functions,
>        * offsetting the dtestx function values by 2
> -- 
> Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
> a Linux Foundation Collaborative Project.
> 

Reply via email to