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

Commit fc4d30a6 authored by David S. Miller's avatar David S. Miller
Browse files
parents 9150c979 1682fe6d
Loading
Loading
Loading
Loading
+17 −12
Original line number Diff line number Diff line
@@ -1644,13 +1644,24 @@ static void gelic_wl_scan_complete_event(struct gelic_wl_info *wl)
	}

	/* put them in the newtork_list */
	scan_info = wl->buf;
	scan_info_size = 0;
	i = 0;
	while (scan_info_size < data_len) {
	for (i = 0, scan_info_size = 0, scan_info = wl->buf;
	     scan_info_size < data_len;
	     i++, scan_info_size += be16_to_cpu(scan_info->size),
	     scan_info = (void *)scan_info + be16_to_cpu(scan_info->size)) {
		pr_debug("%s:size=%d bssid=%s scan_info=%p\n", __func__,
			 be16_to_cpu(scan_info->size),
			 print_mac(mac, &scan_info->bssid[2]), scan_info);

		/*
		 * The wireless firmware may return invalid channel 0 and/or
		 * invalid rate if the AP emits zero length SSID ie. As this
		 * scan information is useless, ignore it
		 */
		if (!be16_to_cpu(scan_info->channel) || !scan_info->rate[0]) {
			pr_debug("%s: invalid scan info\n", __func__);
			continue;
		}

		found = 0;
		oldest = NULL;
		list_for_each_entry(target, &wl->network_list, list) {
@@ -1687,10 +1698,6 @@ static void gelic_wl_scan_complete_event(struct gelic_wl_info *wl)
					 GFP_KERNEL);
		if (!target->hwinfo) {
			pr_info("%s: kzalloc failed\n", __func__);
			i++;
			scan_info_size += be16_to_cpu(scan_info->size);
			scan_info = (void *)scan_info +
				be16_to_cpu(scan_info->size);
			continue;
		}
		/* copy hw scan info */
@@ -1709,10 +1716,6 @@ static void gelic_wl_scan_complete_event(struct gelic_wl_info *wl)
			if (scan_info->ext_rate[r])
				target->rate_ext_len++;
		list_move_tail(&target->list, &wl->network_list);
		/* bump pointer */
		i++;
		scan_info_size += be16_to_cpu(scan_info->size);
		scan_info = (void *)scan_info + be16_to_cpu(scan_info->size);
	}
	memset(&data, 0, sizeof(data));
	wireless_send_event(port_to_netdev(wl_port(wl)), SIOCGIWSCAN, &data,
@@ -2389,6 +2392,8 @@ static struct net_device *gelic_wl_alloc(struct gelic_card *card)
	if (!netdev)
		return NULL;

	strcpy(netdev->name, "wlan%d");

	port = netdev_priv(netdev);
	port->netdev = netdev;
	port->card = card;
+2 −0
Original line number Diff line number Diff line
@@ -427,6 +427,8 @@ void ath5k_hw_detach(struct ath5k_hw *ah)
{
	ATH5K_TRACE(ah->ah_sc);

	__set_bit(ATH_STAT_INVALID, ah->ah_sc->status);

	if (ah->ah_rf_banks != NULL)
		kfree(ah->ah_rf_banks);

+1 −1
Original line number Diff line number Diff line
@@ -860,7 +860,7 @@ static void b43_phy_ww(struct b43_wldev *dev)
	b43_phy_write(dev, B43_PHY_OFDM(0xBB),
		(b43_phy_read(dev, B43_PHY_OFDM(0xBB)) & 0xF000) | 0x0053);
	b43_phy_write(dev, B43_PHY_OFDM61,
		(b43_phy_read(dev, B43_PHY_OFDM61 & 0xFE1F)) | 0x0120);
		(b43_phy_read(dev, B43_PHY_OFDM61) & 0xFE1F) | 0x0120);
	b43_phy_write(dev, B43_PHY_OFDM(0x13),
		(b43_phy_read(dev, B43_PHY_OFDM(0x13)) & 0x0FFF) | 0x3000);
	b43_phy_write(dev, B43_PHY_OFDM(0x14),
+1 −0
Original line number Diff line number Diff line
@@ -63,6 +63,7 @@ static struct usb_device_id p54u_table[] __devinitdata = {
	{USB_DEVICE(0x0cde, 0x0008)},	/* Sagem XG703A */
	{USB_DEVICE(0x0d8e, 0x3762)},	/* DLink DWL-G120 Cohiba */
	{USB_DEVICE(0x09aa, 0x1000)},	/* Spinnaker Proto board */
	{USB_DEVICE(0x124a, 0x4025)},	/* IOGear GWU513 (GW3887IK chip) */
	{USB_DEVICE(0x13b1, 0x000a)},	/* Linksys WUSB54G ver 2 */
	{USB_DEVICE(0x13B1, 0x000C)},	/* Linksys WUSB54AG */
	{USB_DEVICE(0x1435, 0x0427)},	/* Inventel UR054G */
+3 −0
Original line number Diff line number Diff line
@@ -620,6 +620,9 @@ struct rt2x00_dev {
	 * This will only be compiled in when required.
	 */
#ifdef CONFIG_RT2X00_LIB_RFKILL
unsigned long rfkill_state;
#define RFKILL_STATE_ALLOCATED		1
#define RFKILL_STATE_REGISTERED		2
	struct rfkill *rfkill;
	struct input_polled_dev *poll_dev;
#endif /* CONFIG_RT2X00_LIB_RFKILL */
Loading