arcmsr: Adding code to support MSI-X interrupt
PATCH 2/16 arcmsr: Adding code to support MSI-X interrupt
From: Ching<[email protected]>
Adding code for supporting MSI-X interrupt.
Signed-off-by Ching<[email protected]>
---
drivers/scsi/arcmsr/arcmsr.h +5 -0
@@ -64,6 +64,7 @@ struct device_attribute;#define ARCMSR_MAX_HBB_POSTQUEUE 264#define ARCMSR_MAX_XFER_LEN 0x26000/* 152K */ #define ARCMSR_CDB_SG_PAGE_LENGTH 256 +#define ARCMST_NUM_MSIX_VECTORS 4#ifndef PCI_DEVICE_ID_ARECA_1880 #define PCI_DEVICE_ID_ARECA_1880 0x1880#endif
@@ -508,6 +509,7 @@ struct AdapterControlBlockstruct pci_dev * pdev;struct Scsi_Host * host;unsigned long vir2phy_offset; +struct msix_entry entries[ARCMST_NUM_MSIX_VECTORS ];/* Offset is used in making arc cdb physical to virtual calculations */ uint32_t outbound_int_enable;uint32_t cdb_phyaddr_hi32;
@@ -544,6 +546,8 @@ struct AdapterControlBlock/* iop init */ #define ACB_F_ABORT 0x0200#define ACB_F_FIRMWARE_TRAP 0x0400 +#define ACB_F_MSI_ENABLED 0x1000 +#define ACB_F_MSIX_ENABLED 0x2000struct CommandControlBlock * pccb_pool[ARCMSR_MAX_FREECCB_NUM ];/* used for memory free */ struct list_head ccb_free_list;
@@ -594,6 +598,7 @@ struct AdapterControlBlock#define FW_DEADLOCK 0x0010atomic_t rq_map_token;atomic_t ante_token_value; +int msix_vector_count; };/* HW_DEVICE_EXTENSION */ /* *******************************************************************************
drivers/scsi/arcmsr/arcmsr_hba.c +74 -12
151 lines not on this page · raw message