summaryrefslogtreecommitdiff
path: root/sys/dev/pci/if_iwivar.h
diff options
context:
space:
mode:
authorPedro Martelletto <pedro@cvs.openbsd.org>2006-03-31 17:18:38 +0000
committerPedro Martelletto <pedro@cvs.openbsd.org>2006-03-31 17:18:38 +0000
commit34d7f43fc5c799e366d7e64254ce09b7109e90af (patch)
tree9ef13d2a8da428970b44a602e70abba91b38cb4a /sys/dev/pci/if_iwivar.h
parentcacbfa4f8310f60eecf9faf915b52dd499a3e0d8 (diff)
Backout, causes panics
Diffstat (limited to 'sys/dev/pci/if_iwivar.h')
-rw-r--r--sys/dev/pci/if_iwivar.h69
1 files changed, 26 insertions, 43 deletions
diff --git a/sys/dev/pci/if_iwivar.h b/sys/dev/pci/if_iwivar.h
index 3218973f381..ed0eb4b8a79 100644
--- a/sys/dev/pci/if_iwivar.h
+++ b/sys/dev/pci/if_iwivar.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: if_iwivar.h,v 1.14 2006/03/27 20:46:35 damien Exp $ */
+/* $OpenBSD: if_iwivar.h,v 1.15 2006/03/31 17:18:37 pedro Exp $ */
/*-
* Copyright (c) 2004-2006
@@ -55,45 +55,6 @@ struct iwi_tx_radiotap_header {
((1 << IEEE80211_RADIOTAP_FLAGS) | \
(1 << IEEE80211_RADIOTAP_CHANNEL))
-
-struct iwi_cmd_ring {
- bus_dmamap_t map;
- bus_dma_segment_t seg;
- struct iwi_cmd_desc desc[IWI_CMD_RING_COUNT];
- int queued;
- int cur;
- int next;
-};
-
-struct iwi_tx_data {
- bus_dmamap_t map;
- struct mbuf *m;
- struct ieee80211_node *ni;
-};
-
-struct iwi_tx_ring {
- bus_dmamap_t map;
- bus_dma_segment_t seg;
- bus_addr_t csr_ridx;
- bus_addr_t csr_widx;
- struct iwi_tx_desc *desc;
- struct iwi_tx_data data[IWI_TX_RING_COUNT];
- int queued;
- int cur;
- int next;
-};
-
-struct iwi_rx_data {
- bus_dmamap_t map;
- struct mbuf *m;
- uint32_t reg;
-};
-
-struct iwi_rx_ring {
- struct iwi_rx_data data[IWI_RX_RING_COUNT];
- int cur;
-};
-
struct iwi_softc {
struct device sc_dev;
@@ -106,9 +67,31 @@ struct iwi_softc {
bus_dma_tag_t sc_dmat;
- struct iwi_cmd_ring cmdq;
- struct iwi_tx_ring txq[4];
- struct iwi_rx_ring rxq;
+ struct iwi_tx_desc *tx_desc;
+ bus_dmamap_t tx_ring_map;
+ bus_dma_segment_t tx_ring_seg;
+
+ struct iwi_tx_buf {
+ bus_dmamap_t map;
+ struct mbuf *m;
+ struct ieee80211_node *ni;
+ } tx_buf[IWI_TX_RING_SIZE];
+
+ int tx_cur;
+ int tx_old;
+ int tx_queued;
+
+ struct iwi_cmd_desc *cmd_desc;
+ bus_dmamap_t cmd_ring_map;
+ bus_dma_segment_t cmd_ring_seg;
+ int cmd_cur;
+
+ struct iwi_rx_buf {
+ bus_dmamap_t map;
+ struct mbuf *m;
+ } rx_buf[IWI_RX_RING_SIZE];
+
+ int rx_cur;
#define IWI_MAX_NODE 32
uint8_t sta[IWI_MAX_NODE][IEEE80211_ADDR_LEN];