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", |