aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAllen Hubbe <Allen.Hubbe@emc.com>2016-03-21 04:53:13 -0400
committerJon Mason <jdmason@kudzu.us>2016-03-21 19:30:06 -0400
commitafc54992296a5e7f7d2e41456ed90789b01a4e7b (patch)
tree1169ae9df2c86aee7d76cf5ff625c1840b944b17
parent838850ee0bb97fc60ca8f1de3bf12ed0854f6173 (diff)
NTB: Make _addr functions optional in the API
The functions ntb_peer_db_addr and ntb_peer_spad_addr were required by the api. The functions already support returning an error, so any existing calling code should already check for it. Any existing code using drivers that implement the functions will not be affected. Signed-off-by: Allen Hubbe <Allen.Hubbe@emc.com> Signed-off-by: Jon Mason <jdmason@kudzu.us>
-rw-r--r--include/linux/ntb.h10
1 files changed, 8 insertions, 2 deletions
diff --git a/include/linux/ntb.h b/include/linux/ntb.h
index f798e2afba88..6f47562d477b 100644
--- a/include/linux/ntb.h
+++ b/include/linux/ntb.h
@@ -284,7 +284,7 @@ static inline int ntb_dev_ops_is_valid(const struct ntb_dev_ops *ops)
284 /* ops->db_read_mask && */ 284 /* ops->db_read_mask && */
285 ops->db_set_mask && 285 ops->db_set_mask &&
286 ops->db_clear_mask && 286 ops->db_clear_mask &&
287 ops->peer_db_addr && 287 /* ops->peer_db_addr && */
288 /* ops->peer_db_read && */ 288 /* ops->peer_db_read && */
289 ops->peer_db_set && 289 ops->peer_db_set &&
290 /* ops->peer_db_clear && */ 290 /* ops->peer_db_clear && */
@@ -295,7 +295,7 @@ static inline int ntb_dev_ops_is_valid(const struct ntb_dev_ops *ops)
295 ops->spad_count && 295 ops->spad_count &&
296 ops->spad_read && 296 ops->spad_read &&
297 ops->spad_write && 297 ops->spad_write &&
298 ops->peer_spad_addr && 298 /* ops->peer_spad_addr && */
299 /* ops->peer_spad_read && */ 299 /* ops->peer_spad_read && */
300 ops->peer_spad_write && 300 ops->peer_spad_write &&
301 1; 301 1;
@@ -757,6 +757,9 @@ static inline int ntb_peer_db_addr(struct ntb_dev *ntb,
757 phys_addr_t *db_addr, 757 phys_addr_t *db_addr,
758 resource_size_t *db_size) 758 resource_size_t *db_size)
759{ 759{
760 if (!ntb->ops->peer_db_addr)
761 return -EINVAL;
762
760 return ntb->ops->peer_db_addr(ntb, db_addr, db_size); 763 return ntb->ops->peer_db_addr(ntb, db_addr, db_size);
761} 764}
762 765
@@ -948,6 +951,9 @@ static inline int ntb_spad_write(struct ntb_dev *ntb, int idx, u32 val)
948static inline int ntb_peer_spad_addr(struct ntb_dev *ntb, int idx, 951static inline int ntb_peer_spad_addr(struct ntb_dev *ntb, int idx,
949 phys_addr_t *spad_addr) 952 phys_addr_t *spad_addr)
950{ 953{
954 if (!ntb->ops->peer_spad_addr)
955 return -EINVAL;
956
951 return ntb->ops->peer_spad_addr(ntb, idx, spad_addr); 957 return ntb->ops->peer_spad_addr(ntb, idx, spad_addr);
952} 958}
953 959