quirk
const char *quirk = NULL;
quirk = kiconv_quirkcs(csp + 1, KICONV_VENDOR_MICSFT);
build_iovec_argf(&iov, &iovlen, "cs_local", quirk);
cs_local = strdup(quirk);
int quirk;
for (i = 0; quirks[i].quirk != 0; ++i) {
return (quirks[i].quirk);
struct ata_quirk_entry *quirk;
quirk = (struct ata_quirk_entry *)match;
device->quirk = quirk;
if (quirk->quirks & CAM_QUIRK_MAXTAGS) {
device->mintags = quirk->mintags;
device->maxtags = quirk->maxtags;
struct ata_quirk_entry *quirk;
quirk = &ata_quirk_table[nitems(ata_quirk_table) - 1];
device->quirk = (void *)quirk;
void *quirk; /* Oddities about this device */
device->quirk = NULL;
struct nvme_quirk_entry *quirk;
quirk = (struct nvme_quirk_entry *)match;
device->quirk = quirk;
if (quirk->quirks & CAM_QUIRK_MAXTAGS) {
device->mintags = quirk->mintags;
device->maxtags = quirk->maxtags;
struct nvme_quirk_entry *quirk;
quirk = &nvme_quirk_table[nvme_quirk_table_size - 1];
device->quirk = (void *)quirk;
struct scsi_sense_quirk_entry *quirk;
quirk = (struct scsi_sense_quirk_entry *)match;
asc_tables[0] = quirk->asc_info;
asc_tables_size[0] = quirk->num_ascs;
sense_tables[0] = quirk->sense_key_info;
sense_tables_size[0] = quirk->num_sense_keys;
struct scsi_quirk_entry *quirk;
quirk = (struct scsi_quirk_entry *)match;
device->quirk = quirk;
device->mintags = quirk->mintags;
device->maxtags = quirk->maxtags;
struct scsi_quirk_entry *quirk;
quirk = &scsi_quirk_table[nitems(scsi_quirk_table) - 1];
device->quirk = (void *)quirk;
device->mintags = quirk->mintags;
device->maxtags = quirk->maxtags;
#define SCSI_QUIRK(dev) ((struct scsi_quirk_entry *)((dev)->quirk))
int quirk;
return (quirks[i].quirk);
struct edid_quirk *quirk;
quirk = &edid_quirk_list[i];
if (edid_vendor(edid, quirk->vendor) &&
(EDID_PRODUCT_ID(edid) == quirk->product_id))
return quirk->quirks;
hid_add_dynamic_quirk(struct hid_device_info *dev_info, uint16_t quirk)
dev_info->autoQuirk[x] == quirk) {
dev_info->autoQuirk[x] = quirk;
hid_test_quirk(const struct hid_device_info *dev_info, uint16_t quirk)
if (quirk == HQ_NONE)
if (dev_info->autoQuirk[x] == quirk)
found = (hid_test_quirk_p) (dev_info, quirk);
hid_test_quirk_w(const struct hid_device_info *dev_info, uint16_t quirk)
uint16_t quirk);
bool hid_test_quirk(const struct hid_device_info *dev_info, uint16_t quirk);
uint16_t quirk);
hidquirkstr(uint16_t quirk)
return ((quirk < HID_QUIRK_MAX && hidquirk_str[quirk] != NULL) ?
hidquirk_str[quirk] : "HQ_UNKNOWN");
const char *quirk;
quirk = hidquirkstr(x);
if (strncmp(str, quirk, len) == 0 &&
quirk[len] == 0)
hid_test_quirk_by_info(const struct hid_device_info *info, uint16_t quirk)
if (quirk == HQ_NONE)
if (hidquirks[x].quirks[y] == quirk) {
DPRINTF("Found quirk '%s'.\n", hidquirkstr(quirk));
uint16_t quirk;
quirk = hid_strquirk(env, end - env);
if (quirk < HID_QUIRK_MAX) {
entry.quirks[quirk_idx++] = quirk;
const struct mmc_quirk *quirk;
for (quirk = &mmc_quirks[0]; quirk->mid != 0x0; quirk++) {
if ((quirk->mid == MMC_QUIRK_MID_ANY ||
quirk->mid == ivar->cid.mid) &&
(quirk->oid == MMC_QUIRK_OID_ANY ||
quirk->oid == ivar->cid.oid) &&
strncmp(quirk->pnm, ivar->cid.pnm,
ivar->quirks = quirk->quirks;
static int pci_has_quirk(uint32_t devid, int quirk);
pci_has_quirk(uint32_t devid, int quirk)
if (q->devid == devid && q->type == quirk)
usb_quirkstr(uint16_t quirk)
return ((quirk < USB_QUIRK_MAX && usb_quirk_str[quirk] != NULL) ?
usb_quirk_str[quirk] : "UQ_UNKNOWN");
const char *quirk;
quirk = usb_quirkstr(x);
if (strncmp(str, quirk, len) == 0 &&
quirk[len] == 0)
usb_test_quirk_by_info(const struct usbd_lookup_info *info, uint16_t quirk)
if (quirk == UQ_NONE)
if (usb_quirks[x].quirks[y] == quirk) {
DPRINTF("Found quirk '%s'.\n", usb_quirkstr(quirk));
uint16_t quirk;
quirk = usb_strquirk(env, end - env);
if (quirk < USB_QUIRK_MAX) {
entry.quirks[quirk_idx++] = quirk;
uint8_t usb_test_quirk(const struct usb_attach_arg *uaa, uint16_t quirk);
usb_test_quirk(const struct usb_attach_arg *uaa, uint16_t quirk)
if (quirk == UQ_NONE)
if (uaa->device->autoQuirk[x] == quirk)
found = (usb_test_quirk_p) (&uaa->info, quirk);
usbd_add_dynamic_quirk(struct usb_device *udev, uint16_t quirk)
udev->autoQuirk[x] == quirk) {
udev->autoQuirk[x] = quirk;
usb_test_quirk_w(const struct usbd_lookup_info *info, uint16_t quirk)
uint16_t quirk);
uint16_t quirk);
nb_quirk->quirk(dmar, nb);
cpu_quirk->quirk(dmar);
.quirk = nb_5400_no_low_high_prot_mem,
.quirk = nb_5400_no_low_high_prot_mem,
.quirk = nb_5500_no_ir_rev13,
.quirk = nb_5500_no_ir_rev13,
.quirk = nb_no_ir,
.quirk = nb_5500_no_ir_rev13,
.stepping = 6, .quirk = cpu_e5_am9,
dmar_quirk_cpu_fun quirk;
dmar_quirk_nb_fun quirk;
quirk_find_prop(struct quirks *q, enum quirk which)
quirks_has_quirk(struct quirks *q, enum quirk which)
quirks_get_int32(struct quirks *q, enum quirk which, int32_t *val)
quirks_get_uint32(struct quirks *q, enum quirk which, uint32_t *val)
quirks_get_double(struct quirks *q, enum quirk which, double *val)
quirks_get_string(struct quirks *q, enum quirk which, char **val)
quirks_get_bool(struct quirks *q, enum quirk which, bool *val)
enum quirk which,
enum quirk which,
enum quirk which,
enum quirk which,
quirk_get_name(enum quirk q)
enum quirk q = QUIRK_MODEL_ALPS_SERIAL_TOUCHPAD;
enum quirk id;
quirk_get_name(enum quirk q);
quirks_has_quirk(struct quirks *q, enum quirk which);
enum quirk which,
enum quirk which,
enum quirk which,
enum quirk which,
enum quirk which,
enum quirk which,
enum quirk which,
enum quirk which,
enum quirk which,