Re: [Lhms-devel] [RFC] Patch [1/2] for acpi_memhotplug.c

KAMEZAWA Hiroyuki
2006-06-22T03:11:34Z

On Wed, 21 Jun 2006 19:19:58 -0700
keith mannthey <kmannth@us.ibm.com> wrote:
> > Good Catch :)
> >
> > Then, could you print driver name ? like this
> > ==
> > printk("Call Add driver for name %s/class %s/id %s\n",driver->name,driver->class,driver->id);
> > ==
>
> Good idea!
> During the hot add I see.
> Call Add driver for name motherboard/class /id PNP0C01
>
> That is the wrong driver for sure.

Hmm....curious..but no idead..
Then, could try this ?

-Kame
==

Index: linux-2.6.17-rc6-mm2/drivers/acpi/scan.c
===================================================================
--- linux-2.6.17-rc6-mm2.orig/drivers/acpi/scan.c
+++ linux-2.6.17-rc6-mm2/drivers/acpi/scan.c
@@ -227,6 +227,20 @@ static int acpi_bus_get_power_flags(stru
return 0;
}

+int acpi_print_all_ids(struct acpi_device *device)
+{
+ printk("check BusID%s/ HID%s/ UID%s",
+ acpi_device_bid(device),acpi_device_hid(device),
+ acpi_device_uid(device));
+ if (device->flags.compatible_ids) {
+ struct acpi_compatible_id_list *cid_list = device->pnp.cid_list;
+ int i;
+ for (i = 0; i < cid_list->count; i++)
+ printk("CID %s ",cid_list->id[i].value);
+ }
+ printk("\n");
+}
+
int acpi_match_ids(struct acpi_device *device, char *ids)
{
if (device->flags.hardware_id)
@@ -487,6 +501,8 @@ acpi_bus_driver_init(struct acpi_device

if (!driver->ops.add)
return -ENOSYS;
+ printk("acpi_bus_driver_init() driver is %s\n", driver->name);
+ acpi_print_all_ids(device);

result = driver->ops.add(device);
if (result) {