On Thu, Sep 29, 2016 at 10:29:49AM -0700, Andy Lutomirski wrote: > On Thu, Sep 29, 2016 at 9:02 AM, Dmitry Torokhov > <dmitry.torokhov@xxxxxxxxx> wrote: > > Quite a bit late, but still: > > > > On Wed, Dec 16, 2015 at 11:30 PM, Alex Hung <alex.hung@xxxxxxxxxxxxx> wrote: > >> + > >> +static int __init intel_hid_init(void) > >> +{ > >> + acpi_walk_namespace(ACPI_TYPE_DEVICE, ACPI_ROOT_OBJECT, > >> + ACPI_UINT32_MAX, check_acpi_dev, NULL, > >> + (void *)intel_hid_ids, NULL); > >> + > >> + return platform_driver_register(&intel_hid_pl_driver); > >> +} > > > > Why do we need to walk instantiate the device ourselves instead of > > having ACPI core do it for us? I also see this pattern in intel-vbtn.c > > now. > > See the comment above check_acpi_dev(): > > /* > * Unfortunately, some laptops provide a _HID="INT33D5" device with > * _CID="PNP0C02". This causes the pnpacpi scan driver to claim the > * ACPI node, so no platform device will be created. The pnpacpi > * driver rejects this device in subsequent processing, so no physical > * node is created at all. > * > * As a workaround until the ACPI core figures out how to handle > * this corner case, manually ask the ACPI platform device code to > * claim the ACPI node. > */ Ah, I missed that (because I originally looked at intel-vbtn). Does INT33D6 also have the same issue? -- Dmitry -- To unsubscribe from this list: send the line "unsubscribe platform-driver-x86" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html