diff options
Diffstat (limited to 'scripts/mod/file2alias.c')
-rw-r--r-- | scripts/mod/file2alias.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/scripts/mod/file2alias.c b/scripts/mod/file2alias.c index f646381dc015..8a09021d8c59 100644 --- a/scripts/mod/file2alias.c +++ b/scripts/mod/file2alias.c | |||
@@ -290,6 +290,14 @@ static int do_serio_entry(const char *filename, | |||
290 | return 1; | 290 | return 1; |
291 | } | 291 | } |
292 | 292 | ||
293 | /* looks like: "acpi:ACPI0003 or acpi:PNP0C0B" or "acpi:LNXVIDEO" */ | ||
294 | static int do_acpi_entry(const char *filename, | ||
295 | struct acpi_device_id *id, char *alias) | ||
296 | { | ||
297 | sprintf(alias, "acpi*:%s:", id->id); | ||
298 | return 1; | ||
299 | } | ||
300 | |||
293 | /* looks like: "pnp:dD" */ | 301 | /* looks like: "pnp:dD" */ |
294 | static int do_pnp_entry(const char *filename, | 302 | static int do_pnp_entry(const char *filename, |
295 | struct pnp_device_id *id, char *alias) | 303 | struct pnp_device_id *id, char *alias) |
@@ -551,6 +559,10 @@ void handle_moddevtable(struct module *mod, struct elf_info *info, | |||
551 | do_table(symval, sym->st_size, | 559 | do_table(symval, sym->st_size, |
552 | sizeof(struct serio_device_id), "serio", | 560 | sizeof(struct serio_device_id), "serio", |
553 | do_serio_entry, mod); | 561 | do_serio_entry, mod); |
562 | else if (sym_is(symname, "__mod_acpi_device_table")) | ||
563 | do_table(symval, sym->st_size, | ||
564 | sizeof(struct acpi_device_id), "acpi", | ||
565 | do_acpi_entry, mod); | ||
554 | else if (sym_is(symname, "__mod_pnp_device_table")) | 566 | else if (sym_is(symname, "__mod_pnp_device_table")) |
555 | do_table(symval, sym->st_size, | 567 | do_table(symval, sym->st_size, |
556 | sizeof(struct pnp_device_id), "pnp", | 568 | sizeof(struct pnp_device_id), "pnp", |