Barrelfish
|
PCI configuration library. More...
Functions | |
errval_t | pci_register_legacy_driver_irq (legacy_driver_init_fn init_func, uint16_t iomin, uint16_t iomax, int irq, interrupt_handler_fn handler, void *handler_arg) |
errval_t | pci_register_legacy_driver_irq_cap (legacy_driver_init_fn init_func, uint16_t iomin, uint16_t iomax, int irq_idx, interrupt_handler_fn handler, void *handler_arg) |
errval_t | pci_msix_enable (uint16_t *count) |
errval_t | pci_msix_enable_addr (struct pci_address *addr, uint16_t *count) |
enables MSI-X interupts for a given device More... | |
errval_t | pci_msix_vector_init (uint16_t index, uint8_t destination, uint8_t vector) |
errval_t | pci_msix_vector_init_addr (struct pci_address *addr, uint16_t index, uint8_t destination, uint8_t vector) |
PCI configuration library.
errval_t pci_msix_enable | ( | uint16_t * | count | ) |
Enable MSI-X for the PCI device
count | Memory location where the number of supported vectors is written |
errval_t pci_msix_enable_addr | ( | struct pci_address * | addr, |
uint16_t * | count | ||
) |
enables MSI-X interupts for a given device
addr | PCI address of the device to activate or NULL if don't care |
count | returns the number of supported MSI-X interrupts |
errval_t pci_msix_vector_init | ( | uint16_t | index, |
uint8_t | destination, | ||
uint8_t | vector | ||
) |
Configure an MSI-X vector
index | MSI-X Vector index |
destination | Destination APIC where the interrupt should be sent |
vector | Interrupt vector to send |
errval_t pci_msix_vector_init_addr | ( | struct pci_address * | addr, |
uint16_t | index, | ||
uint8_t | destination, | ||
uint8_t | vector | ||
) |
Configure an MSI-X vector
addr | PCI address of the device to activate or NULL if don't care |
index | MSI-X Vector index |
destination | Destination APIC where the interrupt should be sent |
vector | Interrupt vector to send |
errval_t pci_register_legacy_driver_irq | ( | legacy_driver_init_fn | init_func, |
uint16_t | iomin, | ||
uint16_t | iomax, | ||
int | irq, | ||
interrupt_handler_fn | handler, | ||
void * | handler_arg | ||
) |
Deprecated. Use pci_register_legacy_driver_irq_cap.
errval_t pci_register_legacy_driver_irq_cap | ( | legacy_driver_init_fn | init_func, |
uint16_t | iomin, | ||
uint16_t | iomax, | ||
int | irq_idx, | ||
interrupt_handler_fn | handler, | ||
void * | handler_arg | ||
) |
Register a legacy device driver. The driver can specify a range of IO ports that he wants to access.
init_func | Callback function that will be called once pci_client is initialized. |
iomin | I/O range minimum |
iomax | I/O range maximum |
irq_idx | Interrupt cap index |
interrupt_handler | The handler function when a interrupt is triggered. |
handler_arg | Argument for interrupt_handler |