Lines Matching full:alias
1 /* Simple code to turn various tables in an ELF file into alias definitions.
188 char alias[500];
201 strcpy(alias, "usb:");
202 ADD(alias, "v", match_flags&USB_DEVICE_ID_MATCH_VENDOR,
204 ADD(alias, "p", match_flags&USB_DEVICE_ID_MATCH_PRODUCT,
207 strcat(alias, "d");
209 sprintf(alias + strlen(alias), "%0*X",
212 sprintf(alias + strlen(alias), "%X", range_lo);
215 sprintf(alias + strlen(alias),
220 sprintf(alias + strlen(alias),
223 sprintf(alias + strlen(alias),
229 strcat(alias, "*");
231 ADD(alias, "dc", match_flags&USB_DEVICE_ID_MATCH_DEV_CLASS,
233 ADD(alias, "dsc", match_flags&USB_DEVICE_ID_MATCH_DEV_SUBCLASS,
235 ADD(alias, "dp", match_flags&USB_DEVICE_ID_MATCH_DEV_PROTOCOL,
237 ADD(alias, "ic", match_flags&USB_DEVICE_ID_MATCH_INT_CLASS,
239 ADD(alias, "isc", match_flags&USB_DEVICE_ID_MATCH_INT_SUBCLASS,
241 ADD(alias, "ip", match_flags&USB_DEVICE_ID_MATCH_INT_PROTOCOL,
243 ADD(alias, "in", match_flags&USB_DEVICE_ID_MATCH_INT_NUMBER,
246 module_alias_printf(mod, true, "%s", alias);
320 * run-time specification that results in catch-all alias
355 char alias[500];
363 len = sprintf(alias, "of:N%sT%s", (*name)[0] ? *name : "*",
367 sprintf(&alias[len], "%sC%s", (*type)[0] ? "*" : "",
371 for (tmp = alias; tmp && *tmp; tmp++)
375 module_alias_printf(mod, false, "%s", alias);
376 module_alias_printf(mod, false, "%sC*", alias);
382 char alias[256] = {};
389 ADD(alias, "b", bus != HID_BUS_ANY, bus);
390 ADD(alias, "g", group != HID_GROUP_ANY, group);
391 ADD(alias, "v", vendor != HID_ANY_ID, vendor);
392 ADD(alias, "p", product != HID_ANY_ID, product);
394 module_alias_printf(mod, false, "hid:%s", alias);
400 char alias[256] = {};
408 ADD(alias, "ven", match_flags & IEEE1394_MATCH_VENDOR_ID,
410 ADD(alias, "mo", match_flags & IEEE1394_MATCH_MODEL_ID,
412 ADD(alias, "sp", match_flags & IEEE1394_MATCH_SPECIFIER_ID,
414 ADD(alias, "ver", match_flags & IEEE1394_MATCH_VERSION,
417 module_alias_printf(mod, true, "ieee1394:%s", alias);
423 char alias[256];
438 strcpy(alias, "pci:");
441 strcpy(alias, "vfio_pci:");
444 warn("Unknown PCI driver_override alias %08X\n",
448 ADD(alias, "v", vendor != PCI_ANY_ID, vendor);
449 ADD(alias, "d", device != PCI_ANY_ID, device);
450 ADD(alias, "sv", subvendor != PCI_ANY_ID, subvendor);
451 ADD(alias, "sd", subdevice != PCI_ANY_ID, subdevice);
468 ADD(alias, "bc", baseclass_mask == 0xFF, baseclass);
469 ADD(alias, "sc", subclass_mask == 0xFF, subclass);
470 ADD(alias, "i", interface_mask == 0xFF, interface);
472 module_alias_printf(mod, true, "%s", alias);
478 char alias[256] = {};
486 ADD(alias, "t", match_flags&CCW_DEVICE_ID_MATCH_CU_TYPE,
488 ADD(alias, "m", match_flags&CCW_DEVICE_ID_MATCH_CU_MODEL,
490 ADD(alias, "dt", match_flags&CCW_DEVICE_ID_MATCH_DEVICE_TYPE,
492 ADD(alias, "dm", match_flags&CCW_DEVICE_ID_MATCH_DEVICE_MODEL,
495 module_alias_printf(mod, true, "ccw:%s", alias);
517 char alias[256] = {};
524 ADD(alias, "ty", type != SERIO_ANY, type);
525 ADD(alias, "pr", proto != SERIO_ANY, proto);
526 ADD(alias, "id", id != SERIO_ANY, id);
527 ADD(alias, "ex", extra != SERIO_ANY, extra);
529 module_alias_printf(mod, true, "serio:%s", alias);
548 char alias[256];
556 sprintf(&alias[cnt], "%02x",
559 sprintf(&alias[cnt], "??");
562 module_alias_printf(mod, false, "acpi*:%s:*", alias);
595 /* add an individual alias for every device entry */
604 char alias[256] = {};
614 ADD(alias, "m", match_flags & PCMCIA_DEV_ID_MATCH_MANF_ID,
616 ADD(alias, "c", match_flags & PCMCIA_DEV_ID_MATCH_CARD_ID,
618 ADD(alias, "f", match_flags & PCMCIA_DEV_ID_MATCH_FUNC_ID,
620 ADD(alias, "fn", match_flags & PCMCIA_DEV_ID_MATCH_FUNCTION,
622 ADD(alias, "pfn", match_flags & PCMCIA_DEV_ID_MATCH_DEVICE_NO,
624 ADD(alias, "pa", match_flags & PCMCIA_DEV_ID_MATCH_PROD_ID1,
626 ADD(alias, "pb", match_flags & PCMCIA_DEV_ID_MATCH_PROD_ID2,
628 ADD(alias, "pc", match_flags & PCMCIA_DEV_ID_MATCH_PROD_ID3,
630 ADD(alias, "pd", match_flags & PCMCIA_DEV_ID_MATCH_PROD_ID4,
633 module_alias_printf(mod, true, "pcmcia:%s", alias);
638 char alias[256];
643 sprintf(alias, "vio:T%sS%s", (*type)[0] ? *type : "*",
647 for (tmp = alias; tmp && *tmp; tmp++)
651 module_alias_printf(mod, true, "%s", alias);
655 alias_append(char *alias, size_t size, const char *fmt, ...)
657 size_t len = strlen(alias);
662 fatal("alias buffer (%zu) overflow before append\n", size);
665 n = vsnprintf(alias + len, size - len, fmt, args);
669 fatal("alias buffer (%zu) overflow on append (need %d, have %zu)\n",
673 static void do_input(char *alias, size_t size,
681 alias_append(alias, size, "%X,*", i);
687 char alias[256] = {};
688 const size_t sizeof_alias = sizeof(alias);
705 ADD(alias, "b", flags & INPUT_DEVICE_ID_MATCH_BUS, bustype);
706 ADD(alias, "v", flags & INPUT_DEVICE_ID_MATCH_VENDOR, vendor);
707 ADD(alias, "p", flags & INPUT_DEVICE_ID_MATCH_PRODUCT, product);
708 ADD(alias, "e", flags & INPUT_DEVICE_ID_MATCH_VERSION, version);
710 alias_append(alias, sizeof_alias, "-e*");
712 do_input(alias, sizeof_alias, *evbit, 0, INPUT_DEVICE_ID_EV_MAX);
713 alias_append(alias, sizeof_alias, "k*");
715 do_input(alias, sizeof_alias, *keybit,
718 alias_append(alias, sizeof_alias, "r*");
720 do_input(alias, sizeof_alias, *relbit, 0, INPUT_DEVICE_ID_REL_MAX);
721 alias_append(alias, sizeof_alias, "a*");
723 do_input(alias, sizeof_alias, *absbit, 0, INPUT_DEVICE_ID_ABS_MAX);
724 alias_append(alias, sizeof_alias, "m*");
726 do_input(alias, sizeof_alias, *mscbit, 0, INPUT_DEVICE_ID_MSC_MAX);
727 alias_append(alias, sizeof_alias, "l*");
729 do_input(alias, sizeof_alias, *ledbit, 0, INPUT_DEVICE_ID_LED_MAX);
730 alias_append(alias, sizeof_alias, "s*");
732 do_input(alias, sizeof_alias, *sndbit, 0, INPUT_DEVICE_ID_SND_MAX);
733 alias_append(alias, sizeof_alias, "f*");
735 do_input(alias, sizeof_alias, *ffbit, 0, INPUT_DEVICE_ID_FF_MAX);
736 alias_append(alias, sizeof_alias, "w*");
738 do_input(alias, sizeof_alias, *swbit, 0, INPUT_DEVICE_ID_SW_MAX);
740 module_alias_printf(mod, false, "input:%s", alias);
752 char alias[256] = {};
759 ADD(alias, "t", hw_type != PA_HWTYPE_ANY_ID, hw_type);
760 ADD(alias, "hv", hversion != PA_HVERSION_ANY_ID, hversion);
761 ADD(alias, "rev", hversion_rev != PA_HVERSION_REV_ANY_ID, hversion_rev);
762 ADD(alias, "sv", sversion != PA_SVERSION_ANY_ID, sversion);
764 module_alias_printf(mod, true, "parisc:%s", alias);
770 char alias[256] = {};
776 ADD(alias, "c", class != (__u8)SDIO_ANY_ID, class);
777 ADD(alias, "v", vendor != (__u16)SDIO_ANY_ID, vendor);
778 ADD(alias, "d", device != (__u16)SDIO_ANY_ID, device);
780 module_alias_printf(mod, true, "sdio:%s", alias);
786 char alias[256] = {};
792 ADD(alias, "v", vendor != SSB_ANY_VENDOR, vendor);
793 ADD(alias, "id", coreid != SSB_ANY_ID, coreid);
794 ADD(alias, "rev", revision != SSB_ANY_REV, revision);
796 module_alias_printf(mod, true, "ssb:%s", alias);
802 char alias[256] = {};
809 ADD(alias, "m", manuf != BCMA_ANY_MANUF, manuf);
810 ADD(alias, "id", id != BCMA_ANY_ID, id);
811 ADD(alias, "rev", rev != BCMA_ANY_REV, rev);
812 ADD(alias, "cl", class != BCMA_ANY_CLASS, class);
814 module_alias_printf(mod, true, "bcma:%s", alias);
820 char alias[256] = {};
825 ADD(alias, "d", device != VIRTIO_DEV_ANY_ID, device);
826 ADD(alias, "v", vendor != VIRTIO_DEV_ANY_ID, vendor);
828 module_alias_printf(mod, true, "virtio:%s", alias);
865 char alias[256] = {};
873 ADD(alias, "dcr", match_flags & I3C_MATCH_DCR, dcr);
874 ADD(alias, "manuf", match_flags & I3C_MATCH_MANUF, manuf_id);
875 ADD(alias, "part", match_flags & I3C_MATCH_PART, part_id);
876 ADD(alias, "ext", match_flags & I3C_MATCH_EXTRA_INFO, extra_info);
878 module_alias_printf(mod, false, "i3c:%s", alias);
924 fatal("%s: alias buffer overflow\n", __func__);
935 char alias[256] = {};
936 const size_t sizeof_alias = sizeof(alias);
945 alias_append(alias, sizeof_alias, ":%s*",
947 len = strlen(alias);
948 dmi_ascii_filter(alias + len, sizeof_alias - len,
950 alias_append(alias, sizeof_alias, "*");
955 module_alias_printf(mod, false, "dmi*%s:", alias);
990 char alias[256] = {};
993 ADD(alias, "i", id != ZORRO_WILDCARD, id);
995 module_alias_printf(mod, false, "zorro:%s", alias);
1014 char alias[256] = {};
1019 ADD(alias, "f", format != IPACK_ANY_FORMAT, format);
1020 ADD(alias, "v", vendor != IPACK_ANY_ID, vendor);
1021 ADD(alias, "d", device != IPACK_ANY_ID, device);
1023 module_alias_printf(mod, true, "ipack:%s", alias);
1076 char alias[256];
1078 char *p = alias;
1091 module_alias_printf(mod, false, "amba:d%s", alias);
1115 char alias[256] = {};
1122 ADD(alias, "ven", vendor != X86_VENDOR_ANY, vendor);
1123 ADD(alias, "fam", family != X86_FAMILY_ANY, family);
1124 ADD(alias, "mod", model != X86_MODEL_ANY, model);
1125 strcat(alias, ":feature:*");
1127 sprintf(alias + strlen(alias), "%04X*", feature);
1129 module_alias_printf(mod, false, "cpu:type:x86,%s", alias);
1151 char alias[256] = {};
1157 add_uuid(alias, *uuid);
1158 ADD(alias, ":", version != MEI_CL_VERSION_ANY, version);
1161 (*name)[0] ? *name : "*", alias);
1167 char alias[256] = {};
1174 ADD(alias, "v", vid != RIO_ANY_ID, vid);
1175 ADD(alias, "d", did != RIO_ANY_ID, did);
1176 ADD(alias, "av", asm_vid != RIO_ANY_ID, asm_vid);
1177 ADD(alias, "ad", asm_did != RIO_ANY_ID, asm_did);
1179 module_alias_printf(mod, true, "rapidio:%s", alias);
1194 char alias[256] = {};
1200 ADD(alias, "v", vendor_id != 0, vendor_id);
1201 ADD(alias, "r", rev_id != 0, rev_id);
1202 ADD(alias, "a", api_version != 0, api_version);
1204 module_alias_printf(mod, true, "hdaudio:%s", alias);
1210 char alias[256] = {};
1217 ADD(alias, "m", mfg_id != 0, mfg_id);
1218 ADD(alias, "p", part_id != 0, part_id);
1219 ADD(alias, "v", sdw_version != 0, sdw_version);
1220 ADD(alias, "c", class_id != 0, class_id);
1222 module_alias_printf(mod, true, "sdw:%s", alias);
1237 char alias[256] = {};
1246 sprintf(alias + strlen(alias), "k%s", *protocol_key);
1248 strcat(alias + strlen(alias), "k*");
1249 ADD(alias, "p", match_flags & TBSVC_MATCH_PROTOCOL_ID, protocol_id);
1250 ADD(alias, "v", match_flags & TBSVC_MATCH_PROTOCOL_VERSION,
1252 ADD(alias, "r", match_flags & TBSVC_MATCH_PROTOCOL_REVISION,
1255 module_alias_printf(mod, true, "tbsvc:%s", alias);
1337 char alias[256] = {};
1340 add_guid(alias, *guid);
1342 module_alias_printf(mod, false, ISHTP_MODULE_PREFIX "{%s}", alias);
1359 char alias[256] = {};
1368 ADD(alias, "t", match_flags & SSAM_MATCH_TARGET, target);
1369 ADD(alias, "i", match_flags & SSAM_MATCH_INSTANCE, instance);
1370 ADD(alias, "f", match_flags & SSAM_MATCH_FUNCTION, function);
1373 domain, category, alias);
1388 char alias[256];
1400 strcpy(alias, "cdx:");
1403 strcpy(alias, "vfio_cdx:");
1406 warn("Unknown CDX driver_override alias %08X\n",
1411 ADD(alias, "v", vendor != CDX_ANY_ID, vendor);
1412 ADD(alias, "d", device != CDX_ANY_ID, device);
1413 ADD(alias, "sv", subvendor != CDX_ANY_ID, subvendor);
1414 ADD(alias, "sd", subdevice != CDX_ANY_ID, subdevice);
1415 ADD(alias, "c", class_mask == 0xFFFFFF, class);
1417 module_alias_printf(mod, false, "%s", alias);
1594 struct module_alias *alias;
1602 list_for_each_entry_reverse(alias, &mod->aliases, node) {
1603 if (alias->builtin_modname)
1605 alias->builtin_modname = xstrndup(modname, modnamelen);