diff options
author | Sergey Popov <pinkbyte@gentoo.org> | 2013-05-12 10:50:34 +0000 |
---|---|---|
committer | Sergey Popov <pinkbyte@gentoo.org> | 2013-05-12 10:50:34 +0000 |
commit | 802b80e8ff1be4523a9e85a767779a2abb0450c1 (patch) | |
tree | 06bf7fd6f1e9d8b3d2f30993315616ec10c2e8cf /net-wireless/broadcom-sta | |
parent | Remove incorrect explicit call to linux-info_pkg_setup (diff) | |
download | historical-802b80e8ff1be4523a9e85a767779a2abb0450c1.tar.gz historical-802b80e8ff1be4523a9e85a767779a2abb0450c1.tar.bz2 historical-802b80e8ff1be4523a9e85a767779a2abb0450c1.zip |
Revision bump: add compatibility with more kernel versions, wrt bugs #437898 and #468388, thanks to M. B. <tomboy64 AT sina.cn>
Package-Manager: portage-2.2.0_alpha173/cvs/Linux x86_64
Manifest-Sign-Key: 0x1F357D42
Diffstat (limited to 'net-wireless/broadcom-sta')
9 files changed, 305 insertions, 9 deletions
diff --git a/net-wireless/broadcom-sta/ChangeLog b/net-wireless/broadcom-sta/ChangeLog index 590780a6cbb5..f806138053b3 100644 --- a/net-wireless/broadcom-sta/ChangeLog +++ b/net-wireless/broadcom-sta/ChangeLog @@ -1,6 +1,19 @@ # 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.50 2013/05/12 10:45:38 pinkbyte Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-wireless/broadcom-sta/ChangeLog,v 1.51 2013/05/12 10:50:32 pinkbyte Exp $ + +*broadcom-sta-5.100.82.112-r3 (12 May 2013) + + 12 May 2013; Sergey Popov <pinkbyte@gentoo.org> + +broadcom-sta-5.100.82.112-r3.ebuild, + +files/broadcom-sta-5.100.82.112-linux-3.2-with-multicast.patch, + +files/broadcom-sta-5.100.82.112-linux-3.4.patch, + +files/broadcom-sta-5.100.82.112-linux-3.6.patch, + +files/broadcom-sta-5.100.82.112-linux-3.8.patch, + +files/broadcom-sta-5.100.82.112-linux-3.9.patch, + +files/broadcom-sta-5.100.82.112-remove-rssi-errors.patch: + Revision bump: add compatibility with more kernel versions, wrt bugs #437898 + and #468388, thanks to M. B. <tomboy64 AT sina.cn> 12 May 2013; Sergey Popov <pinkbyte@gentoo.org> broadcom-sta-6.30.223.30-r1.ebuild: diff --git a/net-wireless/broadcom-sta/Manifest b/net-wireless/broadcom-sta/Manifest index 97db92dc3529..686a1cb14cbd 100644 --- a/net-wireless/broadcom-sta/Manifest +++ b/net-wireless/broadcom-sta/Manifest @@ -4,7 +4,13 @@ Hash: SHA256 AUX broadcom-sta-5.10.91.9-license.patch 716 SHA256 53544703c15eb5e7f35721c436bfd0acf7db3de1df83b2e344bfc7090cb14cf1 SHA512 abdea6d154e66f43fd629eefe3dfd19a43318acfc54b3ac52abd9c8e839d25971214971b14429f5fb09091fbb16793d2ce3db1093c2ccca9496975085156b94c WHIRLPOOL 98ec882b0b0db93e5a19bc7aa465c7c758f3c36bd3fa5159458520b4d1a298549c5072a46f50d351dc48cfb01216b11a164291539f72455d37caad593d61483a AUX broadcom-sta-5.100.82.111-linux-3.0.patch 935 SHA256 cd349fef72bb33025e59105fefa69c3e60066985707f396e03235102ca938137 SHA512 00e3139158b53f80d03bb6aa5b4eb3435cc453b100ee57b638a138ae0b624c88946c63dc20d559f05bee451275d7662dfb8c29e68de11ebe04c8df87a6a86f70 WHIRLPOOL 84d0d41e8a3e2b0b248ffe5d4c5256c68e1533aa58049a34ffc98e5f0bd0a2a20cffd58adf20cdced79096d10134bec474af5f9666a225c2103dfffc93b030a8 AUX broadcom-sta-5.100.82.112-linux-2.6.39.patch 564 SHA256 2df2f242d6b34118cecbb8fb5c209356bf095436e8b553705f9f9f022648b53d SHA512 5b69b3b41af0a2f090b3fb021c188a846207b59ba0baf324cf4c93a5d3f9105fcd8f7e0aee592ebe0e898dd39c1988c65c8adeba643f1899f35287b0362b043e WHIRLPOOL 3d7dc0e31422b960038d52f5c62e15d1f0980dabb304cfc8cecc897af985a4ddcfaa90fb98150c25b2bc8040bb76c5c3e0b2afe8b7871397fbd20ed4a60debad +AUX broadcom-sta-5.100.82.112-linux-3.2-with-multicast.patch 428 SHA256 4ee90ad65d4c970f7858f09772e2c4f65a919d31c5560de1125be89962ec6da2 SHA512 dbcbb8ce3f53d021d5b43fb7ae400293c056afee656b071a317b1a3b55389ce3b6b648f7e02bddc7a20ac0cb03d2f149f9b68f355705eb7e2e0cbb4d948d74b4 WHIRLPOOL 3cefaed176eaabb337af925ad0c0d73ac7a6e59e117c0ae7dc42607da06c39e530a795af71418387a2796e767ff70f4be5aa317e7b71bb6891e088b85c49182d AUX broadcom-sta-5.100.82.112-linux-3.2.patch 541 SHA256 65e89b0950fe3972c3212c970d307f1b4ef633dfd622f94f4b5b816cb70af430 SHA512 e0d47ba584b302a3f6cf5da084d734cea44970a76e094bcc18acec07936ad77d7a69ef39c9333eef09256d0f7477d4d153b76e7378544ab40671c5aa1c7eedff WHIRLPOOL d681d691c4ca305dca3bee7501e831c9b64fe2912b5b91a3fc86c1d40606896c2cb479806eeb69a779905495f41a1513e75d0a4503b722459d1577559eb8ce35 +AUX broadcom-sta-5.100.82.112-linux-3.4.patch 355 SHA256 d5c27edc54e712f2925a4e61fb8255c2e4b84b22ff921c0550762c326671d196 SHA512 e38d37f539f60d8c6c88b58f45e48e5d177ec53df76f22d1ecbebee7052088b208160ad74cdf9c2d23f0b167678a27f8be1b8d7d40dfaef5621422bd4c58e0a2 WHIRLPOOL 796ee3092ad15828cbdd7d467a8a018bf167797278b5f3a5446a342fa04f95415ddcf3ab96a57852d0964358fc5a03fb713a22316eda20e14d808b6e9fa3961c +AUX broadcom-sta-5.100.82.112-linux-3.6.patch 2304 SHA256 8db35f014709fce04a3848a45f9fb2777da17eeaae313cfad032c30a957aeedc SHA512 d15f20c271c5a3acd240a731bbdb9b44a1e0f4f52b998a1746c44bba5ab21e9de9a21765eeaa9b41be26b1ef2596d6aed6b39d2b4e9872b0d4720a7402b914e1 WHIRLPOOL ad7a48dd487340c9df820ed48fcdf851ec11a5f683f0e4ad506d6952c7995c2f02bc9e4667c833a90797bf4a1a9737e0603442ae10c289f6e19180437442faf7 +AUX broadcom-sta-5.100.82.112-linux-3.8.patch 2503 SHA256 01bd90f9dd9b80ecc4b1b3bff8b10ad1f5d23bbecbfbeda13c4c99e6ae62cba3 SHA512 c39269a8b820a3084fc25522da860c128426979b53b39bfbf0c455d531a8592b3320d553b82284b5f1a5532ac0518159e5a034637f036e4f01c3a734aa3c1928 WHIRLPOOL d18d4df381559142d413075ee78f0d3bdd512b8353753b61519dc69414db636f5eb87b4ff2c2c75e7da62d148dcbb9a388656ce2bece24db13d3e351388202ae +AUX broadcom-sta-5.100.82.112-linux-3.9.patch 420 SHA256 9f8229e27a5d1f34deb3e956d1819ba09b39e2eb71bf15e110e41ca9275109ad SHA512 a902239d709f6aafff719beea4e1c1d97fb43e5d37743b70e70a8fc59610ee5e1329bbea7b45968f426b6d97d1ed03866de94e77deb36f70831e595ed71d2db6 WHIRLPOOL c82b711082889730cd057448246e1809f5007da2e26f643ff90b9f69385af0675f3da022e4afa8fe5ea9bfeb51faa4b888b5901b1441fa597f7d3734950ae8f2 +AUX broadcom-sta-5.100.82.112-remove-rssi-errors.patch 1284 SHA256 0a83f0bc58afdf48e97d69d1a2e30fd862e37ea5140fd3fbb7f644b858e43f79 SHA512 9e2a94a4367961e1e815b480d7b5aebd0ee9e32d2ce2b4a7e4d82dcf2cce47b11cb09a9e5c01ecc3035ea373e97d5e2d46d458ad4d204df67533cf14852cffc8 WHIRLPOOL 54791f855815a516a989df4298127cd6cc06f3b0ab611ddd32624d735fd81a31b1402ba1bb1cbc7ed015aa0494309e918cce14535f850134c4e615ff03d0511c AUX broadcom-sta-5.100.82.38-gcc.patch 417 SHA256 82ad7a047e8e384fe4a571e054fabb0f629c81012f035f3525fa51eb611cc736 SHA512 d271493861fedf937be6f534fab1eaec95e7db3324583bfafb52445d1a5001c07d596fac88b150c7bd83e02d0095ad2867dc2f0ffbcfb320f4536d557d4a663e WHIRLPOOL 32b270e795503b5cb97c2407b472b62a93efffb14f2147680f45ad063839aa59526baadc72e9eeab424f1d36f236fd0e1bc40ae7ea9477d0dc2c043445fa7fc7 AUX broadcom-sta-6.30.223.30-linux-3.9.0.patch 397 SHA256 d000f4d30a816368ad040f2271e019c8116c687d65999267b91d91eb73c63016 SHA512 600ea6d99096c4eba38ff29bdcff0c334bb4d6c6c98613a824d8fffc878992db9219d131e3bf1fe5c93f272df850f13b1d14b41a3402083733d337a882f01834 WHIRLPOOL 41d7b189840a7b68d5132388b8909438933d31803dd5bfa0abd61057636dd037c58865df4140ba76a73f32089f221ea5f6f5f3ba60f6047145551511892edb60 AUX broadcom-sta-6.30.223.30-makefile.patch 497 SHA256 3f1332be115991f21b03cf50de0af212faa8083017bf8ba724f110c602005060 SHA512 f403669dede71f3c9f2886bfa535518a9e89a4398d1da7789ff955f15c493dd5ede1f304b0980c300c580ac1ae2464a4e395fb40b72dffa98a5a015c3e7d74c5 WHIRLPOOL 9bad191388f78608d1cc7f13488dcf9dbcfe626a6522af3bf477aa46a2e7736921d48ab78750fa2e3b3aff10cd353a12a7a331b159988d263e5fd3fdb4b2a77f @@ -13,18 +19,19 @@ DIST bcmwl-kernel-source_6.30.223.30%2Bbdcom-0ubuntu1%7Eppa1_i386.deb 1732452 SH DIST hybrid-portsrc_x86_32-v5_100_82_112.tar.gz 1139221 SHA256 85b4e3163b383943d5002a571efbd03f212d010ba0962ebdefb201fe6ce270e7 DIST hybrid-portsrc_x86_64-v5_100_82_112.tar.gz 1175410 SHA256 9cd32f164c748b4353f10a74f3b00640bb281e4b79f17114aac581e0b3cd4ae3 SHA512 485c4a661c30ebc076499f48d468ef30afdd5fdfd6458f4cd25fceaf15969f33e46695a173908d05e635a572efc152b5ae973493d53d5b4089335b03b0ba9a6d WHIRLPOOL 2e3259d3fde1830aeddf8ee38a070f891c0acb167bfe99d623b6102f1bc8ee8f3f776efc6370b1067063eea2069a93e5678e6ea3b3ab054e7d4d30b9f5db8f46 EBUILD broadcom-sta-5.100.82.112-r2.ebuild 1984 SHA256 c9b09ddfb8b1971d34140c99a1e8b0a3e39ce4181da3929feb9cd6958233faee SHA512 de2eed7c94de99e13fd3fcc8a619899140e5d8ccfc9710bbf71ac55d92552e4e6da3bfa26b03e096e8aa989d1e13fe0d65c3941d9137635f515487d103313563 WHIRLPOOL c59250db373c31d78d12f7137a6d8f9e4b7f95e93cd135a2c55161b8371e13c32d8198f7261e4ecbe7adfd81a2a3bd478ebb1b6b791d4f10236915ec7a4a2d68 +EBUILD broadcom-sta-5.100.82.112-r3.ebuild 2798 SHA256 e991c667833e8cc8cf155542f7516aa9e69f2bc2e52d04ef09f63ae8760b1ad3 SHA512 0fd87beec50cf4a291d8c050aecb7ddbf6e4e2a56fac323e79afa4a77074beecefda3c64088e0f863b0ce683be08fc9a9f3c9ae34460d9687e52b02b4c73e265 WHIRLPOOL d49ed3eb47356515f5cd8533ea1b8cccd675306dd6a9c1a20e391a2b62fe1efd1122c1e41bcee56a9aaddbabf6a7cc4f423380b2bd6e10928dfaa98be39189be EBUILD broadcom-sta-6.30.223.30-r1.ebuild 3084 SHA256 fc0a13d30c3bf55a15f1c1892c1601689a976bde2788f811db221a8178609e50 SHA512 bd2c3ba740bcef1a4e1cafa6745499e2e0e783109d8b41d0143b5b2fc020b4f155b0c47b35e1fe20dace7ad258c3303ffce224ff9ca4c26766fce3e3e60ab8fa WHIRLPOOL 621b9f55c6b32867056004caa53ff812f19411aed0c8b43c1617aa69dd410d4b76a6b415823804f4b2f0517238530cd5fbc0269dd293c42314041423ce1032a7 EBUILD broadcom-sta-6.30.223.30.ebuild 2793 SHA256 5ff942eef90c01a1729a491a6ab09f4e627c18bc4a63958e89e5a4adf8126411 SHA512 63e540fb2a82313af185a3964a3d1d211c9c6a5f2a96af8b89251843f04f9c4d6710013397428194a56889688214e4c8a2f1330abd8718c941e5dffe75271aef WHIRLPOOL c167bbac867a84fb7fbd2545fd9ece1a8b50fe85d769da4f17ab64329ba05c9431b33699757ab65fee049245c9ac3a61fdd904d56d3c4893377f42009489d8e2 -MISC ChangeLog 11797 SHA256 f984168514b36fb476837f54841f4413cef5cc3d6aaae1de862e7b8557fefa9a SHA512 e4badb1017de7b6970017a3356b8f455fc6d5caf1350f5a8f4b05eab2a99b195b26688a1db1cfb4153fab9d276d2a6719b6855cd6416ef9e7b15bdd0f82e0fe4 WHIRLPOOL 0420eddcac65404257ab76d99ac39a2b54c907086cfdcda9fef1b87ea7b59fbba661cb3a22ab9665d7a42d1278f87adc1a4c6fde969f5087692c3d0c907af7e6 +MISC ChangeLog 12401 SHA256 6568126791eeb265812603de3434e9984c8a1fe55e6004092818ed188675c06e SHA512 7f1b4edbd03e507b49223ec28d24443227945033d208b624bdf583ecad1143af367b3216f6c7973c6fc336c06bfb37ce81ec451d6a93de614d80fd1efb682d08 WHIRLPOOL 1868c328fb643b9675f328eb1d6403c078d1e47ee03bbf7eee78e607ae8a056d0a279c4804ffe9dbf30fcf54ab864e8779e601bec7fc7895843f58674120b400 MISC metadata.xml 231 SHA256 1be6a1cf2be181172bfc3474a5815af1d8bca1e0c3b549be12b2cc6acaa7a665 SHA512 6ce376c5f35f2025d1b06b9ed0394f15011918553f5c4d46257998db2bfda39ec837d84527fdd9315c43c3dc16d2c5b9f78fdf27da4e024965a84441ab24fedc WHIRLPOOL 932d4cbd0f64b2cf8b2932576069e47149ae20a54024bb9ebfbb9ad8026413859a8299b102927fae3b708a02a98ef3d89ca1d9c09b1c840f348c85d782cd9b6b -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.19 (GNU/Linux) -iQEcBAEBCAAGBQJRj3LTAAoJECo/aRed9267rMYIAL8dIDSmnd/XsRLZO2XKVCig -RLv+VnGM8N4GkrZedGC6fT0KK9S/D+Xyc/RHzVdIFyDCStVGdftY9zbEsTFw6NRO -2HKGeIUqMcjBzlEb/NM22KoWSGmSaa99OLarGRDAoa+1e/c3MkDkrYljD4Xqur+u -IAddblpHjrAD+jIO8XQ67N4Rn85v/z9VDaW2NoO7Jz3wfffI6RHYTZAsMNIUT8eZ -kQclfKSFQmVKPgSacw85nP9LKdYM5kVZdr48uouXbpTtEP+nPFmCQ5TK9JAfrafb -YRQd30tte7YSb6i5tyUo5f54V3w0bMbBgBl/Yx6tblJU0usjxB6TmNNyvLNl0L4= -=KIIn +iQEcBAEBCAAGBQJRj3P5AAoJECo/aRed9267TbMIALNLWClnQEiW4mNYil7S5mM0 +9yAWo8BM2ZEf4l6ZPdr/OEK0DCXLfftKoZ4vX1J4bSXG63KeoXqbf8tIEszjq9eF +th3qp4lvvQdiRJQc2t8OZHGEkEk9LZGub5wlPvY9uh7g6BuJPmGXkJ6vXwMIodC+ +XaQzaS6pv2/xT+liy0cwGyPsFGSFhZLGk9kBATzpwmakzrb83z21Ro83z1heUZPn +0Z7IRIYhi7Arw5B5UfJIWFHF3xSosDBRl5yRuFCcZqMyZO4YrUv3bIJL6nqFM2gD +OsTvYTQtmIfck5ov70NM58atJqSNGjCauZmPHCIRYVp+29eTbVW+8dVj+av+OLw= +=XMVE -----END PGP SIGNATURE----- diff --git a/net-wireless/broadcom-sta/broadcom-sta-5.100.82.112-r3.ebuild b/net-wireless/broadcom-sta/broadcom-sta-5.100.82.112-r3.ebuild new file mode 100644 index 000000000000..7b3253c35c13 --- /dev/null +++ b/net-wireless/broadcom-sta/broadcom-sta-5.100.82.112-r3.ebuild @@ -0,0 +1,73 @@ +# 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-5.100.82.112-r3.ebuild,v 1.1 2013/05/12 10:50:32 pinkbyte Exp $ + +EAPI="5" +inherit eutils linux-mod + +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${PV//\./_}.tar.gz ) + amd64? ( ${SRC_BASE}64-v${PV//\./_}.tar.gz )" + +LICENSE="Broadcom" +KEYWORDS="-* ~amd64 ~x86" + +DEPEND="virtual/linux-sources" +RDEPEND="" + +RESTRICT="mirror" + +S="${WORKDIR}" + +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" + CONFIG_CHECK2="LIB80211 ~!MAC80211 ~LIB80211_CRYPT_TKIP" + ERROR_B43="B43: If you insist on building this, you must blacklist it!" + ERROR_SSB="SSB: If you insist on building this, you must blacklist it!" + ERROR_LIB80211="LIB80211: Please enable it. If you can't find it: enabling the driver for \"Intel PRO/Wireless 2100\" or \"Intel PRO/Wireless 2200BG\" (IPW2100 or IPW2200) should suffice." + ERROR_MAC80211="MAC80211: If you insist on building this, you must blacklist it!" + ERROR_PREEMPT_RCU="PREEMPT_RCU: Please do not set the Preemption Model to \"Preemptible Kernel\"; choose something else." + ERROR_LIB80211_CRYPT_TKIP="LIB80211_CRYPT_TKIP: You will need this for WPA." + if kernel_is ge 2 6 32; then + CONFIG_CHECK="${CONFIG_CHECK} ${CONFIG_CHECK2} CFG80211" + elif kernel_is ge 2 6 31; then + CONFIG_CHECK="${CONFIG_CHECK} ${CONFIG_CHECK2} WIRELESS_EXT ~!MAC80211" + elif kernel_is ge 2 6 29; then + CONFIG_CHECK="${CONFIG_CHECK} ${CONFIG_CHECK2} WIRELESS_EXT COMPAT_NET_DEV_OPS" + else + CONFIG_CHECK="${CONFIG_CHECK} IEEE80211 IEEE80211_CRYPT_TKIP" + fi + + linux-mod_pkg_setup + + BUILD_PARAMS="-C ${KV_DIR} M=${S}" + if kernel_is ge 3 6 0; then + BUILD_PARAMS="${BUILD_PARAMS} API=WEXT" + CONFIG_CHECK="${CONFIG_CHECK} WIRELESS_EXT" + fi + BUILD_TARGETS="wl.ko" +} + +src_prepare() { + epatch "${FILESDIR}/${PN}-5.10.91.9-license.patch" \ + "${FILESDIR}/${PN}-5.100.82.38-gcc.patch" \ + "${FILESDIR}/${PN}-5.100.82.111-linux-3.0.patch" \ + "${FILESDIR}/${P}-linux-2.6.39.patch" \ + "${FILESDIR}/${P}-linux-3.2-with-multicast.patch" \ + "${FILESDIR}/${P}-linux-3.4.patch" \ + "${FILESDIR}/${P}-linux-3.6.patch" \ + "${FILESDIR}/${P}-linux-3.8.patch" \ + "${FILESDIR}/${P}-linux-3.9.patch" \ + "${FILESDIR}/${P}-remove-rssi-errors.patch" + + epatch_user +} diff --git a/net-wireless/broadcom-sta/files/broadcom-sta-5.100.82.112-linux-3.2-with-multicast.patch b/net-wireless/broadcom-sta/files/broadcom-sta-5.100.82.112-linux-3.2-with-multicast.patch new file mode 100644 index 000000000000..c28bc0ee4ad6 --- /dev/null +++ b/net-wireless/broadcom-sta/files/broadcom-sta-5.100.82.112-linux-3.2-with-multicast.patch @@ -0,0 +1,14 @@ +--- src/wl/sys/wl_linux.c.old 2013-05-02 21:00:51.000000000 +0200 ++++ src/wl/sys/wl_linux.c 2013-05-02 21:04:00.000000000 +0200 +@@ -385,7 +385,11 @@ + #endif + .ndo_get_stats = wl_get_stats, + .ndo_set_mac_address = wl_set_mac_address, ++#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 2, 0) + .ndo_set_multicast_list = wl_set_multicast_list, ++#else ++ .ndo_set_rx_mode = wl_set_multicast_list, ++#endif + .ndo_do_ioctl = wl_ioctl + }; + diff --git a/net-wireless/broadcom-sta/files/broadcom-sta-5.100.82.112-linux-3.4.patch b/net-wireless/broadcom-sta/files/broadcom-sta-5.100.82.112-linux-3.4.patch new file mode 100644 index 000000000000..2f1ad562cecc --- /dev/null +++ b/net-wireless/broadcom-sta/files/broadcom-sta-5.100.82.112-linux-3.4.patch @@ -0,0 +1,12 @@ +--- src/wl/sys/wl_linux.c.old 2013-05-02 14:51:07.000000000 +0200 ++++ src/wl/sys/wl_linux.c 2013-05-02 14:51:14.000000000 +0200 +@@ -40,7 +40,9 @@ + #include <linux/pci_ids.h> + #define WLC_MAXBSSCFG 1 + ++#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 4, 0) + #include <asm/system.h> ++#endif + #include <asm/io.h> + #include <asm/irq.h> + #include <asm/pgtable.h> diff --git a/net-wireless/broadcom-sta/files/broadcom-sta-5.100.82.112-linux-3.6.patch b/net-wireless/broadcom-sta/files/broadcom-sta-5.100.82.112-linux-3.6.patch new file mode 100644 index 000000000000..17730dbe0c04 --- /dev/null +++ b/net-wireless/broadcom-sta/files/broadcom-sta-5.100.82.112-linux-3.6.patch @@ -0,0 +1,60 @@ +--- work.orig/src/wl/sys/wl_cfg80211.c 2012-11-05 21:12:30.402421835 +0100 ++++ work/src/wl/sys/wl_cfg80211.c 2012-11-05 21:21:13.962421835 +0100 +@@ -40,9 +40,15 @@ u32 wl_dbg_level = WL_DBG_ERR | WL_DBG_I + + static s32 wl_cfg80211_change_iface(struct wiphy *wiphy, struct net_device *ndev, + enum nl80211_iftype type, u32 *flags, struct vif_params *params); +-static s32 __wl_cfg80211_scan(struct wiphy *wiphy, struct net_device *ndev, ++static s32 __wl_cfg80211_scan(struct wiphy *wiphy, ++#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 6, 0) ++ struct net_device *ndev, ++#endif + struct cfg80211_scan_request *request, struct cfg80211_ssid *this_ssid); +-static s32 wl_cfg80211_scan(struct wiphy *wiphy, struct net_device *ndev, ++static s32 wl_cfg80211_scan(struct wiphy *wiphy, ++#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 6, 0) ++ struct net_device *ndev, ++#endif + struct cfg80211_scan_request *request); + static s32 wl_cfg80211_set_wiphy_params(struct wiphy *wiphy, u32 changed); + static s32 wl_cfg80211_join_ibss(struct wiphy *wiphy, struct net_device *dev, +@@ -496,10 +502,16 @@ wl_cfg80211_change_iface(struct wiphy *w + } + + static s32 +-__wl_cfg80211_scan(struct wiphy *wiphy, struct net_device *ndev, ++__wl_cfg80211_scan(struct wiphy *wiphy, ++#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 6, 0) ++ struct net_device *ndev, ++#endif + struct cfg80211_scan_request *request, + struct cfg80211_ssid *this_ssid) + { ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 6, 0) ++ struct net_device *ndev = request->wdev->netdev; ++#endif + struct wl_priv *wl = ndev_to_wl(ndev); + struct cfg80211_ssid *ssids; + struct wl_scan_req *sr = wl_to_sr(wl); +@@ -570,13 +582,20 @@ scan_out: + } + + static s32 +-wl_cfg80211_scan(struct wiphy *wiphy, struct net_device *ndev, ++wl_cfg80211_scan(struct wiphy *wiphy, ++#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 6, 0) ++ struct net_device *ndev, ++#endif + struct cfg80211_scan_request *request) + { + s32 err = 0; + + CHECK_SYS_UP(); ++#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 6, 0) + err = __wl_cfg80211_scan(wiphy, ndev, request, NULL); ++#else ++ err = __wl_cfg80211_scan(wiphy, request, NULL); ++#endif + if (err) { + WL_DBG(("scan error (%d)\n", err)); + return err; diff --git a/net-wireless/broadcom-sta/files/broadcom-sta-5.100.82.112-linux-3.8.patch b/net-wireless/broadcom-sta/files/broadcom-sta-5.100.82.112-linux-3.8.patch new file mode 100644 index 000000000000..da2ddcca437e --- /dev/null +++ b/net-wireless/broadcom-sta/files/broadcom-sta-5.100.82.112-linux-3.8.patch @@ -0,0 +1,71 @@ +--- /src/include/bcmutils.h~ 2011-10-22 18:55:54.000000000 +0200 ++++ /src/include/bcmutils.h 2013-02-21 09:08:19.947034424 +0100 +@@ -555,7 +555,11 @@ extern void printbig(char *buf); + extern void prhex(const char *msg, uchar *buf, uint len); + + extern bcm_tlv_t *BCMROMFN(bcm_next_tlv)(bcm_tlv_t *elt, int *buflen); ++#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 8, 0) + extern bcm_tlv_t *BCMROMFN(bcm_parse_tlvs)(void *buf, int buflen, uint key); ++#else ++extern bcm_tlv_t *BCMROMFN(bcm_parse_tlvs)(const void *buf, int buflen, uint key); ++#endif + extern bcm_tlv_t *BCMROMFN(bcm_parse_ordered_tlvs)(void *buf, int buflen, uint key); + + extern const char *bcmerrorstr(int bcmerror); +--- /src/wl/sys/wl_cfg80211.c~ 2013-02-21 09:06:18.971297216 +0100 ++++ /src/wl/sys/wl_cfg80211.c 2013-02-21 09:10:56.682019739 +0100 +@@ -744,7 +744,11 @@ wl_cfg80211_join_ibss(struct wiphy *wiph + else + memset(&join_params.params.bssid, 0, ETHER_ADDR_LEN); + +- wl_ch_to_chanspec(params->channel, &join_params, &join_params_size); ++#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 8, 0) ++ wl_ch_to_chanspec(params->channel, &join_params, &join_params_size); ++#else ++ wl_ch_to_chanspec(params->chandef.chan, &join_params, &join_params_size); ++#endif + + err = wl_dev_ioctl(dev, WLC_SET_SSID, &join_params, join_params_size); + if (err) { +@@ -2047,9 +2051,14 @@ static s32 wl_update_bss_info(struct wl_ + struct bcm_tlv *tim; + u16 beacon_interval; + s32 dtim_period; +- size_t ie_len; +- u8 *ie; + s32 err = 0; ++ size_t ie_len; ++#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 8, 0) ++ u8 *ie; ++#else ++ const u8 *ie; ++ const struct cfg80211_bss_ies *ies; ++#endif + + ssid = &wl->profile->ssid; + bss = cfg80211_get_bss(wl_to_wiphy(wl), NULL, (s8 *)&wl->bssid, +@@ -2079,8 +2088,22 @@ static s32 wl_update_bss_info(struct wl_ + beacon_interval = cpu_to_le16(bi->beacon_period); + } else { + WL_DBG(("Found the AP in the list - BSSID %pM\n", bss->bssid)); +- ie = bss->information_elements; +- ie_len = bss->len_information_elements; ++#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 8, 0) ++ ie = bss->information_elements; ++ ie_len = bss->len_information_elements; ++#else ++ rcu_read_lock(); ++ ies = (const struct cfg80211_bss_ies*)rcu_dereference(bss->ies); ++ if (!ies) { ++ /* This should never happen */ ++ rcu_read_unlock(); ++ err = -EIO; ++ goto update_bss_info_out; ++ } ++ ie = ies->data; ++ ie_len = (size_t)(ies->len); ++ rcu_read_unlock(); ++#endif + beacon_interval = bss->beacon_interval; + cfg80211_put_bss(bss); + } diff --git a/net-wireless/broadcom-sta/files/broadcom-sta-5.100.82.112-linux-3.9.patch b/net-wireless/broadcom-sta/files/broadcom-sta-5.100.82.112-linux-3.9.patch new file mode 100644 index 000000000000..e1f168f12707 --- /dev/null +++ b/net-wireless/broadcom-sta/files/broadcom-sta-5.100.82.112-linux-3.9.patch @@ -0,0 +1,14 @@ +--- src/wl/sys/wl_cfg80211.c.old 2013-05-02 17:10:36.000000000 +0200 ++++ src/wl/sys/wl_cfg80211.c 2013-05-02 17:12:27.000000000 +0200 +@@ -2119,7 +2119,11 @@ + rcu_read_unlock(); + #endif + beacon_interval = bss->beacon_interval; ++#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 9, 0) + cfg80211_put_bss(bss); ++#else ++ cfg80211_put_bss(wl_to_wiphy(wl), bss); ++#endif + } + + tim = bcm_parse_tlvs(ie, ie_len, WLAN_EID_TIM); diff --git a/net-wireless/broadcom-sta/files/broadcom-sta-5.100.82.112-remove-rssi-errors.patch b/net-wireless/broadcom-sta/files/broadcom-sta-5.100.82.112-remove-rssi-errors.patch new file mode 100644 index 000000000000..7f26746ee7a5 --- /dev/null +++ b/net-wireless/broadcom-sta/files/broadcom-sta-5.100.82.112-remove-rssi-errors.patch @@ -0,0 +1,32 @@ +diff -Naur broadcom-sta-5.100.82.112.orig/amd64/src/wl/sys/wl_linux.c broadcom-sta-5.100.82.112/amd64/src/wl/sys/wl_linux.c +--- broadcom-sta-5.100.82.112.orig/amd64/src/wl/sys/wl_linux.c 2012-05-24 09:45:02.520119025 +0400 ++++ broadcom-sta-5.100.82.112/amd64/src/wl/sys/wl_linux.c 2012-05-24 09:46:52.116121834 +0400 +@@ -1581,11 +1581,7 @@ + } + + WL_LOCK(wl); +- if (!capable(CAP_NET_ADMIN)) { +- bcmerror = BCME_EPERM; +- } else { +- bcmerror = wlc_ioctl(wl->wlc, ioc.cmd, buf, ioc.len, wlif->wlcif); +- } ++ bcmerror = wlc_ioctl(wl->wlc, ioc.cmd, buf, ioc.len, wlif->wlcif); + WL_UNLOCK(wl); + + done1: + +diff -Naur broadcom-sta-5.100.82.112.orig/amd64/src/wl/sys/wl_cfg80211.c broadcom-sta-5.100.82.112/amd64/src/wl/sys/wl_cfg80211.c +--- broadcom-sta-5.100.82.112.orig/amd64/src/wl/sys/wl_cfg80211.c 2012-05-24 09:45:33.268119813 +0400 ++++ broadcom-sta-5.100.82.112/amd64/src/wl/sys/wl_cfg80211.c 2012-05-24 09:55:30.184135098 +0400 +@@ -1466,7 +1466,10 @@ + scb_val.val = 0; + err = wl_dev_ioctl(dev, WLC_GET_RSSI, &scb_val, sizeof(scb_val_t)); + if (err) { +- WL_ERR(("Could not get rssi (%d)\n", err)); ++ if (err != -EINVAL) { ++ // Don't fill syslog with EINVAL error ++ WL_ERR(("Could not get rssi (%d)\n", err)); ++ } + return err; + } + rssi = dtoh32(scb_val.val); |