On Fri, Nov 25, 2016 at 05:36:42PM +0100, Benjamin Tissoires wrote:
> The PNP0C40 device of the Surface 3 doesn't have any GPIO attached to it.
> Instead of trying to access the GPIO, request the count beforehand and
> bail out if it is null or if an error is returned.
> 
> Signed-off-by: Benjamin Tissoires <[email protected]>
> ---
> 
> no changes in v3
> 
> changes in v2:
> - hunk moved down for better integration with later patches
> ---
>  drivers/input/misc/soc_button_array.c | 5 +++++
>  1 file changed, 5 insertions(+)
> 
> diff --git a/drivers/input/misc/soc_button_array.c 
> b/drivers/input/misc/soc_button_array.c
> index bbd433c..5467d04 100644
> --- a/drivers/input/misc/soc_button_array.c
> +++ b/drivers/input/misc/soc_button_array.c
> @@ -167,6 +167,11 @@ static int soc_button_probe(struct platform_device *pdev)
>  
>       button_info = (struct soc_button_info *)id->driver_data;
>  
> +     if (gpiod_count(&pdev->dev, KBUILD_MODNAME) <= 0) {
> +             dev_info(&pdev->dev, "no GPIO attached, ignoring...\n");

Changed this to dev_dbg() and applied, thank you.

> +             return -ENODEV;
> +     }
> +
>       priv = devm_kzalloc(&pdev->dev, sizeof(*priv), GFP_KERNEL);
>       if (!priv)
>               return -ENOMEM;
> -- 
> 2.7.4
> 

-- 
Dmitry

Reply via email to