diff options
author | Stefan Raspl <raspl@linux.ibm.com> | 2023-01-23 19:17:48 +0100 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2023-01-25 09:46:48 +0000 |
commit | 89e7d2ba61b742a7525ff06ea4d4378c4a5560d0 (patch) | |
tree | bde67c158efe820995353daa07b0b14c9851fc66 /drivers/s390/net/ism.h | |
parent | 1baedb13f1d50ae8c7852134fdf934b4463e9baa (diff) | |
download | linux-stable-89e7d2ba61b742a7525ff06ea4d4378c4a5560d0.tar.gz linux-stable-89e7d2ba61b742a7525ff06ea4d4378c4a5560d0.tar.bz2 linux-stable-89e7d2ba61b742a7525ff06ea4d4378c4a5560d0.zip |
net/ism: Add new API for client registration
Add a new API that allows other drivers to concurrently access ISM devices.
To do so, we introduce a new API that allows other modules to register for
ISM device usage. Furthermore, we move the GID to struct ism, where it
belongs conceptually, and rename and relocate struct smcd_event to struct
ism_event.
This is the first part of a bigger overhaul of the interfaces between SMC
and ISM.
Signed-off-by: Stefan Raspl <raspl@linux.ibm.com>
Signed-off-by: Jan Karcher <jaka@linux.ibm.com>
Signed-off-by: Wenjia Zhang <wenjia@linux.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/s390/net/ism.h')
-rw-r--r-- | drivers/s390/net/ism.h | 18 |
1 files changed, 1 insertions, 17 deletions
diff --git a/drivers/s390/net/ism.h b/drivers/s390/net/ism.h index 90af51370183..70c5bbda0fea 100644 --- a/drivers/s390/net/ism.h +++ b/drivers/s390/net/ism.h @@ -16,7 +16,6 @@ */ #define ISM_DMB_WORD_OFFSET 1 #define ISM_DMB_BIT_OFFSET (ISM_DMB_WORD_OFFSET * 32) -#define ISM_NR_DMBS 1920 #define ISM_IDENT_MASK 0x00FFFF #define ISM_REG_SBA 0x1 @@ -178,7 +177,7 @@ struct ism_eq_header { struct ism_eq { struct ism_eq_header header; - struct smcd_event entry[15]; + struct ism_event entry[15]; }; struct ism_sba { @@ -190,21 +189,6 @@ struct ism_sba { u16 dmbe_mask[ISM_NR_DMBS]; }; -struct ism_dev { - spinlock_t lock; - struct pci_dev *pdev; - struct smcd_dev *smcd; - - struct ism_sba *sba; - dma_addr_t sba_dma_addr; - DECLARE_BITMAP(sba_bitmap, ISM_NR_DMBS); - - struct ism_eq *ieq; - dma_addr_t ieq_dma_addr; - - int ieq_idx; -}; - #define ISM_CREATE_REQ(dmb, idx, sf, offset) \ ((dmb) | (idx) << 24 | (sf) << 23 | (offset)) |