Lines Matching refs:cap
37 capability *cap; in ~device() local
38 while ((cap = list_remove_head_type(&capability_list_, capability, node))) { in ~device()
39 delete cap; in ~device()
184 capability *cap = new capability; in probe_capabilities() local
185 cap->id = cap_id; in probe_capabilities()
186 cap->config_offset = cap_ptr; in probe_capabilities()
189 if (cap) { in probe_capabilities()
190 list_add_tail(&capability_list_, &cap->node); in probe_capabilities()
196 if (init_msi_capability(cap) == NO_ERROR) { in probe_capabilities()
197 msi_cap_ = cap; in probe_capabilities()
203 if (init_msix_capability(cap) == NO_ERROR) { in probe_capabilities()
204 msix_cap_ = cap; in probe_capabilities()
223 status_t device::init_msi_capability(capability *cap) { in init_msi_capability() argument
226 DEBUG_ASSERT(cap->id == 0x5); in init_msi_capability()
230 pci_read_config_word(loc(), cap->config_offset, &cap_buf[0]); in init_msi_capability()
231 pci_read_config_word(loc(), cap->config_offset + 4, &cap_buf[1]); in init_msi_capability()
232 pci_read_config_word(loc(), cap->config_offset + 8, &cap_buf[2]); in init_msi_capability()
233 pci_read_config_word(loc(), cap->config_offset + 12, &cap_buf[3]); in init_msi_capability()
234 pci_read_config_word(loc(), cap->config_offset + 16, &cap_buf[4]); in init_msi_capability()
235 pci_read_config_word(loc(), cap->config_offset + 20, &cap_buf[5]); in init_msi_capability()
241 status_t device::init_msix_capability(capability *cap) { in init_msix_capability() argument
244 DEBUG_ASSERT(cap->id == 0x11); in init_msix_capability()
248 pci_read_config_word(loc(), cap->config_offset, &cap_buf[0]); in init_msix_capability()
249 pci_read_config_word(loc(), cap->config_offset + 4, &cap_buf[1]); in init_msix_capability()
250 pci_read_config_word(loc(), cap->config_offset + 8, &cap_buf[2]); in init_msix_capability()