Search Linux Wireless

Re: [PATCH 3/3] compat-wirelsss: add carl9170

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wednesday 15 September 2010 22:43:35 Hauke Mehrtens wrote:
> This patch adds upport for carl9170.
> 
> Signed-off-by: Hauke Mehrtens <hauke@xxxxxxxxxx>
NACK

usb_get_from_anchor is not thread-safe on older kernel.
See details:

https://patchwork.kernel.org/patch/118946/

> ---
>  config.mk                            |    6 +++++
>  patches/25-multicast-list_head.patch |   42 ++++++++++++++++++++++++++++++++-
>  scripts/admin-update.sh              |    1 +
>  3 files changed, 47 insertions(+), 2 deletions(-)
> 
> diff --git a/config.mk b/config.mk
> index b61c318..5e7ae1b 100644
> --- a/config.mk
> +++ b/config.mk
> @@ -411,6 +411,12 @@ CONFIG_AT76C50X_USB=m
>  ifndef CONFIG_COMPAT_KERNEL_28
>  CONFIG_AR9170_USB=m
>  CONFIG_AR9170_LEDS=y
> +
> +CONFIG_CARL9170=m
> +CONFIG_CARL9170_LEDS=y
> +# CONFIG_CARL9170_DEBUGFS=y
> +# CONFIG_CARL9170_WPC=y
> +
>  endif #CONFIG_COMPAT_KERNEL_28
>  
>  CONFIG_ATH9K_HTC=m
> diff --git a/patches/25-multicast-list_head.patch b/patches/25-multicast-list_head.patch
> index 2869364..5a6bb16 100644
> --- a/patches/25-multicast-list_head.patch
> +++ b/patches/25-multicast-list_head.patch
> @@ -69,7 +69,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
>   }
>  --- a/drivers/net/b44.c
>  +++ b/drivers/net/b44.c
> -@@ -1680,7 +1680,11 @@ static int __b44_load_mcast(struct b44 *
> +@@ -1689,7 +1689,11 @@ static int __b44_load_mcast(struct b44 *
>   	netdev_for_each_mc_addr(ha, dev) {
>   		if (i == num_ents)
>   			break;
> @@ -227,6 +227,44 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
>   	}
>   
>   	return ((u64)(mfilt[1]) << 32) | mfilt[0];
> +--- a/drivers/net/wireless/ath/carl9170/main.c
> ++++ b/drivers/net/wireless/ath/carl9170/main.c
> +@@ -810,17 +810,35 @@ out:
> + 	return err;
> + }
> + 
> ++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,35))
> + static u64 carl9170_op_prepare_multicast(struct ieee80211_hw *hw,
> + 					 struct netdev_hw_addr_list *mc_list)
> ++#else
> ++static u64 carl9170_op_prepare_multicast(struct ieee80211_hw *hw, int mc_count,
> ++					 struct dev_addr_list *ha)
> ++#endif
> + {
> ++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,35))
> + 	struct netdev_hw_addr *ha;
> ++#else
> ++	int i;
> ++#endif
> + 	u64 mchash;
> + 
> + 	/* always get broadcast frames */
> + 	mchash = 1ULL << (0xff >> 2);
> + 
> ++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,35))
> + 	netdev_hw_addr_list_for_each(ha, mc_list)
> + 		mchash |= 1ULL << (ha->addr[5] >> 2);
> ++#else
> ++	for (i = 0; i < mc_count; i++) {
> ++		if (WARN_ON(!ha))
> ++			break;
> ++		mchash |= 1ULL << (ha->dmi_addr[5] >> 2);
> ++		ha = ha->next;
> ++	}
> ++#endif
> + 
> + 	return mchash;
> + }
>  --- a/drivers/net/wireless/libertas/main.c
>  +++ b/drivers/net/wireless/libertas/main.c
>  @@ -242,18 +242,34 @@ static int lbs_add_mcast_addrs(struct cm
> @@ -693,7 +731,7 @@ This also backport commit 2f787b0b76bf5de2eaa3ca3a29d89123ae03c856
>   	spin_unlock_bh(&local->filter_lock);
>   
>   	/* be a bit nasty */
> -@@ -521,9 +525,11 @@ struct ieee80211_hw *ieee80211_alloc_hw(
> +@@ -524,9 +528,11 @@ struct ieee80211_hw *ieee80211_alloc_hw(
>   	local->uapsd_max_sp_len = IEEE80211_DEFAULT_MAX_SP_LEN;
>   
>   	INIT_LIST_HEAD(&local->interfaces);
> diff --git a/scripts/admin-update.sh b/scripts/admin-update.sh
> index 6ef281d..ac9470d 100755
> --- a/scripts/admin-update.sh
> +++ b/scripts/admin-update.sh
> @@ -192,6 +192,7 @@ fi
>  
>  # Drivers that have their own directory
>  DRIVERS="drivers/net/wireless/ath"
> +DRIVERS="$DRIVERS drivers/net/wireless/ath/carl9170"
>  DRIVERS="$DRIVERS drivers/net/wireless/ath/ar9170"
>  DRIVERS="$DRIVERS drivers/net/wireless/ath/ath5k"
>  DRIVERS="$DRIVERS drivers/net/wireless/ath/ath9k"
> 
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]
  Powered by Linux