summaryrefslogtreecommitdiffstats
path: root/include/linux/ntb.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux/ntb.h')
-rw-r--r--include/linux/ntb.h10
1 files changed, 7 insertions, 3 deletions
diff --git a/include/linux/ntb.h b/include/linux/ntb.h
index 181d16601dd9..56a92e3ae3ae 100644
--- a/include/linux/ntb.h
+++ b/include/linux/ntb.h
@@ -296,7 +296,8 @@ struct ntb_dev_ops {
296 int (*db_clear_mask)(struct ntb_dev *ntb, u64 db_bits); 296 int (*db_clear_mask)(struct ntb_dev *ntb, u64 db_bits);
297 297
298 int (*peer_db_addr)(struct ntb_dev *ntb, 298 int (*peer_db_addr)(struct ntb_dev *ntb,
299 phys_addr_t *db_addr, resource_size_t *db_size); 299 phys_addr_t *db_addr, resource_size_t *db_size,
300 u64 *db_data, int db_bit);
300 u64 (*peer_db_read)(struct ntb_dev *ntb); 301 u64 (*peer_db_read)(struct ntb_dev *ntb);
301 int (*peer_db_set)(struct ntb_dev *ntb, u64 db_bits); 302 int (*peer_db_set)(struct ntb_dev *ntb, u64 db_bits);
302 int (*peer_db_clear)(struct ntb_dev *ntb, u64 db_bits); 303 int (*peer_db_clear)(struct ntb_dev *ntb, u64 db_bits);
@@ -1078,6 +1079,8 @@ static inline int ntb_db_clear_mask(struct ntb_dev *ntb, u64 db_bits)
1078 * @ntb: NTB device context. 1079 * @ntb: NTB device context.
1079 * @db_addr: OUT - The address of the peer doorbell register. 1080 * @db_addr: OUT - The address of the peer doorbell register.
1080 * @db_size: OUT - The number of bytes to write the peer doorbell register. 1081 * @db_size: OUT - The number of bytes to write the peer doorbell register.
1082 * @db_data: OUT - The data of peer doorbell register
1083 * @db_bit: door bell bit number
1081 * 1084 *
1082 * Return the address of the peer doorbell register. This may be used, for 1085 * Return the address of the peer doorbell register. This may be used, for
1083 * example, by drivers that offload memory copy operations to a dma engine. 1086 * example, by drivers that offload memory copy operations to a dma engine.
@@ -1091,12 +1094,13 @@ static inline int ntb_db_clear_mask(struct ntb_dev *ntb, u64 db_bits)
1091 */ 1094 */
1092static inline int ntb_peer_db_addr(struct ntb_dev *ntb, 1095static inline int ntb_peer_db_addr(struct ntb_dev *ntb,
1093 phys_addr_t *db_addr, 1096 phys_addr_t *db_addr,
1094 resource_size_t *db_size) 1097 resource_size_t *db_size,
1098 u64 *db_data, int db_bit)
1095{ 1099{
1096 if (!ntb->ops->peer_db_addr) 1100 if (!ntb->ops->peer_db_addr)
1097 return -EINVAL; 1101 return -EINVAL;
1098 1102
1099 return ntb->ops->peer_db_addr(ntb, db_addr, db_size); 1103 return ntb->ops->peer_db_addr(ntb, db_addr, db_size, db_data, db_bit);
1100} 1104}
1101 1105
1102/** 1106/**