Re: [PATCH] ACPI / LPSS: Do not instiate a platform_dev for devs without a mmio resource

From: Andy Shevchenko
Date: Mon Jan 15 2018 - 06:33:55 EST


On Mon, 2018-01-15 at 11:36 +0200, Mika Westerberg wrote:
> On Sun, Jan 14, 2018 at 09:01:48PM +0100, Hans de Goede wrote:
> > acpi_lpss_create_device() skips handling LPSS devices which do not
> > have
> > a mmio resources in their resource list (typically these devices are
> > disabled by the firmware). But since the LPSS code does not bind to
> > the
> > device, acpi_bus_attach() ends up still creating a platform device
> > for
> > it and the regular platform_driver for the ACPI HID still tries to
> > bind
> > to it.
> >
> > This happens e.g. on some boards which do not use the pwm-controller
> > and have an empty or invalid resource-table for it. Currently this
> > causes
> > these error messages to get logged:
> > [ 3.281966] pwm-lpss 80862288:00: invalid resource
> > [ 3.287098] pwm-lpss: probe of 80862288:00 failed with error -22
> >
> > This commit stops the undesirable creation of a platform_device for
> > disabled LPSS devices by setting pnp.type.platform_id to 0. Note
> > that
> > acpi_scan_attach_handler() also sets pnp.type.platform_id to 0 when
> > there
> > is a matching handler for the device and that handler has no attach
> > callback, so we simply behave as a handler without an attach
> > function
> > in this case.
> >
> > Signed-off-by: Hans de Goede <hdegoede@xxxxxxxxxx>
>
> Seems like a good way to fix it IMHO,

Yeah, looks much better for my opinion than previous hack to PWM
platform driver.

Reviewed-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>

>
> Acked-by: Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx>

--
Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
Intel Finland Oy