aboutsummaryrefslogtreecommitdiffstats
path: root/scripts/mod
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2008-07-22 16:13:47 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2008-07-22 16:13:47 -0400
commit53baaaa9682c230410a057263d1ce2922f43ddc4 (patch)
treef5cced5622130f780d76953b284a631c3d226488 /scripts/mod
parentf10140fbe5f97ecfeda986a12d0f1bad75642779 (diff)
parent3f9787046ea37a26170dc4439efa21f8d23a9978 (diff)
Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6: (79 commits) arm: bus_id -> dev_name() and dev_set_name() conversions sparc64: fix up bus_id changes in sparc core code 3c59x: handle pci_name() being const MTD: handle pci_name() being const HP iLO driver sysdev: Convert the x86 mce tolerant sysdev attribute to generic attribute sysdev: Add utility functions for simple int/ulong variable sysdev attributes sysdev: Pass the attribute to the low level sysdev show/store function driver core: Suppress sysfs warnings for device_rename(). kobject: Transmit return value of call_usermodehelper() to caller sysfs-rules.txt: reword API stability statement debugfs: Implement debugfs_remove_recursive() HOWTO: change email addresses of James in HOWTO always enable FW_LOADER unless EMBEDDED=y uio-howto.tmpl: use unique output names uio-howto.tmpl: use standard copyright/legal markings sysfs: don't call notify_change sysdev: fix debugging statements in registration code. kobject: should use kobject_put() in kset-example kobject: reorder kobject to save space on 64 bit builds ...
Diffstat (limited to 'scripts/mod')
-rw-r--r--scripts/mod/file2alias.c24
1 files changed, 16 insertions, 8 deletions
diff --git a/scripts/mod/file2alias.c b/scripts/mod/file2alias.c
index 37d5c363fbcd..1fcaf3284a6a 100644
--- a/scripts/mod/file2alias.c
+++ b/scripts/mod/file2alias.c
@@ -340,11 +340,18 @@ static int do_acpi_entry(const char *filename,
340} 340}
341 341
342/* looks like: "pnp:dD" */ 342/* looks like: "pnp:dD" */
343static int do_pnp_entry(const char *filename, 343static void do_pnp_device_entry(void *symval, unsigned long size,
344 struct pnp_device_id *id, char *alias) 344 struct module *mod)
345{ 345{
346 sprintf(alias, "pnp:d%s*", id->id); 346 const unsigned long id_size = sizeof(struct pnp_device_id);
347 return 1; 347 const struct pnp_device_id *id = symval;
348
349 device_id_check(mod->name, "pnp", size, id_size, symval);
350
351 buf_printf(&mod->dev_table_buf,
352 "MODULE_ALIAS(\"pnp:d%s*\");\n", id->id);
353 buf_printf(&mod->dev_table_buf,
354 "MODULE_ALIAS(\"acpi*:%s:*\");\n", id->id);
348} 355}
349 356
350/* looks like: "pnp:dD" for every device of the card */ 357/* looks like: "pnp:dD" for every device of the card */
@@ -388,9 +395,12 @@ static void do_pnp_card_entries(void *symval, unsigned long size,
388 } 395 }
389 396
390 /* add an individual alias for every device entry */ 397 /* add an individual alias for every device entry */
391 if (!dup) 398 if (!dup) {
392 buf_printf(&mod->dev_table_buf, 399 buf_printf(&mod->dev_table_buf,
393 "MODULE_ALIAS(\"pnp:d%s*\");\n", id); 400 "MODULE_ALIAS(\"pnp:d%s*\");\n", id);
401 buf_printf(&mod->dev_table_buf,
402 "MODULE_ALIAS(\"acpi*:%s:*\");\n", id);
403 }
394 } 404 }
395 } 405 }
396} 406}
@@ -701,9 +711,7 @@ void handle_moddevtable(struct module *mod, struct elf_info *info,
701 sizeof(struct acpi_device_id), "acpi", 711 sizeof(struct acpi_device_id), "acpi",
702 do_acpi_entry, mod); 712 do_acpi_entry, mod);
703 else if (sym_is(symname, "__mod_pnp_device_table")) 713 else if (sym_is(symname, "__mod_pnp_device_table"))
704 do_table(symval, sym->st_size, 714 do_pnp_device_entry(symval, sym->st_size, mod);
705 sizeof(struct pnp_device_id), "pnp",
706 do_pnp_entry, mod);
707 else if (sym_is(symname, "__mod_pnp_card_device_table")) 715 else if (sym_is(symname, "__mod_pnp_card_device_table"))
708 do_pnp_card_entries(symval, sym->st_size, mod); 716 do_pnp_card_entries(symval, sym->st_size, mod);
709 else if (sym_is(symname, "__mod_pcmcia_device_table")) 717 else if (sym_is(symname, "__mod_pcmcia_device_table"))