aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/iwlwifi/iwl-commands.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl-commands.h')
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-commands.h108
1 files changed, 104 insertions, 4 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-commands.h b/drivers/net/wireless/iwlwifi/iwl-commands.h
index 0a1d4aeb36aa..03cfb74da2bc 100644
--- a/drivers/net/wireless/iwlwifi/iwl-commands.h
+++ b/drivers/net/wireless/iwlwifi/iwl-commands.h
@@ -2477,7 +2477,7 @@ struct iwl_bt_cmd {
2477 IWLAGN_BT_VALID_BT4_TIMES | \ 2477 IWLAGN_BT_VALID_BT4_TIMES | \
2478 IWLAGN_BT_VALID_3W_LUT) 2478 IWLAGN_BT_VALID_3W_LUT)
2479 2479
2480struct iwlagn_bt_cmd { 2480struct iwl_basic_bt_cmd {
2481 u8 flags; 2481 u8 flags;
2482 u8 ledtime; /* unused */ 2482 u8 ledtime; /* unused */
2483 u8 max_kill; 2483 u8 max_kill;
@@ -2490,6 +2490,10 @@ struct iwlagn_bt_cmd {
2490 __le32 bt3_lookup_table[12]; 2490 __le32 bt3_lookup_table[12];
2491 __le16 bt4_decision_time; /* unused */ 2491 __le16 bt4_decision_time; /* unused */
2492 __le16 valid; 2492 __le16 valid;
2493};
2494
2495struct iwl6000_bt_cmd {
2496 struct iwl_basic_bt_cmd basic;
2493 u8 prio_boost; 2497 u8 prio_boost;
2494 /* 2498 /*
2495 * set IWLAGN_BT_VALID_BOOST to "1" in "valid" bitmask 2499 * set IWLAGN_BT_VALID_BOOST to "1" in "valid" bitmask
@@ -2499,6 +2503,18 @@ struct iwlagn_bt_cmd {
2499 __le16 rx_prio_boost; /* SW boost of WiFi rx priority */ 2503 __le16 rx_prio_boost; /* SW boost of WiFi rx priority */
2500}; 2504};
2501 2505
2506struct iwl2000_bt_cmd {
2507 struct iwl_basic_bt_cmd basic;
2508 __le32 prio_boost;
2509 /*
2510 * set IWLAGN_BT_VALID_BOOST to "1" in "valid" bitmask
2511 * if configure the following patterns
2512 */
2513 u8 reserved;
2514 u8 tx_prio_boost; /* SW boost of WiFi tx priority */
2515 __le16 rx_prio_boost; /* SW boost of WiFi rx priority */
2516};
2517
2502#define IWLAGN_BT_SCO_ACTIVE cpu_to_le32(BIT(0)) 2518#define IWLAGN_BT_SCO_ACTIVE cpu_to_le32(BIT(0))
2503 2519
2504struct iwlagn_bt_sco_cmd { 2520struct iwlagn_bt_sco_cmd {
@@ -4150,6 +4166,10 @@ enum iwl_bt_coex_profile_traffic_load {
4150 */ 4166 */
4151}; 4167};
4152 4168
4169#define BT_SESSION_ACTIVITY_1_UART_MSG 0x1
4170#define BT_SESSION_ACTIVITY_2_UART_MSG 0x2
4171
4172/* BT UART message - Share Part (BT -> WiFi) */
4153#define BT_UART_MSG_FRAME1MSGTYPE_POS (0) 4173#define BT_UART_MSG_FRAME1MSGTYPE_POS (0)
4154#define BT_UART_MSG_FRAME1MSGTYPE_MSK \ 4174#define BT_UART_MSG_FRAME1MSGTYPE_MSK \
4155 (0x7 << BT_UART_MSG_FRAME1MSGTYPE_POS) 4175 (0x7 << BT_UART_MSG_FRAME1MSGTYPE_POS)
@@ -4234,9 +4254,12 @@ enum iwl_bt_coex_profile_traffic_load {
4234#define BT_UART_MSG_FRAME7SNIFFACTIVITY_POS (0) 4254#define BT_UART_MSG_FRAME7SNIFFACTIVITY_POS (0)
4235#define BT_UART_MSG_FRAME7SNIFFACTIVITY_MSK \ 4255#define BT_UART_MSG_FRAME7SNIFFACTIVITY_MSK \
4236 (0x7 << BT_UART_MSG_FRAME7SNIFFACTIVITY_POS) 4256 (0x7 << BT_UART_MSG_FRAME7SNIFFACTIVITY_POS)
4237#define BT_UART_MSG_FRAME7INQUIRYPAGESRMODE_POS (3) 4257#define BT_UART_MSG_FRAME7PAGE_POS (3)
4238#define BT_UART_MSG_FRAME7INQUIRYPAGESRMODE_MSK \ 4258#define BT_UART_MSG_FRAME7PAGE_MSK \
4239 (0x3 << BT_UART_MSG_FRAME7INQUIRYPAGESRMODE_POS) 4259 (0x1 << BT_UART_MSG_FRAME7PAGE_POS)
4260#define BT_UART_MSG_FRAME7INQUIRY_POS (4)
4261#define BT_UART_MSG_FRAME7INQUIRY_MSK \
4262 (0x1 << BT_UART_MSG_FRAME7INQUIRY_POS)
4240#define BT_UART_MSG_FRAME7CONNECTABLE_POS (5) 4263#define BT_UART_MSG_FRAME7CONNECTABLE_POS (5)
4241#define BT_UART_MSG_FRAME7CONNECTABLE_MSK \ 4264#define BT_UART_MSG_FRAME7CONNECTABLE_MSK \
4242 (0x1 << BT_UART_MSG_FRAME7CONNECTABLE_POS) 4265 (0x1 << BT_UART_MSG_FRAME7CONNECTABLE_POS)
@@ -4244,6 +4267,83 @@ enum iwl_bt_coex_profile_traffic_load {
4244#define BT_UART_MSG_FRAME7RESERVED_MSK \ 4267#define BT_UART_MSG_FRAME7RESERVED_MSK \
4245 (0x3 << BT_UART_MSG_FRAME7RESERVED_POS) 4268 (0x3 << BT_UART_MSG_FRAME7RESERVED_POS)
4246 4269
4270/* BT Session Activity 2 UART message (BT -> WiFi) */
4271#define BT_UART_MSG_2_FRAME1RESERVED1_POS (5)
4272#define BT_UART_MSG_2_FRAME1RESERVED1_MSK \
4273 (0x1<<BT_UART_MSG_2_FRAME1RESERVED1_POS)
4274#define BT_UART_MSG_2_FRAME1RESERVED2_POS (6)
4275#define BT_UART_MSG_2_FRAME1RESERVED2_MSK \
4276 (0x3<<BT_UART_MSG_2_FRAME1RESERVED2_POS)
4277
4278#define BT_UART_MSG_2_FRAME2AGGTRAFFICLOAD_POS (0)
4279#define BT_UART_MSG_2_FRAME2AGGTRAFFICLOAD_MSK \
4280 (0x3F<<BT_UART_MSG_2_FRAME2AGGTRAFFICLOAD_POS)
4281#define BT_UART_MSG_2_FRAME2RESERVED_POS (6)
4282#define BT_UART_MSG_2_FRAME2RESERVED_MSK \
4283 (0x3<<BT_UART_MSG_2_FRAME2RESERVED_POS)
4284
4285#define BT_UART_MSG_2_FRAME3BRLASTTXPOWER_POS (0)
4286#define BT_UART_MSG_2_FRAME3BRLASTTXPOWER_MSK \
4287 (0xF<<BT_UART_MSG_2_FRAME3BRLASTTXPOWER_POS)
4288#define BT_UART_MSG_2_FRAME3INQPAGESRMODE_POS (4)
4289#define BT_UART_MSG_2_FRAME3INQPAGESRMODE_MSK \
4290 (0x1<<BT_UART_MSG_2_FRAME3INQPAGESRMODE_POS)
4291#define BT_UART_MSG_2_FRAME3LEMASTER_POS (5)
4292#define BT_UART_MSG_2_FRAME3LEMASTER_MSK \
4293 (0x1<<BT_UART_MSG_2_FRAME3LEMASTER_POS)
4294#define BT_UART_MSG_2_FRAME3RESERVED_POS (6)
4295#define BT_UART_MSG_2_FRAME3RESERVED_MSK \
4296 (0x3<<BT_UART_MSG_2_FRAME3RESERVED_POS)
4297
4298#define BT_UART_MSG_2_FRAME4LELASTTXPOWER_POS (0)
4299#define BT_UART_MSG_2_FRAME4LELASTTXPOWER_MSK \
4300 (0xF<<BT_UART_MSG_2_FRAME4LELASTTXPOWER_POS)
4301#define BT_UART_MSG_2_FRAME4NUMLECONN_POS (4)
4302#define BT_UART_MSG_2_FRAME4NUMLECONN_MSK \
4303 (0x3<<BT_UART_MSG_2_FRAME4NUMLECONN_POS)
4304#define BT_UART_MSG_2_FRAME4RESERVED_POS (6)
4305#define BT_UART_MSG_2_FRAME4RESERVED_MSK \
4306 (0x3<<BT_UART_MSG_2_FRAME4RESERVED_POS)
4307
4308#define BT_UART_MSG_2_FRAME5BTMINRSSI_POS (0)
4309#define BT_UART_MSG_2_FRAME5BTMINRSSI_MSK \
4310 (0xF<<BT_UART_MSG_2_FRAME5BTMINRSSI_POS)
4311#define BT_UART_MSG_2_FRAME5LESCANINITMODE_POS (4)
4312#define BT_UART_MSG_2_FRAME5LESCANINITMODE_MSK \
4313 (0x1<<BT_UART_MSG_2_FRAME5LESCANINITMODE_POS)
4314#define BT_UART_MSG_2_FRAME5LEADVERMODE_POS (5)
4315#define BT_UART_MSG_2_FRAME5LEADVERMODE_MSK \
4316 (0x1<<BT_UART_MSG_2_FRAME5LEADVERMODE_POS)
4317#define BT_UART_MSG_2_FRAME5RESERVED_POS (6)
4318#define BT_UART_MSG_2_FRAME5RESERVED_MSK \
4319 (0x3<<BT_UART_MSG_2_FRAME5RESERVED_POS)
4320
4321#define BT_UART_MSG_2_FRAME6LECONNINTERVAL_POS (0)
4322#define BT_UART_MSG_2_FRAME6LECONNINTERVAL_MSK \
4323 (0x1F<<BT_UART_MSG_2_FRAME6LECONNINTERVAL_POS)
4324#define BT_UART_MSG_2_FRAME6RFU_POS (5)
4325#define BT_UART_MSG_2_FRAME6RFU_MSK \
4326 (0x1<<BT_UART_MSG_2_FRAME6RFU_POS)
4327#define BT_UART_MSG_2_FRAME6RESERVED_POS (6)
4328#define BT_UART_MSG_2_FRAME6RESERVED_MSK \
4329 (0x3<<BT_UART_MSG_2_FRAME6RESERVED_POS)
4330
4331#define BT_UART_MSG_2_FRAME7LECONNSLAVELAT_POS (0)
4332#define BT_UART_MSG_2_FRAME7LECONNSLAVELAT_MSK \
4333 (0x7<<BT_UART_MSG_2_FRAME7LECONNSLAVELAT_POS)
4334#define BT_UART_MSG_2_FRAME7LEPROFILE1_POS (3)
4335#define BT_UART_MSG_2_FRAME7LEPROFILE1_MSK \
4336 (0x1<<BT_UART_MSG_2_FRAME7LEPROFILE1_POS)
4337#define BT_UART_MSG_2_FRAME7LEPROFILE2_POS (4)
4338#define BT_UART_MSG_2_FRAME7LEPROFILE2_MSK \
4339 (0x1<<BT_UART_MSG_2_FRAME7LEPROFILE2_POS)
4340#define BT_UART_MSG_2_FRAME7LEPROFILEOTHER_POS (5)
4341#define BT_UART_MSG_2_FRAME7LEPROFILEOTHER_MSK \
4342 (0x1<<BT_UART_MSG_2_FRAME7LEPROFILEOTHER_POS)
4343#define BT_UART_MSG_2_FRAME7RESERVED_POS (6)
4344#define BT_UART_MSG_2_FRAME7RESERVED_MSK \
4345 (0x3<<BT_UART_MSG_2_FRAME7RESERVED_POS)
4346
4247 4347
4248struct iwl_bt_uart_msg { 4348struct iwl_bt_uart_msg {
4249 u8 header; 4349 u8 header;