diff options
author | Sergey Popov <pinkbyte@gentoo.org> | 2013-08-23 12:31:04 +0000 |
---|---|---|
committer | Sergey Popov <pinkbyte@gentoo.org> | 2013-08-23 12:31:04 +0000 |
commit | 1680f2c613808c4995dd6b42cab442b3e93cc68e (patch) | |
tree | 1938a37960ec49caa1db696bd2703625a921b427 /net-wireless | |
parent | Maskung unkeyworded deps of media-gfx/fim (diff) | |
download | gentoo-2-1680f2c613808c4995dd6b42cab442b3e93cc68e.tar.gz gentoo-2-1680f2c613808c4995dd6b42cab442b3e93cc68e.tar.bz2 gentoo-2-1680f2c613808c4995dd6b42cab442b3e93cc68e.zip |
Revision bump: add support for 3.10 kernels, wrt bug #477372. Patch submitted by Constantine Kozlov <tempor.demonius AT gmail.com>. Drop old revisions
(Portage version: 2.2.0/cvs/Linux x86_64, signed Manifest commit with key 0x1F357D42)
Diffstat (limited to 'net-wireless')
-rw-r--r-- | net-wireless/broadcom-sta/ChangeLog | 11 | ||||
-rw-r--r-- | net-wireless/broadcom-sta/broadcom-sta-6.30.223.30-r2.ebuild (renamed from net-wireless/broadcom-sta/broadcom-sta-6.30.223.30-r1.ebuild) | 6 | ||||
-rw-r--r-- | net-wireless/broadcom-sta/broadcom-sta-6.30.223.30.ebuild | 82 | ||||
-rw-r--r-- | net-wireless/broadcom-sta/files/broadcom-sta-6.30.223.30-linux-3.10.0.patch | 102 |
4 files changed, 116 insertions, 85 deletions
diff --git a/net-wireless/broadcom-sta/ChangeLog b/net-wireless/broadcom-sta/ChangeLog index fe9fae438fa6..1ae9f15838d2 100644 --- a/net-wireless/broadcom-sta/ChangeLog +++ b/net-wireless/broadcom-sta/ChangeLog @@ -1,6 +1,15 @@ # ChangeLog for net-wireless/broadcom-sta # Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/net-wireless/broadcom-sta/ChangeLog,v 1.52 2013/05/12 10:52:13 pinkbyte Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-wireless/broadcom-sta/ChangeLog,v 1.53 2013/08/23 12:31:04 pinkbyte Exp $ + +*broadcom-sta-6.30.223.30-r2 (23 Aug 2013) + + 23 Aug 2013; Sergey Popov <pinkbyte@gentoo.org> + -broadcom-sta-6.30.223.30.ebuild, -broadcom-sta-6.30.223.30-r1.ebuild, + +broadcom-sta-6.30.223.30-r2.ebuild, + +files/broadcom-sta-6.30.223.30-linux-3.10.0.patch: + Revision bump: add support for 3.10 kernels, wrt bug #477372. Patch submitted + by Constantine Kozlov <tempor.demonius AT gmail.com>. Drop old revisions 12 May 2013; Sergey Popov <pinkbyte@gentoo.org> broadcom-sta-5.100.82.112-r2.ebuild: diff --git a/net-wireless/broadcom-sta/broadcom-sta-6.30.223.30-r1.ebuild b/net-wireless/broadcom-sta/broadcom-sta-6.30.223.30-r2.ebuild index 6c1e0683437e..4965eb540bed 100644 --- a/net-wireless/broadcom-sta/broadcom-sta-6.30.223.30-r1.ebuild +++ b/net-wireless/broadcom-sta/broadcom-sta-6.30.223.30-r2.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2013 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-wireless/broadcom-sta/broadcom-sta-6.30.223.30-r1.ebuild,v 1.2 2013/05/12 10:45:38 pinkbyte Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-wireless/broadcom-sta/broadcom-sta-6.30.223.30-r2.ebuild,v 1.1 2013/08/23 12:31:04 pinkbyte Exp $ EAPI="5" inherit eutils linux-info linux-mod unpacker @@ -72,8 +72,10 @@ src_prepare() { EPATCH_FORCE="yes" EPATCH_EXCLUDE="0002* 0004* 0005*" EPATCH_SOURCE="${S}/patches" EPATCH_SUFFIX=patch epatch # Makefile.patch: keep `emake install` working # linux-3.9.0.patch: add support for kernel 3.9.0 +# linux-3.10.0.patch: add support for kernel 3.10, bug #477372 epatch "${FILESDIR}/${P}-makefile.patch" \ - "${FILESDIR}/${P}-linux-3.9.0.patch" + "${FILESDIR}/${P}-linux-3.9.0.patch" \ + "${FILESDIR}/${P}-linux-3.10.0.patch" mv "${S}/lib/wlc_hybrid.o_shipped_"* "${S}/lib/wlc_hybrid.o_shipped" \ || die "Where is the blob?" diff --git a/net-wireless/broadcom-sta/broadcom-sta-6.30.223.30.ebuild b/net-wireless/broadcom-sta/broadcom-sta-6.30.223.30.ebuild deleted file mode 100644 index 1ccc7f1a0dda..000000000000 --- a/net-wireless/broadcom-sta/broadcom-sta-6.30.223.30.ebuild +++ /dev/null @@ -1,82 +0,0 @@ -# Copyright 1999-2013 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-wireless/broadcom-sta/broadcom-sta-6.30.223.30.ebuild,v 1.1 2013/05/01 07:22:47 pinkbyte Exp $ - -EAPI="5" -inherit eutils linux-mod unpacker - -DESCRIPTION="Broadcom's IEEE 802.11a/b/g/n hybrid Linux device driver." -HOMEPAGE="https://launchpad.net/ubuntu/+source/bcmwl http://www.broadcom.com/support/802.11/linux_sta.php" -BASE_URI="https://launchpad.net/~albertomilone/+archive/broadcom/+files" -BASE_NAME="bcmwl-kernel-source_${PV}%2Bbdcom-0ubuntu1%7Eppa1_" -SRC_URI="amd64? ( ${BASE_URI}/${BASE_NAME}amd64.deb ) - x86? ( ${BASE_URI}/${BASE_NAME}i386.deb )" - -LICENSE="Broadcom" -KEYWORDS="-* ~amd64 ~x86" - -RESTRICT="mirror" - -DEPEND="virtual/linux-sources" -RDEPEND="" - -#S="${WORKDIR}" -S="${WORKDIR}/usr/src/bcmwl-${PV}+bdcom" - -MODULE_NAMES="wl(net/wireless)" -MODULESD_WL_ALIASES=("wlan0 wl") - -pkg_setup() { - # bug #300570 - # NOTE<lxnay>: module builds correctly anyway with b43 and SSB enabled - # make checks non-fatal. The correct fix is blackisting ssb and, perhaps - # b43 via udev rules. Moreover, previous fix broke binpkgs support. - CONFIG_CHECK="~!B43 ~!SSB" - if kernel_is ge 2 6 32; then - CONFIG_CHECK="${CONFIG_CHECK} CFG80211 LIB80211 ~!MAC80211" - elif kernel_is ge 2 6 31; then - CONFIG_CHECK="${CONFIG_CHECK} LIB80211 WIRELESS_EXT ~!MAC80211" - elif kernel_is ge 2 6 29; then - CONFIG_CHECK="${CONFIG_CHECK} LIB80211 WIRELESS_EXT ~!MAC80211 COMPAT_NET_DEV_OPS" - elif kernel_is ge 3 8 0; then - ewarn "Due to licensing issues this driver is unusable with kernel 3.8." - ewarn "Meaning: This build will likely not succeed." - else - CONFIG_CHECK="${CONFIG_CHECK} IEEE80211 IEEE80211_CRYPT_TKIP" - fi - linux-mod_pkg_setup - - BUILD_PARAMS="-C ${KV_DIR} M=${S}" - BUILD_TARGETS="wl.ko" -} - -src_unpack() { - local arch_suffix - if use amd64; then - arch_suffix="amd64" - else - arch_suffix="i386" - fi - unpack_deb "${BASE_NAME}${arch_suffix}.deb" -} - -src_prepare() { - einfo - einfo "These patches come from some mighty proficient Debian programmer" - einfo "whose work I shamelessly exploit for Gentoo's benefit." - einfo "This ebuild was tested with 3.7.10-gentoo-r1." - einfo "If one of them patches fails against other versions, please" - einfo "file a bug about it at https://bugs.gentoo.org" - einfo -# Filter the outdated patches here -# This needs more testing against multiple versions. -# So far the filtered patches seem to be cruft from older versions. - EPATCH_FORCE="yes" EPATCH_EXCLUDE="0002* 0004* 0005*" EPATCH_SOURCE="${S}/patches" EPATCH_SUFFIX=patch epatch -# keep `emake install` working - epatch "${FILESDIR}/${P}-makefile.patch" - - mv "${S}/lib/wlc_hybrid.o_shipped_"* "${S}/lib/wlc_hybrid.o_shipped" \ - || die "Where is the blob?" - - epatch_user -} diff --git a/net-wireless/broadcom-sta/files/broadcom-sta-6.30.223.30-linux-3.10.0.patch b/net-wireless/broadcom-sta/files/broadcom-sta-6.30.223.30-linux-3.10.0.patch new file mode 100644 index 000000000000..c575f289a26e --- /dev/null +++ b/net-wireless/broadcom-sta/files/broadcom-sta-6.30.223.30-linux-3.10.0.patch @@ -0,0 +1,102 @@ +diff -Naur bcmwl-6.30.223.30+bdcom.orig/src/src/wl/sys/wl_linux.c bcmwl-6.30.223.30+bdcom/src/src/wl/sys/wl_linux.c +--- bcmwl-6.30.223.30+bdcom.orig/src/src/wl/sys/wl_linux.c 2013-04-23 12:31:31.011588881 +0200 ++++ bcmwl-6.30.223.30+bdcom/src/src/wl/sys/wl_linux.c 2013-05-20 18:27:18.830187333 +0200 +@@ -3229,7 +3229,12 @@ + wl_tkip_printstats(wl_info_t *wl, bool group_key) + { + #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 14) ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 10, 0) ++ struct seq_file sfile; ++ struct seq_file *debug_buf = &sfile; ++#else + char debug_buf[512]; ++#endif + int idx; + if (wl->tkipmodops) { + if (group_key) { +@@ -3242,7 +3247,11 @@ + wl->tkipmodops->print_stats(debug_buf, wl->tkip_ucast_data); + else + return; ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 10, 0) ++ printk("%s: TKIP stats from module: %s\n", debug_buf->buf, group_key?"Bcast":"Ucast"); ++#else + printk("%s: TKIP stats from module: %s\n", debug_buf, group_key?"Bcast":"Ucast"); ++#endif + } + #endif + } +@@ -3401,17 +3410,24 @@ + return 0; + } + ++#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 10, 0) + static int + wl_proc_read(char *buffer, char **start, off_t offset, int length, int *eof, void *data) ++#else ++static ssize_t ++wl_proc_read (struct file *filp, char __user *buffer, size_t length, loff_t *data) ++#endif + { + wl_info_t * wl = (wl_info_t *)data; + int bcmerror, to_user; + int len; + ++#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 10, 0) + if (offset > 0) { + *eof = 1; + return 0; + } ++#endif + + if (!length) { + WL_ERROR(("%s: Not enough return buf space\n", __FUNCTION__)); +@@ -3424,8 +3440,13 @@ + return len; + } + ++#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 10, 0) + static int + wl_proc_write(struct file *filp, const char *buff, unsigned long length, void *data) ++#else ++static ssize_t ++wl_proc_write (struct file *filp, const char __user *buff, size_t length, loff_t *data) ++#endif + { + wl_info_t * wl = (wl_info_t *)data; + int from_user = 0; +@@ -3455,19 +3476,34 @@ + return length; + } + ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 10, 0) ++static const struct file_operations wl_fops = { ++ .owner = THIS_MODULE, ++ .read = wl_proc_read, ++ .write = wl_proc_write, ++}; ++#endif ++ + static int + wl_reg_proc_entry(wl_info_t *wl) + { + char tmp[32]; + sprintf(tmp, "%s%d", HYBRID_PROC, wl->pub->unit); ++#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 10, 0) + if ((wl->proc_entry = create_proc_entry(tmp, 0644, NULL)) == NULL) { + WL_ERROR(("%s: create_proc_entry %s failed\n", __FUNCTION__, tmp)); ++#else ++ if ((wl->proc_entry = proc_create(tmp, 0644, NULL, &wl_fops)) == NULL) { ++ WL_ERROR(("%s: proc_create %s failed\n", __FUNCTION__, tmp)); ++#endif + ASSERT(0); + return -1; + } ++#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 10, 0) + wl->proc_entry->read_proc = wl_proc_read; + wl->proc_entry->write_proc = wl_proc_write; + wl->proc_entry->data = wl; ++#endif + return 0; + } + #ifdef WLOFFLD |