diff options
author | mav <mav@FreeBSD.org> | 2017-04-02 10:50:49 +0000 |
---|---|---|
committer | mav <mav@FreeBSD.org> | 2017-04-02 10:50:49 +0000 |
commit | a176739740d6e0ee4fdf184c4788e59191bf4315 (patch) | |
tree | d0764044fd53195c07535cd80e069bd868293d72 /sys/dev/isp/ispmbox.h | |
parent | 1175886037d66118604f4430f50da9809c6f709e (diff) | |
download | FreeBSD-src-a176739740d6e0ee4fdf184c4788e59191bf4315.zip FreeBSD-src-a176739740d6e0ee4fdf184c4788e59191bf4315.tar.gz |
MFC r315579, r315670: Add initial support for multiple MSI-X vectors.
For 24xx and above use 2 vectors (default and response queue).
For 26xx and above use 3 vectors (default, response and ATIO queues).
Due to global lock interrupt hardlers never run simultaneously now, but
at least this allows to save one regitster read per interrupt.
Diffstat (limited to 'sys/dev/isp/ispmbox.h')
-rw-r--r-- | sys/dev/isp/ispmbox.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/dev/isp/ispmbox.h b/sys/dev/isp/ispmbox.h index 8bd4d1a..e929e86 100644 --- a/sys/dev/isp/ispmbox.h +++ b/sys/dev/isp/ispmbox.h @@ -895,6 +895,8 @@ typedef struct { (IS_24XX(isp)? (isp->isp_fwattr & ISP2400_FW_ATTR_MULTIID) : 0) #define ISP_GET_VPIDX(isp, tag) \ (ISP_CAP_MULTI_ID(isp) ? tag : 0) +#define ISP_CAP_MSIX(isp) \ + (IS_24XX(isp)? (isp->isp_fwattr & ISP2400_FW_ATTR_MSIX) : 0) #define ISP_CAP_VP0(isp) \ (IS_24XX(isp)? (isp->isp_fwattr & ISP2400_FW_ATTR_VP0) : 0) |