Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 95a943c1 authored by John W. Linville's avatar John W. Linville
Browse files

Merge branch 'master' of...

Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 into for-davem

Conflicts:
	net/bluetooth/l2cap_core.c
parents ecae42d3 95acac61
Loading
Loading
Loading
Loading
+3 −2
Original line number Original line Diff line number Diff line
@@ -402,8 +402,9 @@
!Finclude/net/mac80211.h set_key_cmd
!Finclude/net/mac80211.h set_key_cmd
!Finclude/net/mac80211.h ieee80211_key_conf
!Finclude/net/mac80211.h ieee80211_key_conf
!Finclude/net/mac80211.h ieee80211_key_flags
!Finclude/net/mac80211.h ieee80211_key_flags
!Finclude/net/mac80211.h ieee80211_tkip_key_type
!Finclude/net/mac80211.h ieee80211_get_tkip_p1k
!Finclude/net/mac80211.h ieee80211_get_tkip_key
!Finclude/net/mac80211.h ieee80211_get_tkip_p1k_iv
!Finclude/net/mac80211.h ieee80211_get_tkip_p2k
!Finclude/net/mac80211.h ieee80211_key_removed
!Finclude/net/mac80211.h ieee80211_key_removed
      </chapter>
      </chapter>


+3 −1
Original line number Original line Diff line number Diff line
@@ -149,7 +149,9 @@ int bcma_bus_register(struct bcma_bus *bus)


	/* Try to get SPROM */
	/* Try to get SPROM */
	err = bcma_sprom_get(bus);
	err = bcma_sprom_get(bus);
	if (err) {
	if (err == -ENOENT) {
		pr_err("No SPROM available\n");
	} else if (err) {
		pr_err("Failed to get SPROM: %d\n", err);
		pr_err("Failed to get SPROM: %d\n", err);
		return -ENOENT;
		return -ENOENT;
	}
	}
+3 −0
Original line number Original line Diff line number Diff line
@@ -143,6 +143,9 @@ int bcma_sprom_get(struct bcma_bus *bus)
	if (!bus->drv_cc.core)
	if (!bus->drv_cc.core)
		return -EOPNOTSUPP;
		return -EOPNOTSUPP;


	if (!(bus->drv_cc.capabilities & BCMA_CC_CAP_SPROM))
		return -ENOENT;

	sprom = kcalloc(SSB_SPROMSIZE_WORDS_R4, sizeof(u16),
	sprom = kcalloc(SSB_SPROMSIZE_WORDS_R4, sizeof(u16),
			GFP_KERNEL);
			GFP_KERNEL);
	if (!sprom)
	if (!sprom)
+5 −0
Original line number Original line Diff line number Diff line
@@ -375,6 +375,11 @@ static int ath3k_probe(struct usb_interface *intf,


	/* load patch and sysconfig files for AR3012 */
	/* load patch and sysconfig files for AR3012 */
	if (id->driver_info & BTUSB_ATH3012) {
	if (id->driver_info & BTUSB_ATH3012) {

		/* New firmware with patch and sysconfig files already loaded */
		if (le16_to_cpu(udev->descriptor.bcdDevice) > 0x0001)
			return -ENODEV;

		ret = ath3k_load_patch(udev);
		ret = ath3k_load_patch(udev);
		if (ret < 0) {
		if (ret < 0) {
			BT_ERR("Loading patch file failed");
			BT_ERR("Loading patch file failed");
+11 −1
Original line number Original line Diff line number Diff line
@@ -54,6 +54,7 @@ static struct usb_driver btusb_driver;
#define BTUSB_BCM92035		0x10
#define BTUSB_BCM92035		0x10
#define BTUSB_BROKEN_ISOC	0x20
#define BTUSB_BROKEN_ISOC	0x20
#define BTUSB_WRONG_SCO_MTU	0x40
#define BTUSB_WRONG_SCO_MTU	0x40
#define BTUSB_ATH3012		0x80


static struct usb_device_id btusb_table[] = {
static struct usb_device_id btusb_table[] = {
	/* Generic Bluetooth USB device */
	/* Generic Bluetooth USB device */
@@ -110,7 +111,7 @@ static struct usb_device_id blacklist_table[] = {
	{ USB_DEVICE(0x03f0, 0x311d), .driver_info = BTUSB_IGNORE },
	{ USB_DEVICE(0x03f0, 0x311d), .driver_info = BTUSB_IGNORE },


	/* Atheros 3012 with sflash firmware */
	/* Atheros 3012 with sflash firmware */
	{ USB_DEVICE(0x0cf3, 0x3004), .driver_info = BTUSB_IGNORE },
	{ USB_DEVICE(0x0cf3, 0x3004), .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 },
@@ -914,6 +915,15 @@ static int btusb_probe(struct usb_interface *intf,
	if (ignore_sniffer && id->driver_info & BTUSB_SNIFFER)
	if (ignore_sniffer && id->driver_info & BTUSB_SNIFFER)
		return -ENODEV;
		return -ENODEV;


	if (id->driver_info & BTUSB_ATH3012) {
		struct usb_device *udev = interface_to_usbdev(intf);

		/* Old firmware would otherwise let ath3k driver load
		 * patch and sysconfig files */
		if (le16_to_cpu(udev->descriptor.bcdDevice) <= 0x0001)
			return -ENODEV;
	}

	data = kzalloc(sizeof(*data), GFP_KERNEL);
	data = kzalloc(sizeof(*data), GFP_KERNEL);
	if (!data)
	if (!data)
		return -ENOMEM;
		return -ENOMEM;
Loading