diff options
author | Johannes Berg <johannes.berg@intel.com> | 2010-08-23 10:56:55 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2010-08-25 14:33:21 -0400 |
commit | 670245ed4515cbc5e39e39d44965cb7add2c8aa9 (patch) | |
tree | 2cea9f64dba71f0aed837812eefc26e96425c05f /drivers/net/wireless/iwlwifi/iwl-commands.h | |
parent | 0288d237fff4cbe54879e3c3433ae5782874f98c (diff) |
iwlagn: implement advance BT config command
6000g2b hardware implements advance bluetooth coexist command,
implement base on the new API command strucutre.
Also increment the API 5 to support the advance BT/WIfi coex.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl-commands.h')
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-commands.h | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-commands.h b/drivers/net/wireless/iwlwifi/iwl-commands.h index 78086ad6b72e..69fc7745edaa 100644 --- a/drivers/net/wireless/iwlwifi/iwl-commands.h +++ b/drivers/net/wireless/iwlwifi/iwl-commands.h | |||
@@ -2394,6 +2394,68 @@ struct iwl_bt_cmd { | |||
2394 | __le32 kill_cts_mask; | 2394 | __le32 kill_cts_mask; |
2395 | } __packed; | 2395 | } __packed; |
2396 | 2396 | ||
2397 | #define IWL6000G2B_BT_FLAG_CHANNEL_INHIBITION BIT(0) | ||
2398 | |||
2399 | #define IWL6000G2B_BT_FLAG_COEX_MODE_MASK (BIT(3)|BIT(4)|BIT(5)) | ||
2400 | #define IWL6000G2B_BT_FLAG_COEX_MODE_SHIFT 3 | ||
2401 | #define IWL6000G2B_BT_FLAG_COEX_MODE_DISABLED 0 | ||
2402 | #define IWL6000G2B_BT_FLAG_COEX_MODE_LEGACY_2W 1 | ||
2403 | #define IWL6000G2B_BT_FLAG_COEX_MODE_3W 2 | ||
2404 | #define IWL6000G2B_BT_FLAG_COEX_MODE_4W 3 | ||
2405 | |||
2406 | #define IWL6000G2B_BT_FLAG_UCODE_DEFAULT BIT(6) | ||
2407 | #define IWL6000G2B_BT_FLAG_NOCOEX_NOTIF BIT(7) | ||
2408 | |||
2409 | #define IWL6000G2B_BT_PRIO_BOOST_MAX 0xFF | ||
2410 | #define IWL6000G2B_BT_PRIO_BOOST_MIN 0x00 | ||
2411 | #define IWL6000G2B_BT_PRIO_BOOST_DEFAULT 0x00 | ||
2412 | |||
2413 | #define IWL6000G2B_BT_MAX_KILL_DEFAULT 5 | ||
2414 | |||
2415 | #define IWL6000G2B_BT3_T7_DEFAULT 1 | ||
2416 | |||
2417 | #define IWL6000G2B_BT_KILL_ACK_MASK_DEFAULT cpu_to_le32(0xffffffff) | ||
2418 | #define IWL6000G2B_BT_KILL_CTS_MASK_DEFAULT cpu_to_le32(0xffffffff) | ||
2419 | |||
2420 | #define IWL6000G2B_BT3_PRIO_SAMPLE_DEFAULT 2 | ||
2421 | |||
2422 | #define IWL6000G2B_BT3_T2_DEFAULT 0xc | ||
2423 | |||
2424 | #define IWL6000G2B_BT_VALID_ENABLE_FLAGS cpu_to_le16(BIT(0)) | ||
2425 | #define IWL6000G2B_BT_VALID_BOOST cpu_to_le16(BIT(1)) | ||
2426 | #define IWL6000G2B_BT_VALID_MAX_KILL cpu_to_le16(BIT(2)) | ||
2427 | #define IWL6000G2B_BT_VALID_3W_TIMERS cpu_to_le16(BIT(3)) | ||
2428 | #define IWL6000G2B_BT_VALID_KILL_ACK_MASK cpu_to_le16(BIT(4)) | ||
2429 | #define IWL6000G2B_BT_VALID_KILL_CTS_MASK cpu_to_le16(BIT(5)) | ||
2430 | #define IWL6000G2B_BT_VALID_BT4_TIMES cpu_to_le16(BIT(6)) | ||
2431 | #define IWL6000G2B_BT_VALID_3W_LUT cpu_to_le16(BIT(7)) | ||
2432 | |||
2433 | #define IWL6000G2B_BT_ALL_VALID_MSK (IWL6000G2B_BT_VALID_ENABLE_FLAGS | \ | ||
2434 | IWL6000G2B_BT_VALID_BOOST | \ | ||
2435 | IWL6000G2B_BT_VALID_MAX_KILL | \ | ||
2436 | IWL6000G2B_BT_VALID_3W_TIMERS | \ | ||
2437 | IWL6000G2B_BT_VALID_KILL_ACK_MASK | \ | ||
2438 | IWL6000G2B_BT_VALID_KILL_CTS_MASK | \ | ||
2439 | IWL6000G2B_BT_VALID_BT4_TIMES | \ | ||
2440 | IWL6000G2B_BT_VALID_3W_LUT) | ||
2441 | |||
2442 | struct iwl6000g2b_bt_cmd { | ||
2443 | u8 flags; | ||
2444 | u8 ledtime; /* unused */ | ||
2445 | u8 max_kill; | ||
2446 | u8 bt3_timer_t7_value; | ||
2447 | __le32 kill_ack_mask; | ||
2448 | __le32 kill_cts_mask; | ||
2449 | u8 bt3_prio_sample_time; | ||
2450 | u8 bt3_timer_t2_value; | ||
2451 | __le16 bt4_reaction_time; /* unused */ | ||
2452 | __le32 bt3_lookup_table[12]; | ||
2453 | __le16 bt4_decision_time; /* unused */ | ||
2454 | __le16 valid; | ||
2455 | u8 prio_boost; | ||
2456 | u8 reserved[3]; | ||
2457 | }; | ||
2458 | |||
2397 | /****************************************************************************** | 2459 | /****************************************************************************** |
2398 | * (6) | 2460 | * (6) |
2399 | * Spectrum Management (802.11h) Commands, Responses, Notifications: | 2461 | * Spectrum Management (802.11h) Commands, Responses, Notifications: |