summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Schweizer <genstef@gentoo.org>2007-12-25 18:05:52 +0000
committerStefan Schweizer <genstef@gentoo.org>2007-12-25 18:05:52 +0000
commit38f34e141ced3f9e3f6da4a116522acd9ad82265 (patch)
treeba8762bb1c254318077bfc22a3db36d91ed09863 /net-dialup/fcdsl
parentsnapshot bump (diff)
downloadhistorical-38f34e141ced3f9e3f6da4a116522acd9ad82265.tar.gz
historical-38f34e141ced3f9e3f6da4a116522acd9ad82265.tar.bz2
historical-38f34e141ced3f9e3f6da4a116522acd9ad82265.zip
new patch to also work with 2.6.23
Package-Manager: portage-2.1.4_rc11
Diffstat (limited to 'net-dialup/fcdsl')
-rw-r--r--net-dialup/fcdsl/ChangeLog6
-rw-r--r--net-dialup/fcdsl/Manifest24
-rw-r--r--net-dialup/fcdsl/fcdsl-2.6.37.ebuild4
-rw-r--r--net-dialup/fcdsl/files/fcdsl-2.6.23.diff249
-rw-r--r--net-dialup/fcdsl/files/fcdsl-2.6.24.diff22
5 files changed, 268 insertions, 37 deletions
diff --git a/net-dialup/fcdsl/ChangeLog b/net-dialup/fcdsl/ChangeLog
index 954514a6ff44..85f6c2a751fe 100644
--- a/net-dialup/fcdsl/ChangeLog
+++ b/net-dialup/fcdsl/ChangeLog
@@ -1,6 +1,10 @@
# ChangeLog for net-dialup/fcdsl
# Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-dialup/fcdsl/ChangeLog,v 1.31 2007/12/21 23:15:54 genstef Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-dialup/fcdsl/ChangeLog,v 1.32 2007/12/25 18:05:51 genstef Exp $
+
+ 25 Dec 2007; Stefan Schweizer <genstef@gentoo.org>
+ +files/fcdsl-2.6.23.diff, -files/fcdsl-2.6.24.diff, fcdsl-2.6.37.ebuild:
+ new patch to also work with 2.6.23
21 Dec 2007; Stefan Schweizer <genstef@gentoo.org>
+files/fcdsl-2.6.24.diff, fcdsl-2.6.37.ebuild:
diff --git a/net-dialup/fcdsl/Manifest b/net-dialup/fcdsl/Manifest
index a4c351300786..5a9c16b6e304 100644
--- a/net-dialup/fcdsl/Manifest
+++ b/net-dialup/fcdsl/Manifest
@@ -6,10 +6,10 @@ AUX fcdsl-2.6.22.diff 16368 RMD160 340a51e3f4ad3659205dea6ca61f4260d0ca6bee SHA1
MD5 fa9b250fbe66ab66e7b29b2fcff5e74e files/fcdsl-2.6.22.diff 16368
RMD160 340a51e3f4ad3659205dea6ca61f4260d0ca6bee files/fcdsl-2.6.22.diff 16368
SHA256 1c784fce3a9aa98d4a4db78700017b301a74847f7a3168809dcbd29c758d6af4 files/fcdsl-2.6.22.diff 16368
-AUX fcdsl-2.6.24.diff 940 RMD160 95dd862276846f148e8e74a2cb4d93927c377900 SHA1 92615b60c55628bb67df31cb190d13be5b9a2132 SHA256 a6eab9b22e20dbb5eb8898cba911dccb2b3c59b9b2225001e7e9c38d284a47cd
-MD5 3a32dbc940018b9ed599d7c7e49be56e files/fcdsl-2.6.24.diff 940
-RMD160 95dd862276846f148e8e74a2cb4d93927c377900 files/fcdsl-2.6.24.diff 940
-SHA256 a6eab9b22e20dbb5eb8898cba911dccb2b3c59b9b2225001e7e9c38d284a47cd files/fcdsl-2.6.24.diff 940
+AUX fcdsl-2.6.23.diff 7539 RMD160 d072ddd93a6e41819853feef6ccb5d073bfe9762 SHA1 6b3caba40f18d27f3bbfcdb80810ea2c1f25247e SHA256 0f7bcd5471d015c2c9d1bd68d13e2cc6ef901f4275a910f79530b4fb89fc0531
+MD5 9349c1397fbe275fcbe2212eb5080911 files/fcdsl-2.6.23.diff 7539
+RMD160 d072ddd93a6e41819853feef6ccb5d073bfe9762 files/fcdsl-2.6.23.diff 7539
+SHA256 0f7bcd5471d015c2c9d1bd68d13e2cc6ef901f4275a910f79530b4fb89fc0531 files/fcdsl-2.6.23.diff 7539
AUX fcdsl.diff 4636 RMD160 cbb6808cc70d914352153ffa38971f331977c432 SHA1 9194d797666a011fb1f6f3f6b88e6014c81e5241 SHA256 6e30c6dd4f5e00f519b738c704171be15c7d8721fdce18a801b54fc62be9bb8c
MD5 22a65f3dcb8b67dc53a23ef35886bf18 files/fcdsl.diff 4636
RMD160 cbb6808cc70d914352153ffa38971f331977c432 files/fcdsl.diff 4636
@@ -34,14 +34,14 @@ DIST avm_fcdsl-2.6-37.i586.rpm 1059204 RMD160 3ab3bb6a8006167004c93c5348f07d4fc6
DIST avm_fcdsl-2.6-37.x86_64.rpm 1064850 RMD160 f0a76d19f0ed2221f872e42dbc38cba874d31137 SHA1 a4527480201060bcfd6b4ce8c60033fa30b67be1 SHA256 b9498312286e7d3f8c3bd7ac202e7bd75245fd93dc9aa8f2c784ace90a955757
DIST km_fcdsl-2.6-37.i586.rpm 2447670 RMD160 a8372219af67b1a9d5c27d0c382f30b5c05a2e7e SHA1 13a63e79a78f5a17d3aabb8b240ea4aada417a70 SHA256 8d767da36061ed4a0a9ee84b989d1810bcde0dab0474087b7e85e2bbc0751e4e
DIST km_fcdsl-2.6-37.x86_64.rpm 1792580 RMD160 8484ee301a6d603a7d9d0e1c97bc8d542e31833c SHA1 d40520e4a2464f42d870041456790e989fe7b809 SHA256 0412b03faa8b4f0e0b90e915e9492ae345fe7a797270b682de64b65ed9d20d33
-EBUILD fcdsl-2.6.37.ebuild 8416 RMD160 e5be45d4534fed5003ecdcc5cf27364654c651ef SHA1 15a99aa5346f84bb53581b9ba0ed181f930599e0 SHA256 9e07e7a39cf884705edc3f692664fa27990ef341bd8c66ea56b2ae4838755aaf
-MD5 81905ac441b4ece358bd7e0250b093b4 fcdsl-2.6.37.ebuild 8416
-RMD160 e5be45d4534fed5003ecdcc5cf27364654c651ef fcdsl-2.6.37.ebuild 8416
-SHA256 9e07e7a39cf884705edc3f692664fa27990ef341bd8c66ea56b2ae4838755aaf fcdsl-2.6.37.ebuild 8416
-MISC ChangeLog 5485 RMD160 08c297a15f9772e4e1746eda07e9277deca1d960 SHA1 8bb5dfe414749f194cf2965265775a4f6fabb12c SHA256 4deb7852b6b4a7e07acf869c2f5f50276247828976b149bbcb65440ddb97a4ed
-MD5 eea2baf412a982f892150f921ecda74a ChangeLog 5485
-RMD160 08c297a15f9772e4e1746eda07e9277deca1d960 ChangeLog 5485
-SHA256 4deb7852b6b4a7e07acf869c2f5f50276247828976b149bbcb65440ddb97a4ed ChangeLog 5485
+EBUILD fcdsl-2.6.37.ebuild 8417 RMD160 21b3313cd7103d53f7aacb3497de2fecb08b3193 SHA1 9570059dc67fa80ccd1529f9005021af98ca797d SHA256 ecf805ef7fd23d994eec3ab7a5657ade7e614d7ae14cc9026a3c9e8abbee2e48
+MD5 fe2adee34959dd5fe9276ff638ee07ce fcdsl-2.6.37.ebuild 8417
+RMD160 21b3313cd7103d53f7aacb3497de2fecb08b3193 fcdsl-2.6.37.ebuild 8417
+SHA256 ecf805ef7fd23d994eec3ab7a5657ade7e614d7ae14cc9026a3c9e8abbee2e48 fcdsl-2.6.37.ebuild 8417
+MISC ChangeLog 5651 RMD160 6a4b22595a724fddfc93d9bdd44adf2529d76188 SHA1 b7fc7437f571cbe07ce8a1173a10773dac7bebf8 SHA256 171058fc089aec364fd98b70dc5e460dacb1299005bcba250680de6cad01ec96
+MD5 937d9ec5cf28549404447bc7eaa358a5 ChangeLog 5651
+RMD160 6a4b22595a724fddfc93d9bdd44adf2529d76188 ChangeLog 5651
+SHA256 171058fc089aec364fd98b70dc5e460dacb1299005bcba250680de6cad01ec96 ChangeLog 5651
MISC metadata.xml 163 RMD160 df94c60cc0bb7abe5913b464a33966b142b2fe1e SHA1 d8332605fd22c32f15438bbdf24aa622c3d2738a SHA256 1137a0fd866641cf719b0c2e9e77ca9fa4541a42f2cc851fe4659cf2677acca3
MD5 ec2f84816306825d125d0c01bd86758d metadata.xml 163
RMD160 df94c60cc0bb7abe5913b464a33966b142b2fe1e metadata.xml 163
diff --git a/net-dialup/fcdsl/fcdsl-2.6.37.ebuild b/net-dialup/fcdsl/fcdsl-2.6.37.ebuild
index 56f5b2cdb34b..988a697967a6 100644
--- a/net-dialup/fcdsl/fcdsl-2.6.37.ebuild
+++ b/net-dialup/fcdsl/fcdsl-2.6.37.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2007 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/net-dialup/fcdsl/fcdsl-2.6.37.ebuild,v 1.9 2007/12/21 23:15:54 genstef Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-dialup/fcdsl/fcdsl-2.6.37.ebuild,v 1.10 2007/12/25 18:05:51 genstef Exp $
inherit linux-mod eutils rpm
@@ -84,7 +84,7 @@ src_unpack() {
patch -p0 -f < ${FILESDIR}/fcdslslusb-2.6.20.diff
cd usr/src/kernel-modules/fcdsl/src
kernel_is ge 2 6 20 && patch -p1 -f < ${FILESDIR}/usb-2.6.20.diff
- kernel_is ge 2 6 24 && patch -p0 -f < ${FILESDIR}/fcdsl-2.6.24.diff
+ kernel_is ge 2 6 23 && patch -p0 -f < ${FILESDIR}/fcdsl-2.6.23.diff
cd "${S}"
if use x86; then
diff --git a/net-dialup/fcdsl/files/fcdsl-2.6.23.diff b/net-dialup/fcdsl/files/fcdsl-2.6.23.diff
new file mode 100644
index 000000000000..7b0236a66cf5
--- /dev/null
+++ b/net-dialup/fcdsl/files/fcdsl-2.6.23.diff
@@ -0,0 +1,249 @@
+--- src.fcdsl/driver.h.orig 2007-12-25 17:47:47.000000000 +0100
++++ src.fcdsl/driver.h 2007-12-25 16:01:55.000000000 +0100
+@@ -23,7 +23,6 @@
+ #ifndef __have_driver_h__
+ #define __have_driver_h__
+
+-#include <linux/autoconf.h>
+ #include <linux/pci.h>
+ #include <linux/list.h>
+ #include <linux/skbuff.h>
+@@ -140,7 +139,7 @@
+ /*---------------------------------------------------------------------------*\
+ \*---------------------------------------------------------------------------*/
+ extern int avm_driver_init (void);
+-extern void avm_driver_exit (void);
++extern void driver_exit (void);
+
+ #endif
+
+--- src.fcdsl/driver.c.orig 2007-12-25 17:47:47.000000000 +0100
++++ src.fcdsl/driver.c 2007-12-25 16:01:55.000000000 +0100
+@@ -18,10 +18,6 @@
+ * http://www.opensource.org/licenses/lgpl-license.html
+ *
+ * Contact: AVM GmbH, Alt-Moabit 95, 10559 Berlin, Germany, email: info@avm.de
+- *
+- * Mon Oct 20 22:43:31 2003
+- * Modified by Joerg Lehrke to improve locking
+- * Fixed for rev 0.4.1 by Stefan Schweizer
+ */
+
+ #include <asm/io.h>
+@@ -61,8 +57,6 @@
+ #include "dbgif.h"
+ #endif
+
+-#undef SINGLE_LOCK
+-
+ #define KILOBYTE 1024
+ #define MEGABYTE (1024*KILOBYTE)
+ #define DMA_BUFFER_SIZE (9*KILOBYTE)
+@@ -108,11 +102,7 @@
+ static struct capi_ctr capi_ctrl[2];
+ static int capi_ctrl_ix = 0;
+ static per_ctrl_t ctrl_params[2];
+-#if defined (SINGLE_LOCK)
+-# define stack_lock qt_lock
+-#else
+ static spinlock_t stack_lock = SPIN_LOCK_UNLOCKED;
+-#endif
+ static atomic_t rx_flag = ATOMIC_INIT (0);
+ static atomic_t tx_flag = ATOMIC_INIT (0);
+ static atomic_t thread_flag = ATOMIC_INIT (0);
+@@ -210,7 +200,7 @@
+ cp->rx_dmabuf = NULL;
+ goto dma_rx_exit;
+ }
+- res = request_irq (cp->irq, &irq_handler, SA_INTERRUPT | SA_SHIRQ, TARGET, cp);
++ res = request_irq (cp->irq, &irq_handler, IRQF_DISABLED | IRQF_SHARED, TARGET, cp);
+ if (res) {
+ LOG("Could not install irq handler.\n");
+ goto dma_tx_exit;
+@@ -1157,7 +1147,7 @@
+ } /* remove_ctrl */
+
+ /*---------------------------------------------------------------------------*\
+-\*---------------------------------------------------------------------------*/
++\*-C-------------------------------------------------------------------------*/
+ static inline int in_critical (void) {
+
+ return (0 < atomic_read (&crit_count));
+@@ -1316,7 +1306,7 @@
+ capi_ctr_handle_message (ctrl, appl, skb);
+ } /* msg2capi */
+
+-/*---------------------------------------------------------------------------*\
++/*-S-------------------------------------------------------------------------*\
+ \*---------------------------------------------------------------------------*/
+ static __attr void __stack scheduler_control (unsigned ena) {
+ int enabled = (int) ena;
+@@ -1334,7 +1324,6 @@
+ /*---------------------------------------------------------------------------*\
+ \*---------------------------------------------------------------------------*/
+ static int sched_thread (void * arg) {
+- unsigned long flags;
+
+ UNUSED_ARG (arg);
+ daemonize (TARGET);
+@@ -1368,7 +1357,6 @@
+ }
+
+ /* Body of thread, invoke scheduler */
+- local_irq_save(flags);
+ if (spin_trylock (&stack_lock)) {
+ os_timer_poll ();
+ assert (capi_lib->cm_schedule);
+@@ -1377,7 +1365,6 @@
+ }
+ spin_unlock (&stack_lock);
+ }
+- local_irq_restore(flags);
+ }
+ LOG("Scheduler thread stopped.\n");
+ up (&hotplug);
+@@ -1483,22 +1470,17 @@
+ /*---------------------------------------------------------------------------*\
+ \*---------------------------------------------------------------------------*/
+ static void tx_task (unsigned long data) {
+- unsigned long flags;
+-
++
+ UNUSED_ARG (data);
+ if (in_critical ()) {
+ atomic_set (&tx_flag, 1);
+ kick_scheduler ();
++ } else if (spin_trylock (&stack_lock)) {
++ tx_handler (capi_card);
++ spin_unlock (&stack_lock);
+ } else {
+- local_irq_save(flags);
+- if (spin_trylock (&stack_lock)) {
+- tx_handler (capi_card);
+- spin_unlock (&stack_lock);
+- } else {
+- atomic_set (&tx_flag, 1);
+- kick_scheduler ();
+- }
+- local_irq_restore(flags);
++ atomic_set (&tx_flag, 1);
++ kick_scheduler ();
+ }
+ } /* tx_task */
+
+@@ -1551,22 +1533,17 @@
+ /*---------------------------------------------------------------------------*\
+ \*---------------------------------------------------------------------------*/
+ static void rx_task (unsigned long data) {
+- unsigned long flags;
+
+ UNUSED_ARG (data);
+ if (in_critical ()) {
+ atomic_set (&rx_flag, 1);
+ kick_scheduler ();
++ } else if (spin_trylock (&stack_lock)) {
++ rx_handler (capi_card);
++ spin_unlock (&stack_lock);
+ } else {
+- local_irq_save(flags);
+- if (spin_trylock (&stack_lock)) {
+- rx_handler (capi_card);
+- spin_unlock (&stack_lock);
+- } else {
+- atomic_set (&rx_flag, 1);
+- kick_scheduler ();
+- }
+- local_irq_restore(flags);
++ atomic_set (&rx_flag, 1);
++ kick_scheduler ();
+ }
+ } /* rx_task */
+
+@@ -1584,7 +1561,6 @@
+ return IRQ_NONE;
+ }
+ cp = (card_p) args;
+- spin_lock (&stack_lock);
+ while (0 != ((flags = PEEK (cp->io_base + INT_CTL)) & CARD_PCI_INT_ASSERT)) {
+ ++count;
+ assert (count < 3);
+@@ -1595,7 +1571,6 @@
+ assert ((PEEK (cp->io_base + INT_CTL)
+ & ~(CARD_PCI_INT_ASSERT | CARD_PCI_INT_ISASSERTED)) != 0);
+ if (!atomic_read (&link_open)) {
+- spin_unlock (&stack_lock);
+ return IRQ_HANDLED;
+ }
+ tx_flag = PEEK (cp->io_base + XFER_TOTM_STATUS) == TM_READY;
+@@ -1610,7 +1585,6 @@
+ }
+ }
+ info (0 == (PEEK (cp->io_base + INT_CTL) & CARD_PCI_INT_ASSERT));
+- spin_unlock (&stack_lock);
+ return IRQ_RETVAL(count > 0);
+ } /* irq_handler */
+
+@@ -1829,12 +1803,12 @@
+
+ /*---------------------------------------------------------------------------*\
+ \*---------------------------------------------------------------------------*/
+-void avm_driver_exit (void) {
++void driver_exit (void) {
+
+ assert (capi_lib != NULL);
+ free_library ();
+ capi_lib = NULL;
+-} /* avm_driver_exit */
++} /* driver_exit */
+
+ /*---------------------------------------------------------------------------*\
+ \*---------------------------------------------------------------------------*/
+--- src.fcdsl/main.c.orig 2007-12-25 17:47:47.000000000 +0100
++++ src.fcdsl/main.c 2007-12-25 17:41:12.000000000 +0100
+@@ -23,7 +23,6 @@
+ #include <stdarg.h>
+ #include <asm/uaccess.h>
+ #include <linux/pci.h>
+-#include <linux/autoconf.h>
+ #include <linux/version.h>
+ #include <linux/kernel.h>
+ #include <linux/module.h>
+@@ -72,6 +71,9 @@
+ MODULE_PARM_DESC (VPI, "VPI - Virtual Path Identifier");
+ MODULE_PARM_DESC (VCI, "VCI - Virtual Channel Identifier");
+
++/* Define new pci initialize, Arnd Feldmueller <arnd.feldmueller@web.de> */
++#define pci_module_init pci_register_driver
++
+ MODULE_LICENSE ("Proprietary");
+ MODULE_DESCRIPTION ("CAPI4Linux: Driver for " PRODUCT_LOGO);
+
+@@ -122,7 +124,9 @@
+ }
+ if (0 != (res = add_card (dev))) {
+ ERROR("Not loaded.\n");
+- avm_driver_exit ();
++ /* avm_driver_exit(); is old function, Arnd Feldmueller
++ <arnd.feldmueller@web.de> */
++ driver_exit ();
+ return res;
+ }
+ NOTE("Loaded.\n");
+@@ -143,7 +147,7 @@
+ NOTE("Removing...\n");
+ remove_ctrls (card);
+ NOTE("Removed.\n");
+- avm_driver_exit ();
++ driver_exit ();
+ #ifndef NDEBUG
+ if (hallocated() != 0) {
+ ERROR( "%u bytes leaked.\n", hallocated());
+@@ -196,7 +200,7 @@
+ return -ENOSYS;
+ }
+
+- if (0 == (err = pci_register_driver (&fcdsl_driver))) {
++ if (0 == (err = pci_module_init (&fcdsl_driver))) {
+ LOG("PCI driver registered.\n");
+ register_capi_driver (&fcdsl_capi_driver);
+ LOG("CAPI driver registered.\n");
diff --git a/net-dialup/fcdsl/files/fcdsl-2.6.24.diff b/net-dialup/fcdsl/files/fcdsl-2.6.24.diff
deleted file mode 100644
index 544b96ead128..000000000000
--- a/net-dialup/fcdsl/files/fcdsl-2.6.24.diff
+++ /dev/null
@@ -1,22 +0,0 @@
---- src.fcdsl/driver.c.orig 2007-12-22 00:07:35.000000000 +0100
-+++ src.fcdsl/driver.c 2007-12-22 00:07:46.000000000 +0100
-@@ -121,7 +121,7 @@
-
- static DECLARE_WAIT_QUEUE_HEAD(wait);
- static DECLARE_WAIT_QUEUE_HEAD(capi_wait);
--static DECLARE_MUTEX_LOCKED(hotplug);
-+static DECLARE_MUTEX(hotplug);
-
- #define SCHED_WAKEUP_CAPI { atomic_set (&thread_capi_flag, 1); wake_up_interruptible (&capi_wait); }
- #define SCHED_WAKEUP { atomic_set (&got_kicked, 1); wake_up_interruptible (&wait); }
-@@ -210,7 +210,9 @@
- cp->rx_dmabuf = NULL;
- goto dma_rx_exit;
- }
-- res = request_irq (cp->irq, &irq_handler, SA_INTERRUPT | SA_SHIRQ, TARGET, cp);
-+ /* Renamed function now: IRQF_DISABLED and IRQF_SHARED */
-+ /* Arnd Feldmueller <arnd.feldmueller@web.de> */
-+ res = request_irq (cp->irq, &irq_handler, IRQF_DISABLED | IRQF_SHARED, TARGET, cp);
- if (res) {
- LOG("Could not install irq handler.\n");
- goto dma_tx_exit;