Re: [PATCH 1/2] RFC: ACPI: Interface for ACPI drivers to place quirk code which gets executed early

Thomas Renninger
2009-02-03T13:08:14Z

On Monday 02 February 2009 21:22:46 Luca Tettamanti wrote:
> Il Mon, Feb 02, 2009 at 06:22:10PM +0100, Thomas Renninger ha scritto:
> > These two patches are tested on a ASUS machine and worked as expected,
> > but probably may still need some cleanup.
>
> I'd keep the DMI+HID approach since it's more flexible:
> - (AFAICS) Thinkpads have different methods for hwmon depending on the
> model and no fixed HID
> - With DMI it would be possible to include ASUS motherboards (ATK w/
> hwmon) but exclude ASUS laptops (ATK w/o hwmon).
I thought the ATK01[01]0 devices are ASUS specific.
I now found an ATK0100 (not the ATK0110 this is about) on a Sony and a
Samsung.
I still wonder why you want to restrict the check to ASUS.
Your ATK0110 driver would also load on any other machine which has such
a device. And why shouldn't a Samsung/Sony/... machine with a ATK0110
device not access the hwmon sensor through it?
Should we already look a bit deeper into the ATK0110 device in the quirk
to make sure it provides thermal, fan or other hwmon device accessing
functionality?

> > diff --git a/drivers/acpi/scan.c b/drivers/acpi/scan.c
> > index c54d7b6..1c25747 100644
> > --- a/drivers/acpi/scan.c
> > +++ b/drivers/acpi/scan.c
> > @@ -10,6 +10,7 @@
> > #include <linux/kthread.h>
> >
> > #include <acpi/acpi_drivers.h>
> > +#include "acpi.h"
> >
> > #define _COMPONENT ACPI_BUS_COMPONENT
> > ACPI_MODULE_NAME("scan");
> > @@ -1562,6 +1563,8 @@ static int __init acpi_scan_init(void)
> >
> > if (result)
> > acpi_device_unregister(acpi_root, ACPI_BUS_REMOVAL_NORMAL);
> > + else
> > + acpi_device_quirks();
>
> Hum, it's not immediatly clear why you put that call in the else
> branch. Maybe put:
>
> if (!result)
> acpi_device_quirks();
>
> before the cleanup?
Yes that looks ugly, yours is nicer...

Also thanks for the "auto not handled properly" hint, I forgot
that part.

Thanks,

Thomas