summaryrefslogtreecommitdiffstats
path: root/sys/dev/cxgbe/adapter.h
diff options
context:
space:
mode:
authornp <np@FreeBSD.org>2011-03-05 03:06:38 +0000
committernp <np@FreeBSD.org>2011-03-05 03:06:38 +0000
commitd5be9ba7135a42f20129b0574b3d7afa729d2756 (patch)
tree2db2852f4af4e1901052310e0fe11b618afa89ce /sys/dev/cxgbe/adapter.h
parent51b104cc2a19195052ffeb6c7892270addf84331 (diff)
downloadFreeBSD-src-d5be9ba7135a42f20129b0574b3d7afa729d2756.zip
FreeBSD-src-d5be9ba7135a42f20129b0574b3d7afa729d2756.tar.gz
Resume tx immediately in response to an SGE egress update from the hardware.
MFC after: 1 week
Diffstat (limited to 'sys/dev/cxgbe/adapter.h')
-rw-r--r--sys/dev/cxgbe/adapter.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/sys/dev/cxgbe/adapter.h b/sys/dev/cxgbe/adapter.h
index da6e92e..1ea33b2 100644
--- a/sys/dev/cxgbe/adapter.h
+++ b/sys/dev/cxgbe/adapter.h
@@ -177,6 +177,7 @@ struct port_info {
struct link_config link_cfg;
struct port_stats stats;
+ struct taskqueue *tq;
struct callout tick;
struct sysctl_ctx_list ctx; /* lives from ifconfig up to down */
struct sysctl_oid *oid_rxq;
@@ -310,6 +311,9 @@ struct sge_fl {
struct sge_txq {
struct sge_eq eq; /* MUST be first */
struct mbuf *m; /* held up due to temporary resource shortage */
+ struct task resume_tx;
+
+ struct port_info *port; /* the port this txq belongs to */
/* stats for common events first */
@@ -545,13 +549,15 @@ static inline bool is_10G_port(const struct port_info *pi)
return ((pi->link_cfg.supported & FW_PORT_CAP_SPEED_10G) != 0);
}
+/* t4_main.c */
+void cxgbe_txq_start(void *, int);
int t4_os_find_pci_capability(struct adapter *, int);
int t4_os_pci_save_state(struct adapter *);
int t4_os_pci_restore_state(struct adapter *);
-
void t4_os_portmod_changed(const struct adapter *, int);
void t4_os_link_changed(struct adapter *, int, int);
+/* t4_sge.c */
void t4_sge_init(struct adapter *);
int t4_create_dma_tag(struct adapter *);
int t4_destroy_dma_tag(struct adapter *);
OpenPOWER on IntegriCloud