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

