diff options
Diffstat (limited to 'scripts/mod/file2alias.c')
| -rw-r--r-- | scripts/mod/file2alias.c | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/scripts/mod/file2alias.c b/scripts/mod/file2alias.c index 88f3f07205f8..e26e2fb462d4 100644 --- a/scripts/mod/file2alias.c +++ b/scripts/mod/file2alias.c | |||
| @@ -702,6 +702,24 @@ static int do_ssb_entry(const char *filename, | |||
| 702 | return 1; | 702 | return 1; |
| 703 | } | 703 | } |
| 704 | 704 | ||
| 705 | /* Looks like: bcma:mNidNrevNclN. */ | ||
| 706 | static int do_bcma_entry(const char *filename, | ||
| 707 | struct bcma_device_id *id, char *alias) | ||
| 708 | { | ||
| 709 | id->manuf = TO_NATIVE(id->manuf); | ||
| 710 | id->id = TO_NATIVE(id->id); | ||
| 711 | id->rev = TO_NATIVE(id->rev); | ||
| 712 | id->class = TO_NATIVE(id->class); | ||
| 713 | |||
| 714 | strcpy(alias, "bcma:"); | ||
| 715 | ADD(alias, "m", id->manuf != BCMA_ANY_MANUF, id->manuf); | ||
| 716 | ADD(alias, "id", id->id != BCMA_ANY_ID, id->id); | ||
| 717 | ADD(alias, "rev", id->rev != BCMA_ANY_REV, id->rev); | ||
| 718 | ADD(alias, "cl", id->class != BCMA_ANY_CLASS, id->class); | ||
| 719 | add_wildcard(alias); | ||
| 720 | return 1; | ||
| 721 | } | ||
| 722 | |||
| 705 | /* Looks like: virtio:dNvN */ | 723 | /* Looks like: virtio:dNvN */ |
| 706 | static int do_virtio_entry(const char *filename, struct virtio_device_id *id, | 724 | static int do_virtio_entry(const char *filename, struct virtio_device_id *id, |
| 707 | char *alias) | 725 | char *alias) |
| @@ -968,6 +986,10 @@ void handle_moddevtable(struct module *mod, struct elf_info *info, | |||
| 968 | do_table(symval, sym->st_size, | 986 | do_table(symval, sym->st_size, |
| 969 | sizeof(struct ssb_device_id), "ssb", | 987 | sizeof(struct ssb_device_id), "ssb", |
| 970 | do_ssb_entry, mod); | 988 | do_ssb_entry, mod); |
| 989 | else if (sym_is(symname, "__mod_bcma_device_table")) | ||
| 990 | do_table(symval, sym->st_size, | ||
| 991 | sizeof(struct bcma_device_id), "bcma", | ||
| 992 | do_bcma_entry, mod); | ||
| 971 | else if (sym_is(symname, "__mod_virtio_device_table")) | 993 | else if (sym_is(symname, "__mod_virtio_device_table")) |
| 972 | do_table(symval, sym->st_size, | 994 | do_table(symval, sym->st_size, |
| 973 | sizeof(struct virtio_device_id), "virtio", | 995 | sizeof(struct virtio_device_id), "virtio", |
