summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHenrik Brix Andersen <brix@gentoo.org>2005-11-17 13:19:59 +0000
committerHenrik Brix Andersen <brix@gentoo.org>2005-11-17 13:19:59 +0000
commitef64430f022b258be2d26f074abd3da47d43b18e (patch)
tree4531fa0eb5e5cfbd2ffea9cf349308e361a6a912 /net-wireless
parentgtk2 removed (diff)
downloadgentoo-2-ef64430f022b258be2d26f074abd3da47d43b18e.tar.gz
gentoo-2-ef64430f022b258be2d26f074abd3da47d43b18e.tar.bz2
gentoo-2-ef64430f022b258be2d26f074abd3da47d43b18e.zip
Added a few upstream patches.
(Portage version: 2.0.51.22-r3)
Diffstat (limited to 'net-wireless')
-rw-r--r--net-wireless/ipw2200/ChangeLog10
-rw-r--r--net-wireless/ipw2200/Manifest7
-rw-r--r--net-wireless/ipw2200/files/digest-ipw2200-1.0.8-r11
-rw-r--r--net-wireless/ipw2200/files/ipw2200-1.0.8-broadcast.patch14
-rw-r--r--net-wireless/ipw2200/files/ipw2200-1.0.8-slabcorrupt.patch12
-rw-r--r--net-wireless/ipw2200/files/ipw2200-1.0.8-txbusy.patch24
-rw-r--r--net-wireless/ipw2200/ipw2200-1.0.8-r1.ebuild103
7 files changed, 169 insertions, 2 deletions
diff --git a/net-wireless/ipw2200/ChangeLog b/net-wireless/ipw2200/ChangeLog
index 716e523ccb53..ba2f3d018c80 100644
--- a/net-wireless/ipw2200/ChangeLog
+++ b/net-wireless/ipw2200/ChangeLog
@@ -1,6 +1,14 @@
# ChangeLog for net-wireless/ipw2200
# Copyright 1999-2005 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-wireless/ipw2200/ChangeLog,v 1.49 2005/10/21 18:14:16 brix Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-wireless/ipw2200/ChangeLog,v 1.50 2005/11/17 13:19:59 brix Exp $
+
+*ipw2200-1.0.8-r1 (17 Nov 2005)
+
+ 17 Nov 2005; Henrik Brix Andersen <brix@gentoo.org>
+ +files/ipw2200-1.0.8-broadcast.patch,
+ +files/ipw2200-1.0.8-slabcorrupt.patch, +files/ipw2200-1.0.8-txbusy.patch,
+ +ipw2200-1.0.8-r1.ebuild:
+ Added a few upstream patches.
*ipw2200-1.0.8 (21 Oct 2005)
diff --git a/net-wireless/ipw2200/Manifest b/net-wireless/ipw2200/Manifest
index 3207e2cd8eab..154b7656c7e3 100644
--- a/net-wireless/ipw2200/Manifest
+++ b/net-wireless/ipw2200/Manifest
@@ -2,6 +2,7 @@ MD5 3460fc97bd050b5cd277f201410074f3 ipw2200-1.0.6-r3.ebuild 3209
MD5 03551f14b4409796623fb865ed2abf97 ipw2200-1.0.4.ebuild 2449
MD5 7afca8db2613b9fc32d5f7005b4db15d ipw2200-1.0.6.ebuild 2158
MD5 a1d82c4728a3f608b762fe63c4910f42 ipw2200-1.0.1.ebuild 2488
+MD5 ed4bcd6b493db1ac79361f0e844a8bc5 ipw2200-1.0.8-r1.ebuild 2914
MD5 4ce2b88ec5f872d1621a5af9cf1d0da1 ipw2200-1.0.6-r2.ebuild 2304
MD5 42439eca11ec251fefc3ebb0efd0416d ipw2200-1.0.8.ebuild 2877
MD5 b2138b76ba85eeea301d8fa9f72470df ipw2200-1.0.3.ebuild 2488
@@ -9,7 +10,7 @@ MD5 4178d14fb9964ddf254ad3af2adb2410 ipw2200-1.0.7-r1.ebuild 2990
MD5 8a1b21691e17dc6de38c7238cd4e4522 ipw2200-1.0.5.ebuild 2145
MD5 7453a3247e41a7bf8c6e939cf55c45f0 ipw2200-1.0.6-r1.ebuild 2260
MD5 abf5e01547412553998be01d0b1055c8 ipw2200-1.0.7.ebuild 2877
-MD5 1cc2a19c3c75b0eb82f757e1386a56af ChangeLog 8863
+MD5 0593cb3570161bbafc78979bbe0765c6 ChangeLog 9128
MD5 b280eebc74d70d85e664debf1adce2c3 metadata.xml 255
MD5 57bc9c6eb5f4015c48658642ca771b54 files/ipw2200-1.0.6-ibss-wep.patch 1249
MD5 5cc9277eb455ec7081a6f1a362318835 files/ipw2200-1.0.7-broadcast.patch 2331
@@ -21,12 +22,14 @@ MD5 2ba8f54679172b49a799779c1a02127a files/ipw2200-1.0.6-hwcrypt-wpa-fix4.patch
MD5 9e25eeda7c745bca8c5cf72537dd31f5 files/ipw2200-1.0.1-suspend2.patch 448
MD5 af6756863c64cdfc93cd53556f8b397b files/ipw2200-1.0.1-is_multicast_ether_addr.patch 631
MD5 64c7772c52dad7ac8aceb580288d2eb8 files/ipw2200-1.0.6-dup-without-retry.patch 1124
+MD5 a3a2dd68cce2a4d05217369daab108f1 files/ipw2200-1.0.8-broadcast.patch 594
MD5 8e45f8fd6f60e9d8b6b343ae2359f456 files/ipw2200-1.0.6-reset-mode-fix.patch 621
MD5 a09593c7d4c70507961ceb3e9788f282 files/ipw2200-1.0.6-irq_override.patch 1219
MD5 7a64b674dbd99046028827c6417409e1 files/ipw2200-1.0.3-is_multicast_ether_addr.patch 715
MD5 b67059711d35db39da22e42fd1a5a7d4 files/ipw2200-1.0.6-open_frag.patch 756
MD5 2a2177cb34ff1d51ca335f8786a41e92 files/ipw2200-1.0.6-channel_change_fw_err.patch 2830
MD5 d506e1d6b23fdd00ec0d812db1f3f05a files/ipw2200-1.0.6-broadcast.patch 992
+MD5 dd96f1bc93f2c8f03a81b87f641a5329 files/ipw2200-1.0.8-txbusy.patch 811
MD5 3ada2bd4ff1452839bc558b3e5e026f5 files/ipw2200-1.0.6-a_txpow.patch 5085
MD5 ba6c39e9a44ef971292c5f8e6a7c6897 files/ipw2200-1.0.3-suspend2.patch 522
MD5 d0074a6c01392cb21c47b8f370716a0f files/ipw2200-1.0.6-monitor_wep_fix.patch 714
@@ -34,6 +37,7 @@ MD5 aab93fcc37b1a1282d7a02e9b64430a3 files/digest-ipw2200-1.0.6-r1 62
MD5 aab93fcc37b1a1282d7a02e9b64430a3 files/digest-ipw2200-1.0.6-r2 62
MD5 aab93fcc37b1a1282d7a02e9b64430a3 files/digest-ipw2200-1.0.6-r3 62
MD5 a5c0ccca10c12b4e5d5a7df55df96dfd files/digest-ipw2200-1.0.7-r1 62
+MD5 88eeaaf4fc0ffcfd41dd873a1d085cb3 files/digest-ipw2200-1.0.8-r1 62
MD5 f20e5c312fa263336e4921aa6e42b56e files/ipw2200-1.0.6-pci_link-fix.patch 1298
MD5 d2a1aca212498ad4de9f4a79ac12026b files/digest-ipw2200-1.0.1 62
MD5 1953868cbb8ae6ee8eee55c5848417ab files/digest-ipw2200-1.0.3 62
@@ -42,3 +46,4 @@ MD5 0bc9168b6730de57fff46a22dacc8ea4 files/digest-ipw2200-1.0.5 62
MD5 aab93fcc37b1a1282d7a02e9b64430a3 files/digest-ipw2200-1.0.6 62
MD5 a5c0ccca10c12b4e5d5a7df55df96dfd files/digest-ipw2200-1.0.7 62
MD5 88eeaaf4fc0ffcfd41dd873a1d085cb3 files/digest-ipw2200-1.0.8 62
+MD5 a2de4d35e783a2aae5708846d8a7637c files/ipw2200-1.0.8-slabcorrupt.patch 522
diff --git a/net-wireless/ipw2200/files/digest-ipw2200-1.0.8-r1 b/net-wireless/ipw2200/files/digest-ipw2200-1.0.8-r1
new file mode 100644
index 000000000000..3676bd12c29d
--- /dev/null
+++ b/net-wireless/ipw2200/files/digest-ipw2200-1.0.8-r1
@@ -0,0 +1 @@
+MD5 c5d32f7c0e126e1cef4fa76a3f331ab3 ipw2200-1.0.8.tgz 124713
diff --git a/net-wireless/ipw2200/files/ipw2200-1.0.8-broadcast.patch b/net-wireless/ipw2200/files/ipw2200-1.0.8-broadcast.patch
new file mode 100644
index 000000000000..2c4f88907999
--- /dev/null
+++ b/net-wireless/ipw2200/files/ipw2200-1.0.8-broadcast.patch
@@ -0,0 +1,14 @@
+diff -Nup ipw2200-1.0.8-orig/ipw2200.c ipw2200-1.0.8/ipw2200.c
+--- ipw2200-1.0.8-orig/ipw2200.c 2005-10-20 16:35:24.000000000 -0500
++++ ipw2200-1.0.8/ipw2200.c 2005-11-03 10:29:53.000000000 -0600
+@@ -7984,8 +7984,8 @@ static void ipw_rebuild_decrypted_skb(st
+
+ static inline int ipw_is_broadcast_ether_addr(const u8 * addr)
+ {
+- return (addr[0] & 0xff && addr[1] & 0xff && addr[2] & 0xff &&
+- addr[3] & 0xff && addr[4] & 0xff && addr[5] & 0xff);
++ return (addr[0] & addr[1] & addr[2] & addr[3] & addr[4] & addr[5]) ==
++ 0xff;
+ }
+
+ static void ipw_handle_data_packet(struct ipw_priv *priv,
diff --git a/net-wireless/ipw2200/files/ipw2200-1.0.8-slabcorrupt.patch b/net-wireless/ipw2200/files/ipw2200-1.0.8-slabcorrupt.patch
new file mode 100644
index 000000000000..2ac8bbac8b4d
--- /dev/null
+++ b/net-wireless/ipw2200/files/ipw2200-1.0.8-slabcorrupt.patch
@@ -0,0 +1,12 @@
+--- ipw2200-1.0.8.orig/ipw2200.c 2005-11-16 22:53:19.000000000 +0800
++++ ipw2200-1.0.8/ipw2200.c 2005-11-16 23:20:09.000000000 +0800
+@@ -1109,8 +1109,7 @@ static struct ipw_fw_error *ipw_alloc_er
+ error->elem_len = elem_len;
+ error->log_len = log_len;
+ error->elem = (struct ipw_error_elem *)error->payload;
+- error->log = (struct ipw_event *)(error->elem +
+- (sizeof(*error->elem) * elem_len));
++ error->log = (struct ipw_event *)(error->elem + elem_len);
+
+ ipw_capture_event_log(priv, log_len, error->log);
+
diff --git a/net-wireless/ipw2200/files/ipw2200-1.0.8-txbusy.patch b/net-wireless/ipw2200/files/ipw2200-1.0.8-txbusy.patch
new file mode 100644
index 000000000000..c4975d27c8d4
--- /dev/null
+++ b/net-wireless/ipw2200/files/ipw2200-1.0.8-txbusy.patch
@@ -0,0 +1,24 @@
+diff -urp ipw2200-1.0.8/ipw2200.c ipw2200-1.0.8-txbusy/ipw2200.c
+--- ipw2200-1.0.8/ipw2200.c 2005-10-21 05:35:24.000000000 +0800
++++ ipw2200-1.0.8-txbusy/ipw2200.c 2005-10-25 13:22:38.000000000 +0800
+@@ -10222,11 +10222,6 @@ static inline int ipw_tx_skb(struct ipw_
+ u16 remaining_bytes;
+ int fc;
+
+- /* If there isn't room in the queue, we return busy and let the
+- * network stack requeue the packet for us */
+- if (ipw_queue_space(q) < q->high_mark)
+- return NETDEV_TX_BUSY;
+-
+ switch (priv->ieee->iw_mode) {
+ case IW_MODE_ADHOC:
+ hdr_len = IEEE80211_3ADDR_LEN;
+@@ -10444,7 +10439,7 @@ static int ipw_net_hard_start_xmit(struc
+
+ fail_unlock:
+ spin_unlock_irqrestore(&priv->lock, flags);
+- return 1;
++ return -1;
+ }
+
+ static struct net_device_stats *ipw_net_get_stats(struct net_device *dev)
diff --git a/net-wireless/ipw2200/ipw2200-1.0.8-r1.ebuild b/net-wireless/ipw2200/ipw2200-1.0.8-r1.ebuild
new file mode 100644
index 000000000000..dfa2e6fea174
--- /dev/null
+++ b/net-wireless/ipw2200/ipw2200-1.0.8-r1.ebuild
@@ -0,0 +1,103 @@
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-wireless/ipw2200/ipw2200-1.0.8-r1.ebuild,v 1.1 2005/11/17 13:19:59 brix Exp $
+
+inherit eutils linux-mod
+
+# The following works with both pre-releases and releases
+MY_P=${P/_/-}
+S=${WORKDIR}/${MY_P}
+
+IEEE80211_VERSION="1.1.6"
+FW_VERSION="2.4"
+
+DESCRIPTION="Driver for the Intel PRO/Wireless 2200BG/2915ABG miniPCI and 2225BG PCI adapters"
+HOMEPAGE="http://ipw2200.sourceforge.net"
+SRC_URI="mirror://sourceforge/${PN}/${MY_P}.tgz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+IUSE="debug radiotap"
+DEPEND=">=net-wireless/ieee80211-${IEEE80211_VERSION}
+ sys-apps/sed"
+RDEPEND=">=net-wireless/ieee80211-${IEEE80211_VERSION}
+ =net-wireless/ipw2200-firmware-${FW_VERSION}
+ net-wireless/wireless-tools"
+
+BUILD_TARGETS="all"
+MODULE_NAMES="ipw2200(net/wireless:)"
+MODULESD_IPW2200_DOCS="README.ipw2200"
+
+CONFIG_CHECK="NET_RADIO FW_LOADER !IPW2200"
+ERROR_NET_RADIO="${P} requires support for Wireless LAN drivers (non-hamradio) & Wireless Extensions (CONFIG_NET_RADIO)."
+ERROR_FW_LOADER="${P} requires Hotplug firmware loading support (CONFIG_FW_LOADER)."
+ERROR_IPW2200="${P} requires the in-kernel version of the IPW2200 driver to be disabled (CONFIG_IPW2200)"
+
+pkg_setup() {
+ linux-mod_pkg_setup
+
+ if kernel_is 2 4; then
+ die "${P} does not support building against kernel 2.4.x"
+ fi
+
+ if [[ ! -f /lib/modules/${KV_FULL}/net/ieee80211/ieee80211.${KV_OBJ} ]]; then
+ eerror
+ eerror "Looks like you forgot to remerge net-wireless/ieee80211 after"
+ eerror "upgrading your kernel."
+ eerror
+ eerror "Hint: use sys-kernel/module-rebuild for keeping track of which"
+ eerror "modules needs to be remerged after a kernel upgrade."
+ eerror
+ die "/lib/modules/${KV_FULL}/net/ieee80211/ieee80211.${KV_OBJ} not found"
+ fi
+
+ BUILD_PARAMS="KSRC=${KV_DIR} KSRC_OUTPUT=${KV_OUT_DIR} IEEE80211_INC=/usr/include"
+}
+
+src_unpack() {
+ local debug="n" radiotap="n"
+
+ unpack ${A}
+
+ cd ${S}
+ epatch ${FILESDIR}/${P}-txbusy.patch
+ epatch ${FILESDIR}/${P}-broadcast.patch
+ epatch ${FILESDIR}/${P}-slabcorrupt.patch
+
+ use debug && debug="y"
+ sed -i -e "s:^\(CONFIG_IPW_DEBUG\)=.*:\1=${debug}:" ${S}/Makefile
+
+ use radiotap && radiotap="y"
+ sed -i -e "s:^#\(CONFIG_IEEE80211_RADIOTAP\)=.*:\1=${radiotap}:" ${S}/Makefile || die
+}
+
+src_compile() {
+ linux-mod_src_compile
+
+ einfo
+ einfo "You may safely ignore any warnings from above compilation about"
+ einfo "undefined references to the ieee80211 subsystem."
+ einfo
+}
+
+src_install() {
+ linux-mod_src_install
+
+ dodoc CHANGES ISSUES
+}
+
+pkg_postinst() {
+ linux-mod_pkg_postinst
+
+ if [ -f /lib/modules/${KV_FULL}/net/${PN}.ko ]; then
+ einfo
+ einfo "Modules from an earlier installation detected. You will need to manually"
+ einfo "remove those modules by running the following commands:"
+ einfo " # rm -f /lib/modules/${KV_FULL}/net/${PN}.ko"
+ einfo " # rm -f /lib/modules/${KV_FULL}/net/ieee80211*.ko"
+ einfo " # depmod -a"
+ einfo
+ fi
+}