[PATCH v2 08/10] gpio: rockchip: Add request() ops

Quentin Schulz quentin.schulz at cherry.de
Wed Aug 7 12:12:20 CEST 2024


Hi Jonas,

On 8/3/24 12:56 AM, Jonas Karlman wrote:
> Add a request() ops that call pinctrl_gpio_request() when the required
> gpio-ranges prop has been defined to signal pinctrl driver to use gpio
> pinmux.
> 
> Signed-off-by: Jonas Karlman <jonas at kwiboo.se>
> ---
> v2: New patch from "rockchip: Add gpio request() ops" series
> ---
>   drivers/gpio/rk_gpio.c | 10 ++++++++++
>   1 file changed, 10 insertions(+)
> 
> diff --git a/drivers/gpio/rk_gpio.c b/drivers/gpio/rk_gpio.c
> index 5972f7f8612d..65811dbc78d6 100644
> --- a/drivers/gpio/rk_gpio.c
> +++ b/drivers/gpio/rk_gpio.c
> @@ -126,6 +126,15 @@ static int rockchip_gpio_get_function(struct udevice *dev, unsigned offset)
>   	return (data & mask) ? GPIOF_OUTPUT : GPIOF_INPUT;
>   }
>   
> +static int rockchip_gpio_request(struct udevice *dev, unsigned offset,
> +				 const char *label)
> +{
> +	if (CONFIG_IS_ENABLED(PINCTRL) && dev_read_bool(dev, "gpio-ranges"))

I assume we check for gpio-ranges property because 
pinctrl_gpio_get_pinctrl_and_offset called by pinctrl_gpio_request will 
return an error if the property isn't there?

I see that you're adding the gpio-ranges to Rockchip SoCs that are 
missing them (as well as the aliases), wouldn't it make more sense to 
move this commit after that commit and remove the dependency on 
gpio-ranges property and let pinctrl_gpio_request fail if it isn't there?

Cheers,
Quentin


More information about the U-Boot mailing list