Lines Matching +full:revision +full:- +full:id2
5 * Copyright 2002-2003 Rusty Russell, IBM Corporation
14 #include "devicetable-offsets.h"
73 typeof(((struct devid *)0)->f) f = TO_NATIVE(*(typeof(f) *)((m) + OFF_##devid##_##f))
80 typeof(((struct devid *)0)->f) *v = ((m) + OFF_##devid##_##f)
107 if (str[len - 1] != '*') in add_wildcard()
115 sprintf(str + len, "%02x%02x%02x%02x-%02x%02x-%02x%02x-%02x%02x-%02x%02x%02x%02x%02x%02x", in add_uuid()
126 sprintf(str + len, "%02X%02X%02X%02X-%02X%02X-%02X%02X-%02X%02X-%02X%02X%02X%02X%02X%02X", in add_guid()
135 * in .o file. If in-consistent then userspace and kernel does not agree
153 if (*(uint8_t*)(symval+size-id_size+i)) { in device_id_check()
159 *(uint8_t*)(symval+size-id_size+i) ); in device_id_check()
202 "[%X-%X]", in do_usb_entry()
207 range_lo < 0x9 ? "[%X-9" : "[%X", in do_usb_entry()
210 range_hi > 0xA ? "A-%X]" : "%X]", in do_usb_entry()
214 if (bcdDevice_initial_digits < (sizeof(bcdDevice_lo) * 2 - 1)) in do_usb_entry()
233 buf_printf(&mod->dev_table_buf, in do_usb_entry()
238 /* Returns the previous value, so it works like i++ or i-- */
308 * run-time specification that results in catch-all alias in do_usb_entry_multi()
313 /* Convert numeric bcdDevice range into fnmatch-able pattern(s) */ in do_usb_entry_multi()
314 for (ndigits = sizeof(bcdDevice_lo) * 2 - 1; devlo <= devhi; ndigits--) { in do_usb_entry_multi()
335 incbcd(&devhi, -1, max, in do_usb_entry_multi()
347 device_id_check(mod->name, "usb", size, id_size, symval); in do_usb_table()
350 size -= id_size; in do_usb_table()
378 buf_printf(&mod->dev_table_buf, "MODULE_ALIAS(\"%s\");\n", alias); in do_of_entry_multi()
381 buf_printf(&mod->dev_table_buf, "MODULE_ALIAS(\"%s\");\n", alias); in do_of_entry_multi()
390 device_id_check(mod->name, "of", size, id_size, symval); in do_of_table()
393 size -= id_size; in do_of_table()
560 * "acpi:bbsspp" (bb=base-class, ss=sub-class, pp=prog-if)
582 byte_shift = 8 * (3-i); in do_acpi_entry()
601 const unsigned int count = (size / id_size)-1; in do_pnp_device_entry()
604 device_id_check(mod->name, "pnp", size, id_size, symval); in do_pnp_device_entry()
611 buf_printf(&mod->dev_table_buf, in do_pnp_device_entry()
617 buf_printf(&mod->dev_table_buf, in do_pnp_device_entry()
627 const unsigned int count = (size / id_size)-1; in do_pnp_card_entries()
630 device_id_check(mod->name, "pnp", size, id_size, symval); in do_pnp_card_entries()
651 const char *id2 = in do_pnp_card_entries() local
654 if (!id2[0]) in do_pnp_card_entries()
657 if (!strcmp(id, id2)) { in do_pnp_card_entries()
669 buf_printf(&mod->dev_table_buf, in do_pnp_card_entries()
675 buf_printf(&mod->dev_table_buf, in do_pnp_card_entries()
750 /* input:b0v0p0e0-eXkXrXaXmXlXsXfXwX where X is comma-separated %02X. */
776 sprintf(alias + strlen(alias), "-e*"); in do_input_entry()
860 DEF_FIELD(symval, ssb_device_id, revision); in do_ssb_entry()
865 ADD(alias, "rev", revision != SSB_ANY_REV, revision); in do_ssb_entry()
917 sprintf(&guid_name[i], "%02x", TO_NATIVE((guid->b)[i/2])); in do_vmbus_entry()
1057 if (!((phy_id_mask >> (31-i)) & 1)) in do_mdio_entry()
1059 else if ((phy_id >> (31-i)) & 1) in do_mdio_entry()
1088 'A' + ((vendor >> 2) & 0x3f) - 1, in do_isapnp_entry()
1089 'A' + (((vendor & 3) << 3) | ((vendor >> 13) & 7)) - 1, in do_isapnp_entry()
1090 'A' + ((vendor >> 8) & 0x1f) - 1, in do_isapnp_entry()
1146 /* Ensure that the string remains NUL-terminated: */ in append_nibble_mask()
1149 /* Advance the caller's end-of-string pointer: */ in append_nibble_mask()
1156 * N is exactly 8 digits, where each is an upper-case hex digit, or
1168 …fatal("%s: Masked-off bit(s) of AMBA device ID are non-zero: id=0x%08X, mask=0x%08X. Please fix t… in do_amba_entry()
1174 (id >> (4 * (7 - digit))) & 0xf, in do_amba_entry()
1175 (mask >> (4 * (7 - digit))) & 0xf); in do_amba_entry()
1183 * N is exactly 2 digits, where each is an upper-case hex digit, or
1311 /* Looks like: fsl-mc:vNdN */
1318 sprintf(alias, "fsl-mc:v%08Xd%s", vendor, *obj_type); in do_fsl_mc_entry()
1363 sprintf(alias, "tee:%02x%02x%02x%02x-%02x%02x-%02x%02x-%02x%02x-%02x%02x%02x%02x%02x%02x", in do_tee_entry()
1364 uuid->b[0], uuid->b[1], uuid->b[2], uuid->b[3], uuid->b[4], in do_tee_entry()
1365 uuid->b[5], uuid->b[6], uuid->b[7], uuid->b[8], uuid->b[9], in do_tee_entry()
1366 uuid->b[10], uuid->b[11], uuid->b[12], uuid->b[13], uuid->b[14], in do_tee_entry()
1367 uuid->b[15]); in do_tee_entry()
1434 * N is exactly 2 digits, where each is an upper-case hex digit.
1534 device_id_check(mod->name, device_id, size, id_size, symval); in do_table()
1536 size -= id_size; in do_table()
1539 if (do_entry(mod->name, symval+i, alias)) { in do_table()
1540 buf_printf(&mod->dev_table_buf, in do_table()
1603 * so we write into the mod->dev_table_buf buffer. */
1613 if (!sym->st_shndx || get_secindex(info, sym) >= info->num_sections) in handle_moddevtable()
1617 if (ELF_ST_TYPE(sym->st_info) != STT_OBJECT) in handle_moddevtable()
1627 if (strcmp(name + namelen - strlen("_device_table"), "_device_table")) in handle_moddevtable()
1632 namelen = identifier - name; in handle_moddevtable()
1634 /* Handle all-NULL symbols allocated into .bss */ in handle_moddevtable()
1635 if (info->sechdrs[get_secindex(info, sym)].sh_type & SHT_NOBITS) { in handle_moddevtable()
1636 zeros = calloc(1, sym->st_size); in handle_moddevtable()
1644 do_usb_table(symval, sym->st_size, mod); in handle_moddevtable()
1646 do_of_table(symval, sym->st_size, mod); in handle_moddevtable()
1648 do_pnp_device_entry(symval, sym->st_size, mod); in handle_moddevtable()
1650 do_pnp_card_entries(symval, sym->st_size, mod); in handle_moddevtable()
1657 if (sym_is(name, namelen, p->device_id)) { in handle_moddevtable()
1658 do_table(symval, sym->st_size, p->id_size, in handle_moddevtable()
1659 p->device_id, p->do_entry, mod); in handle_moddevtable()
1671 buf_write(buf, mod->dev_table_buf.p, mod->dev_table_buf.pos); in add_moddevtable()
1672 free(mod->dev_table_buf.p); in add_moddevtable()