pci: generic MSI interrupts support

Change-Id: Ib4fd23f6bca867a2b428bf2651234d719ee08672
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6221
Reviewed-by: waddlesplash <[email protected]>
Reviewed-by: Adrien Destugues <[email protected]>
This commit is contained in:
X512
2023-04-25 15:54:32 +00:00
committed by waddlesplash
parent 26704b5974
commit e942269a1f
19 changed files with 256 additions and 198 deletions
+17
View File
@@ -38,6 +38,23 @@ typedef struct pci_device_module_info {
uint16 *offset);
uint8 (*get_powerstate)(pci_device *device);
void (*set_powerstate)(pci_device *device, uint8 state);
// MSI/MSI-X
uint8 (*get_msi_count)(pci_device *device);
status_t (*configure_msi)(pci_device *device,
uint8 count,
uint8 *startVector);
status_t (*unconfigure_msi)(pci_device *device);
status_t (*enable_msi)(pci_device *device);
status_t (*disable_msi)(pci_device *device);
uint8 (*get_msix_count)(pci_device *device);
status_t (*configure_msix)(pci_device *device,
uint8 count,
uint8 *startVector);
status_t (*enable_msix)(pci_device *device);
} pci_device_module_info;