Lines Matching full:the

180 /* Size of the standard PCI config header */
182 /* Size of the standard PCI config space */
184 /* Size of the standard PCIe config space: 4KB */
407 * Allows to modify the behavior of some IOMMU operations of the PCI
412 * @get_address_space: get the address space for a set of devices
417 * @bus: the #PCIBus being accessed.
419 * @opaque: the data passed to pci_setup_iommu().
428 * retrieve host information from the associated HostIOMMUDevice.
430 * @bus: the #PCIBus of the PCI device.
432 * @opaque: the data passed to pci_setup_iommu().
434 * @devfn: device and function number of the PCI device.
436 * @dev: the #HostIOMMUDevice to attach.
449 * @bus: the #PCIBus of the PCI device.
451 * @opaque: the data passed to pci_setup_iommu().
453 * @devfn: device and function number of the PCI device.
461 * @opaque: the data passed to pci_setup_iommu().
463 * @addr_width: the address width of the IOMMU (output parameter).
465 * @min_page_size: the page size of the IOMMU (output parameter).
474 * @bus: the #PCIBus of the PCI device.
476 * @opaque: the data passed to pci_setup_iommu().
478 * @devfn: device and function number of the PCI device.
480 * @n: the notifier to be initialized.
482 * @fn: the callback to be installed.
494 * @bus: the #PCIBus of the PCI device.
496 * @opaque: the data passed to pci_setup_iommu().
498 * @devfn: device and function number of the PCI device.
500 * @pasid: the pasid of the address space to watch.
502 * @n: the notifier to register.
511 * @bus: the #PCIBus of the PCI device.
513 * @opaque: the data passed to pci_setup_iommu().
515 * @devfn: device and function number of the PCI device.
517 * @pasid: the pasid of the address space to stop watching.
519 * @n: the notifier to unregister.
526 * Callback required if devices are allowed to use the address
529 * @bus: the #PCIBus of the PCI device.
531 * @opaque: the data passed to pci_setup_iommu().
533 * @devfn: device and function number of the PCI device.
535 * @pasid: the pasid of the address space to use for the request.
541 * @addr: start address of the memory range to be translated.
543 * @length: length of the memory range in bytes.
547 * @result: buffer in which the TLB entries will be stored.
553 * Returns: the number of translations stored in the result buffer, or
554 * -ENOMEM if the buffer is not large enough.
564 * @pri_register_notifier: setup the PRI completion callback.
566 * Callback required if devices are allowed to use the page request
569 * @bus: the #PCIBus of the PCI device.
571 * @opaque: the data passed to pci_setup_iommu().
573 * @devfn: device and function number of the PCI device.
575 * @pasid: the pasid of the address space to track.
577 * @notifier: the notifier to register.
582 * @pri_unregister_notifier: remove the PRI completion callback.
584 * Callback required if devices are allowed to use the page request
587 * @bus: the #PCIBus of the PCI device.
589 * @opaque: the data passed to pci_setup_iommu().
591 * @devfn: device and function number of the PCI device.
593 * @pasid: the pasid of the address space to stop tracking.
600 * Callback required if devices are allowed to use the page request
603 * @bus: the #PCIBus of the PCI device.
605 * @opaque: the data passed to pci_setup_iommu().
607 * @devfn: device and function number of the PCI device.
609 * @pasid: the pasid of the address space to use for the request.
615 * @addr: untranslated address of the requested page.
642 * @dev: the device that wants to get the information.
643 * @addr_width: the address width of the IOMMU (output parameter).
644 * @min_page_size: the page size of the IOMMU (output parameter).
654 * @dev: the device.
655 * @n: the notifier to be initialized.
656 * @fn: the callback to be installed.
665 * Returns the number of translations stored in @result in case of success,
667 * -ENOMEM is returned when the result buffer is not large enough to store
668 * all the translations.
670 * @dev: the ATS-capable PCI device.
671 * @pasid: the pasid of the address space in which the translation will be done.
674 * @addr: start address of the memory range to be translated.
675 * @length: length of the memory range in bytes.
677 * @result: buffer in which the TLB entries will be stored.
691 * Returns 0 if the PRI request has been sent to the guest OS,
694 * @dev: the PRI-capable PCI device.
695 * @pasid: the pasid of the address space in which the translation will be done.
698 * @addr: untranslated address of the requested page.
709 * pci_pri_register_notifier: register the PRI callback for a given address
714 * @dev: the PRI-capable PCI device.
715 * @pasid: the pasid of the address space to track.
716 * @notifier: the notifier to register.
722 * pci_pri_unregister_notifier: remove the PRI callback from a given address
725 * @dev: the PRI-capable PCI device.
726 * @pasid: the pasid of the address space to stop tracking.
736 * @dev: the device that wants to get notified.
737 * @pasid: the pasid of the address space to track.
738 * @n: the notifier to register.
749 * @dev: the device that wants to stop notifications.
750 * @pasid: the pasid of the address space to stop tracking.
751 * @n: the notifier to unregister.
761 * @bus: the #PCIBus being updated.
762 * @ops: the #PCIIOMMUOps
763 * @opaque: passed to callbacks of the @ops structure.