diff options
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-2000.c | 1 | ||||
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-agn-lib.c | 78 | ||||
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-commands.h | 108 | ||||
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-core.h | 1 |
4 files changed, 158 insertions, 30 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-2000.c b/drivers/net/wireless/iwlwifi/iwl-2000.c index 30483e27ce5c..335adedcee43 100644 --- a/drivers/net/wireless/iwlwifi/iwl-2000.c +++ b/drivers/net/wireless/iwlwifi/iwl-2000.c | |||
@@ -418,6 +418,7 @@ static struct iwl_bt_params iwl2030_bt_params = { | |||
418 | .bt_init_traffic_load = IWL_BT_COEX_TRAFFIC_LOAD_NONE, | 418 | .bt_init_traffic_load = IWL_BT_COEX_TRAFFIC_LOAD_NONE, |
419 | .bt_prio_boost = IWLAGN_BT_PRIO_BOOST_DEFAULT, | 419 | .bt_prio_boost = IWLAGN_BT_PRIO_BOOST_DEFAULT, |
420 | .bt_sco_disable = true, | 420 | .bt_sco_disable = true, |
421 | .bt_session_2 = true, | ||
421 | }; | 422 | }; |
422 | 423 | ||
423 | #define IWL_DEVICE_2000 \ | 424 | #define IWL_DEVICE_2000 \ |
diff --git a/drivers/net/wireless/iwlwifi/iwl-agn-lib.c b/drivers/net/wireless/iwlwifi/iwl-agn-lib.c index 0d0572ca7e77..8e192072df15 100644 --- a/drivers/net/wireless/iwlwifi/iwl-agn-lib.c +++ b/drivers/net/wireless/iwlwifi/iwl-agn-lib.c | |||
@@ -1804,26 +1804,39 @@ static const __le32 iwlagn_concurrent_lookup[12] = { | |||
1804 | 1804 | ||
1805 | void iwlagn_send_advance_bt_config(struct iwl_priv *priv) | 1805 | void iwlagn_send_advance_bt_config(struct iwl_priv *priv) |
1806 | { | 1806 | { |
1807 | struct iwlagn_bt_cmd bt_cmd = { | 1807 | struct iwl_basic_bt_cmd basic = { |
1808 | .max_kill = IWLAGN_BT_MAX_KILL_DEFAULT, | 1808 | .max_kill = IWLAGN_BT_MAX_KILL_DEFAULT, |
1809 | .bt3_timer_t7_value = IWLAGN_BT3_T7_DEFAULT, | 1809 | .bt3_timer_t7_value = IWLAGN_BT3_T7_DEFAULT, |
1810 | .bt3_prio_sample_time = IWLAGN_BT3_PRIO_SAMPLE_DEFAULT, | 1810 | .bt3_prio_sample_time = IWLAGN_BT3_PRIO_SAMPLE_DEFAULT, |
1811 | .bt3_timer_t2_value = IWLAGN_BT3_T2_DEFAULT, | 1811 | .bt3_timer_t2_value = IWLAGN_BT3_T2_DEFAULT, |
1812 | }; | 1812 | }; |
1813 | struct iwl6000_bt_cmd bt_cmd_6000; | ||
1814 | struct iwl2000_bt_cmd bt_cmd_2000; | ||
1815 | int ret; | ||
1813 | 1816 | ||
1814 | BUILD_BUG_ON(sizeof(iwlagn_def_3w_lookup) != | 1817 | BUILD_BUG_ON(sizeof(iwlagn_def_3w_lookup) != |
1815 | sizeof(bt_cmd.bt3_lookup_table)); | 1818 | sizeof(basic.bt3_lookup_table)); |
1816 | 1819 | ||
1817 | if (priv->cfg->bt_params) | 1820 | if (priv->cfg->bt_params) { |
1818 | bt_cmd.prio_boost = priv->cfg->bt_params->bt_prio_boost; | 1821 | if (priv->cfg->bt_params->bt_session_2) { |
1819 | else | 1822 | bt_cmd_2000.prio_boost = cpu_to_le32( |
1820 | bt_cmd.prio_boost = 0; | 1823 | priv->cfg->bt_params->bt_prio_boost); |
1821 | bt_cmd.kill_ack_mask = priv->kill_ack_mask; | 1824 | bt_cmd_2000.tx_prio_boost = 0; |
1822 | bt_cmd.kill_cts_mask = priv->kill_cts_mask; | 1825 | bt_cmd_2000.rx_prio_boost = 0; |
1826 | } else { | ||
1827 | bt_cmd_6000.prio_boost = | ||
1828 | priv->cfg->bt_params->bt_prio_boost; | ||
1829 | bt_cmd_6000.tx_prio_boost = 0; | ||
1830 | bt_cmd_6000.rx_prio_boost = 0; | ||
1831 | } | ||
1832 | } else { | ||
1833 | IWL_ERR(priv, "failed to construct BT Coex Config\n"); | ||
1834 | return; | ||
1835 | } | ||
1823 | 1836 | ||
1824 | bt_cmd.valid = priv->bt_valid; | 1837 | basic.kill_ack_mask = priv->kill_ack_mask; |
1825 | bt_cmd.tx_prio_boost = 0; | 1838 | basic.kill_cts_mask = priv->kill_cts_mask; |
1826 | bt_cmd.rx_prio_boost = 0; | 1839 | basic.valid = priv->bt_valid; |
1827 | 1840 | ||
1828 | /* | 1841 | /* |
1829 | * Configure BT coex mode to "no coexistence" when the | 1842 | * Configure BT coex mode to "no coexistence" when the |
@@ -1832,32 +1845,43 @@ void iwlagn_send_advance_bt_config(struct iwl_priv *priv) | |||
1832 | * IBSS mode (no proper uCode support for coex then). | 1845 | * IBSS mode (no proper uCode support for coex then). |
1833 | */ | 1846 | */ |
1834 | if (!bt_coex_active || priv->iw_mode == NL80211_IFTYPE_ADHOC) { | 1847 | if (!bt_coex_active || priv->iw_mode == NL80211_IFTYPE_ADHOC) { |
1835 | bt_cmd.flags = IWLAGN_BT_FLAG_COEX_MODE_DISABLED; | 1848 | basic.flags = IWLAGN_BT_FLAG_COEX_MODE_DISABLED; |
1836 | } else { | 1849 | } else { |
1837 | bt_cmd.flags = IWLAGN_BT_FLAG_COEX_MODE_3W << | 1850 | basic.flags = IWLAGN_BT_FLAG_COEX_MODE_3W << |
1838 | IWLAGN_BT_FLAG_COEX_MODE_SHIFT; | 1851 | IWLAGN_BT_FLAG_COEX_MODE_SHIFT; |
1839 | if (priv->cfg->bt_params && | 1852 | if (priv->cfg->bt_params && |
1840 | priv->cfg->bt_params->bt_sco_disable) | 1853 | priv->cfg->bt_params->bt_sco_disable) |
1841 | bt_cmd.flags |= IWLAGN_BT_FLAG_SYNC_2_BT_DISABLE; | 1854 | basic.flags |= IWLAGN_BT_FLAG_SYNC_2_BT_DISABLE; |
1842 | 1855 | ||
1843 | if (priv->bt_ch_announce) | 1856 | if (priv->bt_ch_announce) |
1844 | bt_cmd.flags |= IWLAGN_BT_FLAG_CHANNEL_INHIBITION; | 1857 | basic.flags |= IWLAGN_BT_FLAG_CHANNEL_INHIBITION; |
1845 | IWL_DEBUG_INFO(priv, "BT coex flag: 0X%x\n", bt_cmd.flags); | 1858 | IWL_DEBUG_INFO(priv, "BT coex flag: 0X%x\n", basic.flags); |
1846 | } | 1859 | } |
1847 | priv->bt_enable_flag = bt_cmd.flags; | 1860 | priv->bt_enable_flag = basic.flags; |
1848 | if (priv->bt_full_concurrent) | 1861 | if (priv->bt_full_concurrent) |
1849 | memcpy(bt_cmd.bt3_lookup_table, iwlagn_concurrent_lookup, | 1862 | memcpy(basic.bt3_lookup_table, iwlagn_concurrent_lookup, |
1850 | sizeof(iwlagn_concurrent_lookup)); | 1863 | sizeof(iwlagn_concurrent_lookup)); |
1851 | else | 1864 | else |
1852 | memcpy(bt_cmd.bt3_lookup_table, iwlagn_def_3w_lookup, | 1865 | memcpy(basic.bt3_lookup_table, iwlagn_def_3w_lookup, |
1853 | sizeof(iwlagn_def_3w_lookup)); | 1866 | sizeof(iwlagn_def_3w_lookup)); |
1854 | 1867 | ||
1855 | IWL_DEBUG_INFO(priv, "BT coex %s in %s mode\n", | 1868 | IWL_DEBUG_INFO(priv, "BT coex %s in %s mode\n", |
1856 | bt_cmd.flags ? "active" : "disabled", | 1869 | basic.flags ? "active" : "disabled", |
1857 | priv->bt_full_concurrent ? | 1870 | priv->bt_full_concurrent ? |
1858 | "full concurrency" : "3-wire"); | 1871 | "full concurrency" : "3-wire"); |
1859 | 1872 | ||
1860 | if (iwl_send_cmd_pdu(priv, REPLY_BT_CONFIG, sizeof(bt_cmd), &bt_cmd)) | 1873 | if (priv->cfg->bt_params->bt_session_2) { |
1874 | memcpy(&bt_cmd_2000.basic, &basic, | ||
1875 | sizeof(basic)); | ||
1876 | ret = iwl_send_cmd_pdu(priv, REPLY_BT_CONFIG, | ||
1877 | sizeof(bt_cmd_2000), &bt_cmd_2000); | ||
1878 | } else { | ||
1879 | memcpy(&bt_cmd_6000.basic, &basic, | ||
1880 | sizeof(basic)); | ||
1881 | ret = iwl_send_cmd_pdu(priv, REPLY_BT_CONFIG, | ||
1882 | sizeof(bt_cmd_6000), &bt_cmd_6000); | ||
1883 | } | ||
1884 | if (ret) | ||
1861 | IWL_ERR(priv, "failed to send BT Coex Config\n"); | 1885 | IWL_ERR(priv, "failed to send BT Coex Config\n"); |
1862 | 1886 | ||
1863 | } | 1887 | } |
@@ -1984,12 +2008,14 @@ static void iwlagn_print_uartmsg(struct iwl_priv *priv, | |||
1984 | (BT_UART_MSG_FRAME6DISCOVERABLE_MSK & uart_msg->frame6) >> | 2008 | (BT_UART_MSG_FRAME6DISCOVERABLE_MSK & uart_msg->frame6) >> |
1985 | BT_UART_MSG_FRAME6DISCOVERABLE_POS); | 2009 | BT_UART_MSG_FRAME6DISCOVERABLE_POS); |
1986 | 2010 | ||
1987 | IWL_DEBUG_NOTIF(priv, "Sniff Activity = 0x%X, Inquiry/Page SR Mode = " | 2011 | IWL_DEBUG_NOTIF(priv, "Sniff Activity = 0x%X, Page = " |
1988 | "0x%X, Connectable = 0x%X", | 2012 | "0x%X, Inquiry = 0x%X, Connectable = 0x%X", |
1989 | (BT_UART_MSG_FRAME7SNIFFACTIVITY_MSK & uart_msg->frame7) >> | 2013 | (BT_UART_MSG_FRAME7SNIFFACTIVITY_MSK & uart_msg->frame7) >> |
1990 | BT_UART_MSG_FRAME7SNIFFACTIVITY_POS, | 2014 | BT_UART_MSG_FRAME7SNIFFACTIVITY_POS, |
1991 | (BT_UART_MSG_FRAME7INQUIRYPAGESRMODE_MSK & uart_msg->frame7) >> | 2015 | (BT_UART_MSG_FRAME7PAGE_MSK & uart_msg->frame7) >> |
1992 | BT_UART_MSG_FRAME7INQUIRYPAGESRMODE_POS, | 2016 | BT_UART_MSG_FRAME7PAGE_POS, |
2017 | (BT_UART_MSG_FRAME7INQUIRY_MSK & uart_msg->frame7) >> | ||
2018 | BT_UART_MSG_FRAME7INQUIRY_POS, | ||
1993 | (BT_UART_MSG_FRAME7CONNECTABLE_MSK & uart_msg->frame7) >> | 2019 | (BT_UART_MSG_FRAME7CONNECTABLE_MSK & uart_msg->frame7) >> |
1994 | BT_UART_MSG_FRAME7CONNECTABLE_POS); | 2020 | BT_UART_MSG_FRAME7CONNECTABLE_POS); |
1995 | } | 2021 | } |
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 | ||
2480 | struct iwlagn_bt_cmd { | 2480 | struct 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 | |||
2495 | struct 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 | ||
2506 | struct 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 | ||
2504 | struct iwlagn_bt_sco_cmd { | 2520 | struct 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 | ||
4248 | struct iwl_bt_uart_msg { | 4348 | struct iwl_bt_uart_msg { |
4249 | u8 header; | 4349 | u8 header; |
diff --git a/drivers/net/wireless/iwlwifi/iwl-core.h b/drivers/net/wireless/iwlwifi/iwl-core.h index e0ec17079dc0..909b42d5d9c0 100644 --- a/drivers/net/wireless/iwlwifi/iwl-core.h +++ b/drivers/net/wireless/iwlwifi/iwl-core.h | |||
@@ -339,6 +339,7 @@ struct iwl_bt_params { | |||
339 | u8 ampdu_factor; | 339 | u8 ampdu_factor; |
340 | u8 ampdu_density; | 340 | u8 ampdu_density; |
341 | bool bt_sco_disable; | 341 | bool bt_sco_disable; |
342 | bool bt_session_2; | ||
342 | }; | 343 | }; |
343 | /* | 344 | /* |
344 | * @use_rts_for_aggregation: use rts/cts protection for HT traffic | 345 | * @use_rts_for_aggregation: use rts/cts protection for HT traffic |