Lines Matching refs:entry

975 	u8 entries, *entry;  in bit_table()  local
981 entry = &bios->data[bios->offset + 12]; in bit_table()
983 if (entry[0] == id) { in bit_table()
984 bit->id = entry[0]; in bit_table()
985 bit->version = entry[1]; in bit_table()
986 bit->length = ROM16(entry[2]); in bit_table()
987 bit->offset = ROM16(entry[4]); in bit_table()
988 bit->data = ROMPTR(dev, entry[4]); in bit_table()
992 entry += bios->data[bios->offset + 9]; in bit_table()
1374 struct dcb_output *entry = &dcb->entry[dcb->entries]; in new_dcb_entry() local
1376 memset(entry, 0, sizeof(struct dcb_output)); in new_dcb_entry()
1377 entry->index = dcb->entries++; in new_dcb_entry()
1379 return entry; in new_dcb_entry()
1385 struct dcb_output *entry = new_dcb_entry(dcb); in fabricate_dcb_output() local
1387 entry->type = type; in fabricate_dcb_output()
1388 entry->i2c_index = i2c; in fabricate_dcb_output()
1389 entry->heads = heads; in fabricate_dcb_output()
1391 entry->location = !DCB_LOC_ON_CHIP; /* ie OFF CHIP */ in fabricate_dcb_output()
1392 entry->or = or; in fabricate_dcb_output()
1397 uint32_t conn, uint32_t conf, struct dcb_output *entry) in parse_dcb20_entry() argument
1402 entry->type = conn & 0xf; in parse_dcb20_entry()
1403 entry->i2c_index = (conn >> 4) & 0xf; in parse_dcb20_entry()
1404 entry->heads = (conn >> 8) & 0xf; in parse_dcb20_entry()
1405 entry->connector = (conn >> 12) & 0xf; in parse_dcb20_entry()
1406 entry->bus = (conn >> 16) & 0xf; in parse_dcb20_entry()
1407 entry->location = (conn >> 20) & 0x3; in parse_dcb20_entry()
1408 entry->or = (conn >> 24) & 0xf; in parse_dcb20_entry()
1410 switch (entry->type) { in parse_dcb20_entry()
1416 entry->crtconf.maxfreq = (dcb->version < 0x30) ? in parse_dcb20_entry()
1424 entry->lvdsconf.use_straps_for_mode = true; in parse_dcb20_entry()
1432 entry->lvdsconf.use_straps_for_mode = true; in parse_dcb20_entry()
1438 entry->lvdsconf.use_power_scripts = true; in parse_dcb20_entry()
1442 entry->lvdsconf.use_acpi_for_edid = true; in parse_dcb20_entry()
1444 entry->lvdsconf.use_power_scripts = true; in parse_dcb20_entry()
1445 entry->lvdsconf.sor.link = (conf & 0x00000030) >> 4; in parse_dcb20_entry()
1446 link = entry->lvdsconf.sor.link; in parse_dcb20_entry()
1464 entry->tvconf.has_component_output = conf & (0x8 << 4); in parse_dcb20_entry()
1466 entry->tvconf.has_component_output = false; in parse_dcb20_entry()
1471 entry->dpconf.sor.link = (conf & 0x00000030) >> 4; in parse_dcb20_entry()
1472 entry->extdev = (conf & 0x0000ff00) >> 8; in parse_dcb20_entry()
1475 entry->dpconf.link_bw = 162000; in parse_dcb20_entry()
1478 entry->dpconf.link_bw = 270000; in parse_dcb20_entry()
1481 entry->dpconf.link_bw = 540000; in parse_dcb20_entry()
1484 entry->dpconf.link_nr = (conf & 0x0f000000) >> 24; in parse_dcb20_entry()
1486 switch (entry->dpconf.link_nr) { in parse_dcb20_entry()
1488 entry->dpconf.link_nr = 4; in parse_dcb20_entry()
1491 entry->dpconf.link_nr = 2; in parse_dcb20_entry()
1494 entry->dpconf.link_nr = 1; in parse_dcb20_entry()
1498 link = entry->dpconf.sor.link; in parse_dcb20_entry()
1499 entry->i2c_index += NV_I2C_AUX(0); in parse_dcb20_entry()
1503 entry->tmdsconf.sor.link = (conf & 0x00000030) >> 4; in parse_dcb20_entry()
1504 entry->extdev = (conf & 0x0000ff00) >> 8; in parse_dcb20_entry()
1505 link = entry->tmdsconf.sor.link; in parse_dcb20_entry()
1508 entry->tmdsconf.slave_addr = (conf & 0x00000700) >> 8; in parse_dcb20_entry()
1510 entry->tmdsconf.slave_addr = (conf & 0x00000070) >> 4; in parse_dcb20_entry()
1524 entry->duallink_possible = in parse_dcb20_entry()
1525 ((1 << (ffs(entry->or) - 1)) * 3 == entry->or); in parse_dcb20_entry()
1527 entry->duallink_possible = (entry->sorconf.link == 3); in parse_dcb20_entry()
1532 entry->i2c_upper_default = true; in parse_dcb20_entry()
1534 entry->hasht = (entry->location << 4) | entry->type; in parse_dcb20_entry()
1535 entry->hashm = (entry->heads << 8) | (link << 6) | entry->or; in parse_dcb20_entry()
1541 uint32_t conn, uint32_t conf, struct dcb_output *entry) in parse_dcb15_entry() argument
1547 entry->type = DCB_OUTPUT_ANALOG; in parse_dcb15_entry()
1550 entry->type = DCB_OUTPUT_TV; in parse_dcb15_entry()
1555 entry->type = DCB_OUTPUT_LVDS; in parse_dcb15_entry()
1557 entry->type = DCB_OUTPUT_TMDS; in parse_dcb15_entry()
1560 entry->type = DCB_OUTPUT_LVDS; in parse_dcb15_entry()
1567 entry->i2c_index = (conn & 0x0003c000) >> 14; in parse_dcb15_entry()
1568 entry->heads = ((conn & 0x001c0000) >> 18) + 1; in parse_dcb15_entry()
1569 entry->or = entry->heads; /* same as heads, hopefully safe enough */ in parse_dcb15_entry()
1570 entry->location = (conn & 0x01e00000) >> 21; in parse_dcb15_entry()
1571 entry->bus = (conn & 0x0e000000) >> 25; in parse_dcb15_entry()
1572 entry->duallink_possible = false; in parse_dcb15_entry()
1574 switch (entry->type) { in parse_dcb15_entry()
1576 entry->crtconf.maxfreq = (conf & 0xffff) * 10; in parse_dcb15_entry()
1579 entry->tvconf.has_component_output = false; in parse_dcb15_entry()
1583 entry->lvdsconf.use_straps_for_mode = true; in parse_dcb15_entry()
1584 entry->lvdsconf.use_power_scripts = true; in parse_dcb15_entry()
1606 struct dcb_output *ient = &dcb->entry[i]; in merge_like_dcb_entries()
1610 struct dcb_output *jent = &dcb->entry[j]; in merge_like_dcb_entries()
1630 if (dcb->entry[i].type == 100) in merge_like_dcb_entries()
1634 dcb->entry[newentries] = dcb->entry[i]; in merge_like_dcb_entries()
1635 dcb->entry[newentries].index = newentries; in merge_like_dcb_entries()
1791 struct dcb_output *entry = new_dcb_entry(dcb); in parse_dcb_entry() local
1796 ret = parse_dcb20_entry(dev, dcb, conn, conf, entry); in parse_dcb_entry()
1798 ret = parse_dcb15_entry(dev, dcb, conn, conf, entry); in parse_dcb_entry()
1806 if (entry->type == DCB_OUTPUT_TV && in parse_dcb_entry()
1807 entry->location == DCB_LOC_ON_CHIP) in parse_dcb_entry()
1808 entry->i2c_index = 0x0f; in parse_dcb_entry()
1828 if (dcbt->entry[i].connector) in dcb_fake_connectors()
1840 u8 i2c = dcbt->entry[i].i2c_index; in dcb_fake_connectors()
1842 dcbt->entry[i].connector = idx++; in dcb_fake_connectors()
1846 dcbt->entry[i].connector = map[i2c] - 1; in dcb_fake_connectors()
1906 …nv17_hwsq_ucode_entry(struct drm_device *dev, struct nvbios *bios, uint16_t hwsq_offset, int entry) in load_nv17_hwsq_ucode_entry() argument
1923 if (bios->data[hwsq_offset] <= entry) { in load_nv17_hwsq_ucode_entry()
1938 hwsq_entry_offset = hwsq_offset + 2 + entry * bytes_to_write; in load_nv17_hwsq_ucode_entry()