aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/ntb/ntb_transport.h
diff options
context:
space:
mode:
authorAlexander Motin <mav@FreeBSD.org>2016-07-29 17:15:41 +0000
committerAlexander Motin <mav@FreeBSD.org>2016-07-29 17:15:41 +0000
commit6bd57d14ed207b6b5aa94f81b8bef29bc52b8518 (patch)
tree8b1d100670cef43198ab3b7b43e8c7363a1a0f8e /sys/dev/ntb/ntb_transport.h
parent793172ea8846d38e8425883ab942328ddef363e0 (diff)
downloadsrc-6bd57d14ed207b6b5aa94f81b8bef29bc52b8518.tar.gz
src-6bd57d14ed207b6b5aa94f81b8bef29bc52b8518.zip
Once more refactor KPI between ntb_transport(4) and if_ntb(4)..
New design allows to attach multiple consumers to ntb_transport(4) instance. Previous design obtained from Linux theoretically allowed that, but was not practically usable (Linux also has only one consumer driver now).
Notes
Notes: svn path=/head/; revision=303494
Diffstat (limited to 'sys/dev/ntb/ntb_transport.h')
-rw-r--r--sys/dev/ntb/ntb_transport.h9
1 files changed, 5 insertions, 4 deletions
diff --git a/sys/dev/ntb/ntb_transport.h b/sys/dev/ntb/ntb_transport.h
index deb85688fe01..63cdbce96cb2 100644
--- a/sys/dev/ntb/ntb_transport.h
+++ b/sys/dev/ntb/ntb_transport.h
@@ -43,12 +43,13 @@ struct ntb_queue_handlers {
void (*event_handler)(void *data, enum ntb_link_event status);
};
-unsigned char ntb_transport_qp_num(struct ntb_transport_qp *qp);
-unsigned int ntb_transport_max_size(struct ntb_transport_qp *qp);
+int ntb_transport_queue_count(device_t dev);
struct ntb_transport_qp *
-ntb_transport_create_queue(void *data, device_t dev,
- const struct ntb_queue_handlers *handlers);
+ntb_transport_create_queue(device_t dev, int q,
+ const struct ntb_queue_handlers *handlers, void *data);
void ntb_transport_free_queue(struct ntb_transport_qp *qp);
+unsigned char ntb_transport_qp_num(struct ntb_transport_qp *qp);
+unsigned int ntb_transport_max_size(struct ntb_transport_qp *qp);
int ntb_transport_rx_enqueue(struct ntb_transport_qp *qp, void *cb, void *data,
unsigned int len);
int ntb_transport_tx_enqueue(struct ntb_transport_qp *qp, void *cb, void *data,