pciecap
struct pciecap pciecap;
bzero(&pciecap, sizeof(pciecap));
pciecap.capid = PCIY_EXPRESS;
pciecap.pcie_capabilities = PCIECAP_VERSION | type;
pciecap.link_capabilities = 0x411; /* gen1, x1 */
pciecap.link_status = 0x11; /* gen1, x1 */
err = pci_emul_add_capability(pi, (u_char *)&pciecap, sizeof(pciecap),
static_assert(sizeof(struct pciecap) == 60, "compile-time assertion failed");
uint16_t pciecap;
pciecap = pci_prop_get16(acc, prop, cap_base + PCIE_PCIECAP);
vers = pciecap & PCIE_PCIECAP_VER_MASK;
prop->ppd_pcie_type = pciecap & PCIE_PCIECAP_DEV_TYPE_MASK;
if ((pciecap & PCIE_PCIECAP_SLOT_IMPL) == 0) {
uint16_t pciecap;
pciecap = PCIE_CAP_GET(16, bus_p, PCIE_PCIECAP);
if ((pciecap & PCIE_PCIECAP_VER_MASK) < PCIE_PCIECAP_VER_2_0) {
pciecap = pci_config_get16(sp->s_pci_handle, off + PCIE_PCIECAP);
ASSERT3U((pciecap & PCIE_PCIECAP_VER_MASK), >=, PCIE_PCIECAP_VER_1_0);
uint16_t pciecap;