Lines Matching defs:msi_cap
198 * @msi_cap: MSI Capabilities
204 vxge_hal_mgmt_msi_cap_t *msi_cap)
210 vxge_assert((hldev != NULL) && (msi_cap != NULL));
216 "hldev = 0x"VXGE_OS_STXFMT", msi_cap = 0x"VXGE_OS_STXFMT,
217 (ptr_t) hldev, (ptr_t) msi_cap);
225 vxge_os_memzero(msi_cap, sizeof(vxge_hal_mgmt_msi_cap_t));
235 msi_cap->enable = 1;
238 msi_cap->is_pvm_capable = 1;
241 msi_cap->is_64bit_addr_capable = 1;
243 msi_cap->vectors_allocated =
246 msi_cap->max_vectors_capable =
249 if (msi_cap->is_64bit_addr_capable) {
250 if (msi_cap->is_pvm_capable) {
258 msi_cap->address = ((u64) addr32) << 32;
267 msi_cap->address |= (u64) addr32;
274 2, &msi_cap->data);
281 4, &msi_cap->mask_bits);
288 4, &msi_cap->pending_bits);
297 msi_cap->address = ((u64) addr32) << 32;
306 msi_cap->address |= (u64) addr32;
313 2, &msi_cap->data);
317 if (msi_cap->is_pvm_capable) {
325 msi_cap->address = (u64) addr32;
332 2, &msi_cap->data);
339 4, &msi_cap->mask_bits);
346 4, &msi_cap->pending_bits);
356 msi_cap->address = (u64) addr32;
363 2, &msi_cap->data);
375 * @msi_cap: MSI Capabilities
381 vxge_hal_mgmt_msi_cap_t *msi_cap)
387 vxge_assert((hldev != NULL) && (msi_cap != NULL));
393 "msi_cap = 0x"VXGE_OS_STXFMT, (ptr_t) hldev, (ptr_t) msi_cap);
407 if (msi_cap->enable)
412 if (msi_cap->vectors_allocated >
421 msi_control_reg |= (msi_cap->vectors_allocated & 0x7) << 4;
426 addr32 = (u32) (msi_cap->address >> 32);
434 addr32 = (u32) msi_cap->address;
446 au.ma64_pvm.msi_data), msi_cap->data);
452 au.ma64_pvm.msi_mask), msi_cap->mask_bits);
458 au.ma64_pvm.msi_pending), msi_cap->pending_bits);
460 addr32 = (u32) (msi_cap->address >> 32);
468 addr32 = (u32) msi_cap->address;
480 au.ma64_no_pvm.msi_data), msi_cap->data);
486 addr32 = (u32) msi_cap->address;
498 au.ma32_pvm.msi_data), msi_cap->data);
504 au.ma32_pvm.msi_mask), msi_cap->mask_bits);
510 au.ma32_pvm.msi_pending), msi_cap->pending_bits);
513 addr32 = (u32) msi_cap->address;
525 au.ma32_no_pvm.msi_data), msi_cap->data);