Loading MAINTAINERS +10 −2 Original line number Original line Diff line number Diff line Loading @@ -1406,7 +1406,7 @@ ATHEROS ATH6KL WIRELESS DRIVER M: Kalle Valo <kvalo@qca.qualcomm.com> M: Kalle Valo <kvalo@qca.qualcomm.com> L: linux-wireless@vger.kernel.org L: linux-wireless@vger.kernel.org W: http://wireless.kernel.org/en/users/Drivers/ath6kl W: http://wireless.kernel.org/en/users/Drivers/ath6kl T: git git://git.kernel.org/pub/scm/linux/kernel/git/kvalo/ath6kl.git T: git git://github.com/kvalo/ath.git S: Supported S: Supported F: drivers/net/wireless/ath/ath6kl/ F: drivers/net/wireless/ath/ath6kl/ Loading Loading @@ -6726,6 +6726,14 @@ T: git git://linuxtv.org/anttip/media_tree.git S: Maintained S: Maintained F: drivers/media/tuners/qt1010* F: drivers/media/tuners/qt1010* QUALCOMM ATHEROS ATH10K WIRELESS DRIVER M: Kalle Valo <kvalo@qca.qualcomm.com> L: ath10k@lists.infradead.org W: http://wireless.kernel.org/en/users/Drivers/ath10k T: git git://github.com/kvalo/ath.git S: Supported F: drivers/net/wireless/ath/ath10k/ QUALCOMM HEXAGON ARCHITECTURE QUALCOMM HEXAGON ARCHITECTURE M: Richard Kuo <rkuo@codeaurora.org> M: Richard Kuo <rkuo@codeaurora.org> L: linux-hexagon@vger.kernel.org L: linux-hexagon@vger.kernel.org Loading Loading @@ -8270,7 +8278,7 @@ S: Maintained F: sound/soc/codecs/twl4030* F: sound/soc/codecs/twl4030* TI WILINK WIRELESS DRIVERS TI WILINK WIRELESS DRIVERS M: Luciano Coelho <coelho@ti.com> M: Luciano Coelho <luca@coelho.fi> L: linux-wireless@vger.kernel.org L: linux-wireless@vger.kernel.org W: http://wireless.kernel.org/en/users/Drivers/wl12xx W: http://wireless.kernel.org/en/users/Drivers/wl12xx W: http://wireless.kernel.org/en/users/Drivers/wl1251 W: http://wireless.kernel.org/en/users/Drivers/wl1251 Loading drivers/bluetooth/ath3k.c +37 −9 Original line number Original line Diff line number Diff line Loading @@ -91,6 +91,10 @@ static struct usb_device_id ath3k_table[] = { { USB_DEVICE(0x0489, 0xe04e) }, { USB_DEVICE(0x0489, 0xe04e) }, { USB_DEVICE(0x0489, 0xe056) }, { USB_DEVICE(0x0489, 0xe056) }, { USB_DEVICE(0x0489, 0xe04d) }, { USB_DEVICE(0x0489, 0xe04d) }, { USB_DEVICE(0x04c5, 0x1330) }, { USB_DEVICE(0x13d3, 0x3402) }, { USB_DEVICE(0x0cf3, 0x3121) }, { USB_DEVICE(0x0cf3, 0xe003) }, /* Atheros AR5BBU12 with sflash firmware */ /* Atheros AR5BBU12 with sflash firmware */ { USB_DEVICE(0x0489, 0xE02C) }, { USB_DEVICE(0x0489, 0xE02C) }, Loading Loading @@ -128,6 +132,10 @@ static struct usb_device_id ath3k_blist_tbl[] = { { USB_DEVICE(0x0489, 0xe04e), .driver_info = BTUSB_ATH3012 }, { USB_DEVICE(0x0489, 0xe04e), .driver_info = BTUSB_ATH3012 }, { USB_DEVICE(0x0489, 0xe056), .driver_info = BTUSB_ATH3012 }, { USB_DEVICE(0x0489, 0xe056), .driver_info = BTUSB_ATH3012 }, { USB_DEVICE(0x0489, 0xe04d), .driver_info = BTUSB_ATH3012 }, { USB_DEVICE(0x0489, 0xe04d), .driver_info = BTUSB_ATH3012 }, { USB_DEVICE(0x04c5, 0x1330), .driver_info = BTUSB_ATH3012 }, { USB_DEVICE(0x13d3, 0x3402), .driver_info = BTUSB_ATH3012 }, { USB_DEVICE(0x0cf3, 0x3121), .driver_info = BTUSB_ATH3012 }, { USB_DEVICE(0x0cf3, 0xe003), .driver_info = BTUSB_ATH3012 }, /* Atheros AR5BBU22 with sflash firmware */ /* Atheros AR5BBU22 with sflash firmware */ { USB_DEVICE(0x0489, 0xE03C), .driver_info = BTUSB_ATH3012 }, { USB_DEVICE(0x0489, 0xE03C), .driver_info = BTUSB_ATH3012 }, Loading Loading @@ -193,24 +201,44 @@ static int ath3k_load_firmware(struct usb_device *udev, static int ath3k_get_state(struct usb_device *udev, unsigned char *state) static int ath3k_get_state(struct usb_device *udev, unsigned char *state) { { int pipe = 0; int ret, pipe = 0; char *buf; buf = kmalloc(sizeof(*buf), GFP_KERNEL); if (!buf) return -ENOMEM; pipe = usb_rcvctrlpipe(udev, 0); pipe = usb_rcvctrlpipe(udev, 0); return usb_control_msg(udev, pipe, ATH3K_GETSTATE, ret = usb_control_msg(udev, pipe, ATH3K_GETSTATE, USB_TYPE_VENDOR | USB_DIR_IN, 0, 0, USB_TYPE_VENDOR | USB_DIR_IN, 0, 0, state, 0x01, USB_CTRL_SET_TIMEOUT); buf, sizeof(*buf), USB_CTRL_SET_TIMEOUT); *state = *buf; kfree(buf); return ret; } } static int ath3k_get_version(struct usb_device *udev, static int ath3k_get_version(struct usb_device *udev, struct ath3k_version *version) struct ath3k_version *version) { { int pipe = 0; int ret, pipe = 0; struct ath3k_version *buf; const int size = sizeof(*buf); buf = kmalloc(size, GFP_KERNEL); if (!buf) return -ENOMEM; pipe = usb_rcvctrlpipe(udev, 0); pipe = usb_rcvctrlpipe(udev, 0); return usb_control_msg(udev, pipe, ATH3K_GETVERSION, ret = usb_control_msg(udev, pipe, ATH3K_GETVERSION, USB_TYPE_VENDOR | USB_DIR_IN, 0, 0, version, USB_TYPE_VENDOR | USB_DIR_IN, 0, 0, sizeof(struct ath3k_version), buf, size, USB_CTRL_SET_TIMEOUT); USB_CTRL_SET_TIMEOUT); memcpy(version, buf, size); kfree(buf); return ret; } } static int ath3k_load_fwfile(struct usb_device *udev, static int ath3k_load_fwfile(struct usb_device *udev, Loading drivers/bluetooth/btusb.c +11 −7 Original line number Original line Diff line number Diff line Loading @@ -154,6 +154,10 @@ static struct usb_device_id blacklist_table[] = { { USB_DEVICE(0x0489, 0xe04e), .driver_info = BTUSB_ATH3012 }, { USB_DEVICE(0x0489, 0xe04e), .driver_info = BTUSB_ATH3012 }, { USB_DEVICE(0x0489, 0xe056), .driver_info = BTUSB_ATH3012 }, { USB_DEVICE(0x0489, 0xe056), .driver_info = BTUSB_ATH3012 }, { USB_DEVICE(0x0489, 0xe04d), .driver_info = BTUSB_ATH3012 }, { USB_DEVICE(0x0489, 0xe04d), .driver_info = BTUSB_ATH3012 }, { USB_DEVICE(0x04c5, 0x1330), .driver_info = BTUSB_ATH3012 }, { USB_DEVICE(0x13d3, 0x3402), .driver_info = BTUSB_ATH3012 }, { USB_DEVICE(0x0cf3, 0x3121), .driver_info = BTUSB_ATH3012 }, { USB_DEVICE(0x0cf3, 0xe003), .driver_info = BTUSB_ATH3012 }, /* Atheros AR5BBU12 with sflash firmware */ /* Atheros AR5BBU12 with sflash firmware */ { USB_DEVICE(0x0489, 0xe02c), .driver_info = BTUSB_IGNORE }, { USB_DEVICE(0x0489, 0xe02c), .driver_info = BTUSB_IGNORE }, Loading Loading @@ -1095,7 +1099,7 @@ static int btusb_setup_intel_patching(struct hci_dev *hdev, if (IS_ERR(skb)) { if (IS_ERR(skb)) { BT_ERR("%s sending Intel patch command (0x%4.4x) failed (%ld)", BT_ERR("%s sending Intel patch command (0x%4.4x) failed (%ld)", hdev->name, cmd->opcode, PTR_ERR(skb)); hdev->name, cmd->opcode, PTR_ERR(skb)); return -PTR_ERR(skb); return PTR_ERR(skb); } } /* It ensures that the returned event matches the event data read from /* It ensures that the returned event matches the event data read from Loading Loading @@ -1147,7 +1151,7 @@ static int btusb_setup_intel(struct hci_dev *hdev) if (IS_ERR(skb)) { if (IS_ERR(skb)) { BT_ERR("%s sending initial HCI reset command failed (%ld)", BT_ERR("%s sending initial HCI reset command failed (%ld)", hdev->name, PTR_ERR(skb)); hdev->name, PTR_ERR(skb)); return -PTR_ERR(skb); return PTR_ERR(skb); } } kfree_skb(skb); kfree_skb(skb); Loading @@ -1161,7 +1165,7 @@ static int btusb_setup_intel(struct hci_dev *hdev) if (IS_ERR(skb)) { if (IS_ERR(skb)) { BT_ERR("%s reading Intel fw version command failed (%ld)", BT_ERR("%s reading Intel fw version command failed (%ld)", hdev->name, PTR_ERR(skb)); hdev->name, PTR_ERR(skb)); return -PTR_ERR(skb); return PTR_ERR(skb); } } if (skb->len != sizeof(*ver)) { if (skb->len != sizeof(*ver)) { Loading Loading @@ -1219,7 +1223,7 @@ static int btusb_setup_intel(struct hci_dev *hdev) BT_ERR("%s entering Intel manufacturer mode failed (%ld)", BT_ERR("%s entering Intel manufacturer mode failed (%ld)", hdev->name, PTR_ERR(skb)); hdev->name, PTR_ERR(skb)); release_firmware(fw); release_firmware(fw); return -PTR_ERR(skb); return PTR_ERR(skb); } } if (skb->data[0]) { if (skb->data[0]) { Loading Loading @@ -1276,7 +1280,7 @@ static int btusb_setup_intel(struct hci_dev *hdev) if (IS_ERR(skb)) { if (IS_ERR(skb)) { BT_ERR("%s exiting Intel manufacturer mode failed (%ld)", BT_ERR("%s exiting Intel manufacturer mode failed (%ld)", hdev->name, PTR_ERR(skb)); hdev->name, PTR_ERR(skb)); return -PTR_ERR(skb); return PTR_ERR(skb); } } kfree_skb(skb); kfree_skb(skb); Loading @@ -1292,7 +1296,7 @@ static int btusb_setup_intel(struct hci_dev *hdev) if (IS_ERR(skb)) { if (IS_ERR(skb)) { BT_ERR("%s exiting Intel manufacturer mode failed (%ld)", BT_ERR("%s exiting Intel manufacturer mode failed (%ld)", hdev->name, PTR_ERR(skb)); hdev->name, PTR_ERR(skb)); return -PTR_ERR(skb); return PTR_ERR(skb); } } kfree_skb(skb); kfree_skb(skb); Loading @@ -1310,7 +1314,7 @@ static int btusb_setup_intel(struct hci_dev *hdev) if (IS_ERR(skb)) { if (IS_ERR(skb)) { BT_ERR("%s exiting Intel manufacturer mode failed (%ld)", BT_ERR("%s exiting Intel manufacturer mode failed (%ld)", hdev->name, PTR_ERR(skb)); hdev->name, PTR_ERR(skb)); return -PTR_ERR(skb); return PTR_ERR(skb); } } kfree_skb(skb); kfree_skb(skb); Loading drivers/net/wireless/ath/ath10k/Kconfig +1 −1 Original line number Original line Diff line number Diff line config ATH10K config ATH10K tristate "Atheros 802.11ac wireless cards support" tristate "Atheros 802.11ac wireless cards support" depends on MAC80211 depends on MAC80211 && HAS_DMA select ATH_COMMON select ATH_COMMON ---help--- ---help--- This module adds support for wireless adapters based on This module adds support for wireless adapters based on Loading drivers/net/wireless/brcm80211/brcmfmac/wl_cfg80211.c +4 −1 Original line number Original line Diff line number Diff line Loading @@ -1093,8 +1093,11 @@ static void brcmf_link_down(struct brcmf_cfg80211_vif *vif) brcmf_dbg(INFO, "Call WLC_DISASSOC to stop excess roaming\n "); brcmf_dbg(INFO, "Call WLC_DISASSOC to stop excess roaming\n "); err = brcmf_fil_cmd_data_set(vif->ifp, err = brcmf_fil_cmd_data_set(vif->ifp, BRCMF_C_DISASSOC, NULL, 0); BRCMF_C_DISASSOC, NULL, 0); if (err) if (err) { brcmf_err("WLC_DISASSOC failed (%d)\n", err); brcmf_err("WLC_DISASSOC failed (%d)\n", err); cfg80211_disconnected(vif->wdev.netdev, 0, NULL, 0, GFP_KERNEL); } clear_bit(BRCMF_VIF_STATUS_CONNECTED, &vif->sme_state); clear_bit(BRCMF_VIF_STATUS_CONNECTED, &vif->sme_state); } } clear_bit(BRCMF_VIF_STATUS_CONNECTING, &vif->sme_state); clear_bit(BRCMF_VIF_STATUS_CONNECTING, &vif->sme_state); Loading Loading
MAINTAINERS +10 −2 Original line number Original line Diff line number Diff line Loading @@ -1406,7 +1406,7 @@ ATHEROS ATH6KL WIRELESS DRIVER M: Kalle Valo <kvalo@qca.qualcomm.com> M: Kalle Valo <kvalo@qca.qualcomm.com> L: linux-wireless@vger.kernel.org L: linux-wireless@vger.kernel.org W: http://wireless.kernel.org/en/users/Drivers/ath6kl W: http://wireless.kernel.org/en/users/Drivers/ath6kl T: git git://git.kernel.org/pub/scm/linux/kernel/git/kvalo/ath6kl.git T: git git://github.com/kvalo/ath.git S: Supported S: Supported F: drivers/net/wireless/ath/ath6kl/ F: drivers/net/wireless/ath/ath6kl/ Loading Loading @@ -6726,6 +6726,14 @@ T: git git://linuxtv.org/anttip/media_tree.git S: Maintained S: Maintained F: drivers/media/tuners/qt1010* F: drivers/media/tuners/qt1010* QUALCOMM ATHEROS ATH10K WIRELESS DRIVER M: Kalle Valo <kvalo@qca.qualcomm.com> L: ath10k@lists.infradead.org W: http://wireless.kernel.org/en/users/Drivers/ath10k T: git git://github.com/kvalo/ath.git S: Supported F: drivers/net/wireless/ath/ath10k/ QUALCOMM HEXAGON ARCHITECTURE QUALCOMM HEXAGON ARCHITECTURE M: Richard Kuo <rkuo@codeaurora.org> M: Richard Kuo <rkuo@codeaurora.org> L: linux-hexagon@vger.kernel.org L: linux-hexagon@vger.kernel.org Loading Loading @@ -8270,7 +8278,7 @@ S: Maintained F: sound/soc/codecs/twl4030* F: sound/soc/codecs/twl4030* TI WILINK WIRELESS DRIVERS TI WILINK WIRELESS DRIVERS M: Luciano Coelho <coelho@ti.com> M: Luciano Coelho <luca@coelho.fi> L: linux-wireless@vger.kernel.org L: linux-wireless@vger.kernel.org W: http://wireless.kernel.org/en/users/Drivers/wl12xx W: http://wireless.kernel.org/en/users/Drivers/wl12xx W: http://wireless.kernel.org/en/users/Drivers/wl1251 W: http://wireless.kernel.org/en/users/Drivers/wl1251 Loading
drivers/bluetooth/ath3k.c +37 −9 Original line number Original line Diff line number Diff line Loading @@ -91,6 +91,10 @@ static struct usb_device_id ath3k_table[] = { { USB_DEVICE(0x0489, 0xe04e) }, { USB_DEVICE(0x0489, 0xe04e) }, { USB_DEVICE(0x0489, 0xe056) }, { USB_DEVICE(0x0489, 0xe056) }, { USB_DEVICE(0x0489, 0xe04d) }, { USB_DEVICE(0x0489, 0xe04d) }, { USB_DEVICE(0x04c5, 0x1330) }, { USB_DEVICE(0x13d3, 0x3402) }, { USB_DEVICE(0x0cf3, 0x3121) }, { USB_DEVICE(0x0cf3, 0xe003) }, /* Atheros AR5BBU12 with sflash firmware */ /* Atheros AR5BBU12 with sflash firmware */ { USB_DEVICE(0x0489, 0xE02C) }, { USB_DEVICE(0x0489, 0xE02C) }, Loading Loading @@ -128,6 +132,10 @@ static struct usb_device_id ath3k_blist_tbl[] = { { USB_DEVICE(0x0489, 0xe04e), .driver_info = BTUSB_ATH3012 }, { USB_DEVICE(0x0489, 0xe04e), .driver_info = BTUSB_ATH3012 }, { USB_DEVICE(0x0489, 0xe056), .driver_info = BTUSB_ATH3012 }, { USB_DEVICE(0x0489, 0xe056), .driver_info = BTUSB_ATH3012 }, { USB_DEVICE(0x0489, 0xe04d), .driver_info = BTUSB_ATH3012 }, { USB_DEVICE(0x0489, 0xe04d), .driver_info = BTUSB_ATH3012 }, { USB_DEVICE(0x04c5, 0x1330), .driver_info = BTUSB_ATH3012 }, { USB_DEVICE(0x13d3, 0x3402), .driver_info = BTUSB_ATH3012 }, { USB_DEVICE(0x0cf3, 0x3121), .driver_info = BTUSB_ATH3012 }, { USB_DEVICE(0x0cf3, 0xe003), .driver_info = BTUSB_ATH3012 }, /* Atheros AR5BBU22 with sflash firmware */ /* Atheros AR5BBU22 with sflash firmware */ { USB_DEVICE(0x0489, 0xE03C), .driver_info = BTUSB_ATH3012 }, { USB_DEVICE(0x0489, 0xE03C), .driver_info = BTUSB_ATH3012 }, Loading Loading @@ -193,24 +201,44 @@ static int ath3k_load_firmware(struct usb_device *udev, static int ath3k_get_state(struct usb_device *udev, unsigned char *state) static int ath3k_get_state(struct usb_device *udev, unsigned char *state) { { int pipe = 0; int ret, pipe = 0; char *buf; buf = kmalloc(sizeof(*buf), GFP_KERNEL); if (!buf) return -ENOMEM; pipe = usb_rcvctrlpipe(udev, 0); pipe = usb_rcvctrlpipe(udev, 0); return usb_control_msg(udev, pipe, ATH3K_GETSTATE, ret = usb_control_msg(udev, pipe, ATH3K_GETSTATE, USB_TYPE_VENDOR | USB_DIR_IN, 0, 0, USB_TYPE_VENDOR | USB_DIR_IN, 0, 0, state, 0x01, USB_CTRL_SET_TIMEOUT); buf, sizeof(*buf), USB_CTRL_SET_TIMEOUT); *state = *buf; kfree(buf); return ret; } } static int ath3k_get_version(struct usb_device *udev, static int ath3k_get_version(struct usb_device *udev, struct ath3k_version *version) struct ath3k_version *version) { { int pipe = 0; int ret, pipe = 0; struct ath3k_version *buf; const int size = sizeof(*buf); buf = kmalloc(size, GFP_KERNEL); if (!buf) return -ENOMEM; pipe = usb_rcvctrlpipe(udev, 0); pipe = usb_rcvctrlpipe(udev, 0); return usb_control_msg(udev, pipe, ATH3K_GETVERSION, ret = usb_control_msg(udev, pipe, ATH3K_GETVERSION, USB_TYPE_VENDOR | USB_DIR_IN, 0, 0, version, USB_TYPE_VENDOR | USB_DIR_IN, 0, 0, sizeof(struct ath3k_version), buf, size, USB_CTRL_SET_TIMEOUT); USB_CTRL_SET_TIMEOUT); memcpy(version, buf, size); kfree(buf); return ret; } } static int ath3k_load_fwfile(struct usb_device *udev, static int ath3k_load_fwfile(struct usb_device *udev, Loading
drivers/bluetooth/btusb.c +11 −7 Original line number Original line Diff line number Diff line Loading @@ -154,6 +154,10 @@ static struct usb_device_id blacklist_table[] = { { USB_DEVICE(0x0489, 0xe04e), .driver_info = BTUSB_ATH3012 }, { USB_DEVICE(0x0489, 0xe04e), .driver_info = BTUSB_ATH3012 }, { USB_DEVICE(0x0489, 0xe056), .driver_info = BTUSB_ATH3012 }, { USB_DEVICE(0x0489, 0xe056), .driver_info = BTUSB_ATH3012 }, { USB_DEVICE(0x0489, 0xe04d), .driver_info = BTUSB_ATH3012 }, { USB_DEVICE(0x0489, 0xe04d), .driver_info = BTUSB_ATH3012 }, { USB_DEVICE(0x04c5, 0x1330), .driver_info = BTUSB_ATH3012 }, { USB_DEVICE(0x13d3, 0x3402), .driver_info = BTUSB_ATH3012 }, { USB_DEVICE(0x0cf3, 0x3121), .driver_info = BTUSB_ATH3012 }, { USB_DEVICE(0x0cf3, 0xe003), .driver_info = BTUSB_ATH3012 }, /* Atheros AR5BBU12 with sflash firmware */ /* Atheros AR5BBU12 with sflash firmware */ { USB_DEVICE(0x0489, 0xe02c), .driver_info = BTUSB_IGNORE }, { USB_DEVICE(0x0489, 0xe02c), .driver_info = BTUSB_IGNORE }, Loading Loading @@ -1095,7 +1099,7 @@ static int btusb_setup_intel_patching(struct hci_dev *hdev, if (IS_ERR(skb)) { if (IS_ERR(skb)) { BT_ERR("%s sending Intel patch command (0x%4.4x) failed (%ld)", BT_ERR("%s sending Intel patch command (0x%4.4x) failed (%ld)", hdev->name, cmd->opcode, PTR_ERR(skb)); hdev->name, cmd->opcode, PTR_ERR(skb)); return -PTR_ERR(skb); return PTR_ERR(skb); } } /* It ensures that the returned event matches the event data read from /* It ensures that the returned event matches the event data read from Loading Loading @@ -1147,7 +1151,7 @@ static int btusb_setup_intel(struct hci_dev *hdev) if (IS_ERR(skb)) { if (IS_ERR(skb)) { BT_ERR("%s sending initial HCI reset command failed (%ld)", BT_ERR("%s sending initial HCI reset command failed (%ld)", hdev->name, PTR_ERR(skb)); hdev->name, PTR_ERR(skb)); return -PTR_ERR(skb); return PTR_ERR(skb); } } kfree_skb(skb); kfree_skb(skb); Loading @@ -1161,7 +1165,7 @@ static int btusb_setup_intel(struct hci_dev *hdev) if (IS_ERR(skb)) { if (IS_ERR(skb)) { BT_ERR("%s reading Intel fw version command failed (%ld)", BT_ERR("%s reading Intel fw version command failed (%ld)", hdev->name, PTR_ERR(skb)); hdev->name, PTR_ERR(skb)); return -PTR_ERR(skb); return PTR_ERR(skb); } } if (skb->len != sizeof(*ver)) { if (skb->len != sizeof(*ver)) { Loading Loading @@ -1219,7 +1223,7 @@ static int btusb_setup_intel(struct hci_dev *hdev) BT_ERR("%s entering Intel manufacturer mode failed (%ld)", BT_ERR("%s entering Intel manufacturer mode failed (%ld)", hdev->name, PTR_ERR(skb)); hdev->name, PTR_ERR(skb)); release_firmware(fw); release_firmware(fw); return -PTR_ERR(skb); return PTR_ERR(skb); } } if (skb->data[0]) { if (skb->data[0]) { Loading Loading @@ -1276,7 +1280,7 @@ static int btusb_setup_intel(struct hci_dev *hdev) if (IS_ERR(skb)) { if (IS_ERR(skb)) { BT_ERR("%s exiting Intel manufacturer mode failed (%ld)", BT_ERR("%s exiting Intel manufacturer mode failed (%ld)", hdev->name, PTR_ERR(skb)); hdev->name, PTR_ERR(skb)); return -PTR_ERR(skb); return PTR_ERR(skb); } } kfree_skb(skb); kfree_skb(skb); Loading @@ -1292,7 +1296,7 @@ static int btusb_setup_intel(struct hci_dev *hdev) if (IS_ERR(skb)) { if (IS_ERR(skb)) { BT_ERR("%s exiting Intel manufacturer mode failed (%ld)", BT_ERR("%s exiting Intel manufacturer mode failed (%ld)", hdev->name, PTR_ERR(skb)); hdev->name, PTR_ERR(skb)); return -PTR_ERR(skb); return PTR_ERR(skb); } } kfree_skb(skb); kfree_skb(skb); Loading @@ -1310,7 +1314,7 @@ static int btusb_setup_intel(struct hci_dev *hdev) if (IS_ERR(skb)) { if (IS_ERR(skb)) { BT_ERR("%s exiting Intel manufacturer mode failed (%ld)", BT_ERR("%s exiting Intel manufacturer mode failed (%ld)", hdev->name, PTR_ERR(skb)); hdev->name, PTR_ERR(skb)); return -PTR_ERR(skb); return PTR_ERR(skb); } } kfree_skb(skb); kfree_skb(skb); Loading
drivers/net/wireless/ath/ath10k/Kconfig +1 −1 Original line number Original line Diff line number Diff line config ATH10K config ATH10K tristate "Atheros 802.11ac wireless cards support" tristate "Atheros 802.11ac wireless cards support" depends on MAC80211 depends on MAC80211 && HAS_DMA select ATH_COMMON select ATH_COMMON ---help--- ---help--- This module adds support for wireless adapters based on This module adds support for wireless adapters based on Loading
drivers/net/wireless/brcm80211/brcmfmac/wl_cfg80211.c +4 −1 Original line number Original line Diff line number Diff line Loading @@ -1093,8 +1093,11 @@ static void brcmf_link_down(struct brcmf_cfg80211_vif *vif) brcmf_dbg(INFO, "Call WLC_DISASSOC to stop excess roaming\n "); brcmf_dbg(INFO, "Call WLC_DISASSOC to stop excess roaming\n "); err = brcmf_fil_cmd_data_set(vif->ifp, err = brcmf_fil_cmd_data_set(vif->ifp, BRCMF_C_DISASSOC, NULL, 0); BRCMF_C_DISASSOC, NULL, 0); if (err) if (err) { brcmf_err("WLC_DISASSOC failed (%d)\n", err); brcmf_err("WLC_DISASSOC failed (%d)\n", err); cfg80211_disconnected(vif->wdev.netdev, 0, NULL, 0, GFP_KERNEL); } clear_bit(BRCMF_VIF_STATUS_CONNECTED, &vif->sme_state); clear_bit(BRCMF_VIF_STATUS_CONNECTED, &vif->sme_state); } } clear_bit(BRCMF_VIF_STATUS_CONNECTING, &vif->sme_state); clear_bit(BRCMF_VIF_STATUS_CONNECTING, &vif->sme_state); Loading