diff options
author | 2009-07-14 15:27:59 +0000 | |
---|---|---|
committer | 2009-07-14 15:27:59 +0000 | |
commit | 76dc5416ababd60bd36be3bf42f0a0d9a78c6ee9 (patch) | |
tree | 0be820cad11365c726f88cb14a10c76a962265d4 | |
parent | Version bump, thank Vadim Efimov for report. Added a note about patch depende... (diff) | |
download | gentoo-2-76dc5416ababd60bd36be3bf42f0a0d9a78c6ee9.tar.gz gentoo-2-76dc5416ababd60bd36be3bf42f0a0d9a78c6ee9.tar.bz2 gentoo-2-76dc5416ababd60bd36be3bf42f0a0d9a78c6ee9.zip |
Added COMPAT_NET_DEV_OPS to CONFIG_CHECK, bug #276057. Added patch for 2.6.31, bug #277552.
(Portage version: 2.1.6.13/cvs/Linux x86_64)
3 files changed, 110 insertions, 1 deletions
diff --git a/net-wireless/broadcom-sta/ChangeLog b/net-wireless/broadcom-sta/ChangeLog index 92239f6c65b4..4f0d1b08a8aa 100644 --- a/net-wireless/broadcom-sta/ChangeLog +++ b/net-wireless/broadcom-sta/ChangeLog @@ -1,6 +1,14 @@ # ChangeLog for net-wireless/broadcom-sta # Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/net-wireless/broadcom-sta/ChangeLog,v 1.8 2009/07/01 22:51:51 matsuu Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-wireless/broadcom-sta/ChangeLog,v 1.9 2009/07/14 15:27:59 matsuu Exp $ + +*broadcom-sta-5.10.91.9-r3 (14 Jul 2009) + + 14 Jul 2009; MATSUU Takuto <matsuu@gentoo.org> + +broadcom-sta-5.10.91.9-r3.ebuild, + +files/broadcom-sta-5.10.91.9-linux-2.6.31.patch: + Added COMPAT_NET_DEV_OPS to CONFIG_CHECK, bug #276057. Added patch for + 2.6.31, bug #277552. *broadcom-sta-5.10.91.9-r2 (01 Jul 2009) diff --git a/net-wireless/broadcom-sta/broadcom-sta-5.10.91.9-r3.ebuild b/net-wireless/broadcom-sta/broadcom-sta-5.10.91.9-r3.ebuild new file mode 100644 index 000000000000..036fdcc62fae --- /dev/null +++ b/net-wireless/broadcom-sta/broadcom-sta-5.10.91.9-r3.ebuild @@ -0,0 +1,51 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-wireless/broadcom-sta/broadcom-sta-5.10.91.9-r3.ebuild,v 1.1 2009/07/14 15:27:59 matsuu Exp $ + +inherit eutils linux-mod versionator + +MY_PV="$(replace_all_version_separators _)" +DESCRIPTION="Broadcom's IEEE 802.11a/b/g/n hybrid Linux device driver." +HOMEPAGE="http://www.broadcom.com/support/802.11/linux_sta.php" +SRC_BASE="http://www.broadcom.com/docs/linux_sta/hybrid-portsrc-x86_" +SRC_URI="x86? ( ${SRC_BASE}32-v${MY_PV}.tar.gz ) + amd64? ( ${SRC_BASE}64-v${MY_PV}.tar.gz ) + http://www.broadcom.com/docs/linux_sta/${MY_PV}_patch_2_6_29_kernel.zip" + +LICENSE="Broadcom" +KEYWORDS="~amd64 ~x86" +IUSE="" + +RESTRICT="mirror" + +DEPEND=">=virtual/linux-sources-2.6.22" +RDEPEND="${DEPEND}" + +S="${WORKDIR}" + +MODULE_NAMES="wl(net/wireless)" +MODULESD_WL_ALIASES=("wlan0 wl") + +pkg_setup() { + check_license + + # bug #276057 + if kernel_is ge 2 6 29; then + CONFIG_CHECK="LIB80211 COMPAT_NET_DEV_OPS" + else + CONFIG_CHECK="IEEE80211 IEEE80211_CRYPT_TKIP" + fi + linux-mod_pkg_setup + BUILD_PARAMS="-C ${KV_DIR} M=${S}" + BUILD_TARGETS="wl.ko" +} + +src_unpack() { + unpack ${A} + cd "${S}" + epatch \ + "${FILESDIR}/${PN}-5.10.79.10-hidden-essid.patch" \ + "${WORKDIR}/patch_2.6.29_kernels" \ + "${FILESDIR}/${P}-license.patch" \ + "${FILESDIR}/${P}-linux-2.6.31.patch" +} diff --git a/net-wireless/broadcom-sta/files/broadcom-sta-5.10.91.9-linux-2.6.31.patch b/net-wireless/broadcom-sta/files/broadcom-sta-5.10.91.9-linux-2.6.31.patch new file mode 100644 index 000000000000..ac31fbde3ec3 --- /dev/null +++ b/net-wireless/broadcom-sta/files/broadcom-sta-5.10.91.9-linux-2.6.31.patch @@ -0,0 +1,50 @@ +--- src/wl/sys/wl_linux.c.orig.1 2009-07-12 13:28:30.000000000 -0700 ++++ src/wl/sys/wl_linux.c 2009-07-12 15:46:52.000000000 -0700 +@@ -222,9 +222,23 @@ + }; + #endif + ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 31) ++static const struct net_device_ops wl_net_device_ops = ++{ ++ .ndo_open = wl_open, ++ .ndo_stop = wl_close, ++ .ndo_start_xmit = wl_start, ++ .ndo_get_stats = wl_get_stats, ++ .ndo_set_mac_address = wl_set_mac_address, ++ .ndo_set_multicast_list = wl_set_multicast_list, ++ .ndo_do_ioctl = wl_ioctl, ++}; ++#endif ++ + static + void wl_if_setup(struct net_device *dev) + { ++#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 31) + dev->open = wl_open; + dev->stop = wl_close; + dev->hard_start_xmit = wl_start; +@@ -232,6 +246,9 @@ + dev->set_mac_address = wl_set_mac_address; + dev->set_multicast_list = wl_set_multicast_list; + dev->do_ioctl = wl_ioctl; ++#else ++ dev->netdev_ops = &wl_net_device_ops; ++#endif + #ifdef CONFIG_WIRELESS_EXT + #if WIRELESS_EXT < 19 + dev->get_wireless_stats = wl_get_wireless_stats; +--- src/wl/sys/wl_iw.c.orig.1 2009-07-12 13:40:51.000000000 -0700 ++++ src/wl/sys/wl_iw.c 2009-07-12 15:46:39.000000000 -0700 +@@ -124,7 +124,11 @@ + + fs = get_fs(); + set_fs(get_ds()); ++#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 31) + ret = dev->do_ioctl(dev, &ifr, SIOCDEVPRIVATE); ++#else ++ ret = dev->netdev_ops->ndo_do_ioctl(dev, &ifr, SIOCDEVPRIVATE); ++#endif + set_fs(fs); + + return ret; |