On Fri, Oct 19, 2018 at 8:27 PM Dan O'Donovan <dan@xxxxxxxxxx> wrote: > > From: Javier Arteaga <javier@xxxxxxxxxx> > > Allow userspace to use the on-board LEDs as "upboard:<color>:". > +#include <linux/kernel.h> > +#include <linux/leds.h> > +#include <linux/mfd/upboard.h> > +#include <linux/module.h> > +#include <linux/platform_device.h> > +#include <linux/regmap.h> > +#include <linux/acpi.h> For better maintenance keep this ordered. > + adev = ACPI_COMPANION(dev); > + if (!adev || strcmp(acpi_device_hid(adev), "AANT0F01")) > + return -ENODEV; Why do you need this part? > + if (led_index >= ARRAY_SIZE(upboard_led_names)) > + return -EINVAL; > + if (!dev->parent) > + return -EINVAL; ...I think this check will cover cases when driver is being probed standalone. Otherwise it's caller's responsibility not to instantiate it if platform doesn't have this LED feature. > + regmap = dev_get_regmap(dev->parent, NULL); > + if (!regmap) > + return -EINVAL; -- With Best Regards, Andy Shevchenko