diff options
Diffstat (limited to 'drivers/net/wireless/wl12xx/wl12xx.h')
-rw-r--r-- | drivers/net/wireless/wl12xx/wl12xx.h | 28 |
1 files changed, 22 insertions, 6 deletions
diff --git a/drivers/net/wireless/wl12xx/wl12xx.h b/drivers/net/wireless/wl12xx/wl12xx.h index 338acc9f60b3..86be83e25ec5 100644 --- a/drivers/net/wireless/wl12xx/wl12xx.h +++ b/drivers/net/wireless/wl12xx/wl12xx.h | |||
@@ -130,10 +130,10 @@ extern u32 wl12xx_debug_level; | |||
130 | 130 | ||
131 | 131 | ||
132 | 132 | ||
133 | #define WL1271_FW_NAME "wl1271-fw-2.bin" | 133 | #define WL1271_FW_NAME "ti-connectivity/wl1271-fw-2.bin" |
134 | #define WL1271_AP_FW_NAME "wl1271-fw-ap.bin" | 134 | #define WL1271_AP_FW_NAME "ti-connectivity/wl1271-fw-ap.bin" |
135 | 135 | ||
136 | #define WL1271_NVS_NAME "wl1271-nvs.bin" | 136 | #define WL1271_NVS_NAME "ti-connectivity/wl1271-nvs.bin" |
137 | 137 | ||
138 | #define WL1271_TX_SECURITY_LO16(s) ((u16)((s) & 0xffff)) | 138 | #define WL1271_TX_SECURITY_LO16(s) ((u16)((s) & 0xffff)) |
139 | #define WL1271_TX_SECURITY_HI32(s) ((u32)(((s) >> 16) & 0xffffffff)) | 139 | #define WL1271_TX_SECURITY_HI32(s) ((u32)(((s) >> 16) & 0xffffffff)) |
@@ -317,10 +317,10 @@ enum wl12xx_flags { | |||
317 | WL1271_FLAG_JOINED, | 317 | WL1271_FLAG_JOINED, |
318 | WL1271_FLAG_GPIO_POWER, | 318 | WL1271_FLAG_GPIO_POWER, |
319 | WL1271_FLAG_TX_QUEUE_STOPPED, | 319 | WL1271_FLAG_TX_QUEUE_STOPPED, |
320 | WL1271_FLAG_TX_PENDING, | ||
320 | WL1271_FLAG_IN_ELP, | 321 | WL1271_FLAG_IN_ELP, |
321 | WL1271_FLAG_PSM, | 322 | WL1271_FLAG_PSM, |
322 | WL1271_FLAG_PSM_REQUESTED, | 323 | WL1271_FLAG_PSM_REQUESTED, |
323 | WL1271_FLAG_IRQ_PENDING, | ||
324 | WL1271_FLAG_IRQ_RUNNING, | 324 | WL1271_FLAG_IRQ_RUNNING, |
325 | WL1271_FLAG_IDLE, | 325 | WL1271_FLAG_IDLE, |
326 | WL1271_FLAG_IDLE_REQUESTED, | 326 | WL1271_FLAG_IDLE_REQUESTED, |
@@ -404,6 +404,12 @@ struct wl1271 { | |||
404 | struct sk_buff_head tx_queue[NUM_TX_QUEUES]; | 404 | struct sk_buff_head tx_queue[NUM_TX_QUEUES]; |
405 | int tx_queue_count; | 405 | int tx_queue_count; |
406 | 406 | ||
407 | /* Frames received, not handled yet by mac80211 */ | ||
408 | struct sk_buff_head deferred_rx_queue; | ||
409 | |||
410 | /* Frames sent, not returned yet to mac80211 */ | ||
411 | struct sk_buff_head deferred_tx_queue; | ||
412 | |||
407 | struct work_struct tx_work; | 413 | struct work_struct tx_work; |
408 | 414 | ||
409 | /* Pending TX frames */ | 415 | /* Pending TX frames */ |
@@ -424,8 +430,8 @@ struct wl1271 { | |||
424 | /* Intermediate buffer, used for packet aggregation */ | 430 | /* Intermediate buffer, used for packet aggregation */ |
425 | u8 *aggr_buf; | 431 | u8 *aggr_buf; |
426 | 432 | ||
427 | /* The target interrupt mask */ | 433 | /* Network stack work */ |
428 | struct work_struct irq_work; | 434 | struct work_struct netstack_work; |
429 | 435 | ||
430 | /* Hardware recovery work */ | 436 | /* Hardware recovery work */ |
431 | struct work_struct recovery_work; | 437 | struct work_struct recovery_work; |
@@ -535,6 +541,9 @@ struct wl1271 { | |||
535 | 541 | ||
536 | /* AP-mode - a bitmap of links currently in PS mode in mac80211 */ | 542 | /* AP-mode - a bitmap of links currently in PS mode in mac80211 */ |
537 | unsigned long ap_ps_map; | 543 | unsigned long ap_ps_map; |
544 | |||
545 | /* Quirks of specific hardware revisions */ | ||
546 | unsigned int quirks; | ||
538 | }; | 547 | }; |
539 | 548 | ||
540 | struct wl1271_station { | 549 | struct wl1271_station { |
@@ -553,6 +562,8 @@ int wl1271_plt_stop(struct wl1271 *wl); | |||
553 | #define WL1271_TX_QUEUE_LOW_WATERMARK 10 | 562 | #define WL1271_TX_QUEUE_LOW_WATERMARK 10 |
554 | #define WL1271_TX_QUEUE_HIGH_WATERMARK 25 | 563 | #define WL1271_TX_QUEUE_HIGH_WATERMARK 25 |
555 | 564 | ||
565 | #define WL1271_DEFERRED_QUEUE_LIMIT 64 | ||
566 | |||
556 | /* WL1271 needs a 200ms sleep after power on, and a 20ms sleep before power | 567 | /* WL1271 needs a 200ms sleep after power on, and a 20ms sleep before power |
557 | on in case is has been shut down shortly before */ | 568 | on in case is has been shut down shortly before */ |
558 | #define WL1271_PRE_POWER_ON_SLEEP 20 /* in milliseconds */ | 569 | #define WL1271_PRE_POWER_ON_SLEEP 20 /* in milliseconds */ |
@@ -562,4 +573,9 @@ int wl1271_plt_stop(struct wl1271 *wl); | |||
562 | #define HW_BG_RATES_MASK 0xffff | 573 | #define HW_BG_RATES_MASK 0xffff |
563 | #define HW_HT_RATES_OFFSET 16 | 574 | #define HW_HT_RATES_OFFSET 16 |
564 | 575 | ||
576 | /* Quirks */ | ||
577 | |||
578 | /* Each RX/TX transaction requires an end-of-transaction transfer */ | ||
579 | #define WL12XX_QUIRK_END_OF_TRANSACTION BIT(0) | ||
580 | |||
565 | #endif | 581 | #endif |