diff options
author | Alin Năstac <mrness@gentoo.org> | 2006-01-07 10:48:20 +0000 |
---|---|---|
committer | Alin Năstac <mrness@gentoo.org> | 2006-01-07 10:48:20 +0000 |
commit | 3750b3db417889b61400090c4ce062d52ef7ca80 (patch) | |
tree | 67f4e924e5f3cd656b4af2fe4cce387f667f1127 /net-dialup | |
parent | sh love (diff) | |
download | gentoo-2-3750b3db417889b61400090c4ce062d52ef7ca80.tar.gz gentoo-2-3750b3db417889b61400090c4ce062d52ef7ca80.tar.bz2 gentoo-2-3750b3db417889b61400090c4ce062d52ef7ca80.zip |
Fix kernel panic on 2.6.15 by including upstream patches (#118111)
(Portage version: 2.0.53)
Diffstat (limited to 'net-dialup')
-rw-r--r-- | net-dialup/hsfmodem/ChangeLog | 11 | ||||
-rw-r--r-- | net-dialup/hsfmodem/Manifest | 13 | ||||
-rw-r--r-- | net-dialup/hsfmodem/files/digest-hsfmodem-7.18.00.07-r1 | 3 | ||||
-rw-r--r-- | net-dialup/hsfmodem/files/hsfmodem-7.18.00.07-upstream-20060107.patch | 48 | ||||
-rw-r--r-- | net-dialup/hsfmodem/hsfmodem-7.18.00.07-r1.ebuild | 65 |
5 files changed, 128 insertions, 12 deletions
diff --git a/net-dialup/hsfmodem/ChangeLog b/net-dialup/hsfmodem/ChangeLog index c042fd8b6260..d3cd01a62a26 100644 --- a/net-dialup/hsfmodem/ChangeLog +++ b/net-dialup/hsfmodem/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for net-dialup/hsfmodem -# Copyright 2002-2005 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/net-dialup/hsfmodem/ChangeLog,v 1.18 2005/12/27 08:34:15 mrness Exp $ +# Copyright 2002-2006 Gentoo Foundation; Distributed under the GPL v2 +# $Header: /var/cvsroot/gentoo-x86/net-dialup/hsfmodem/ChangeLog,v 1.19 2006/01/07 10:48:20 mrness Exp $ + +*hsfmodem-7.18.00.07-r1 (07 Jan 2006) + + 07 Jan 2006; Alin Nastac <mrness@gentoo.org> + +files/hsfmodem-7.18.00.07-upstream-20060107.patch, + +hsfmodem-7.18.00.07-r1.ebuild: + Fix kernel panic on 2.6.15 by including upstream patches (#118111). 27 Dec 2005; Alin Nastac <mrness@gentoo.org> -files/hsf-7.18.00.05-errno.patch, -files/hsf-7.18.00.05-kernconfig.patch, diff --git a/net-dialup/hsfmodem/Manifest b/net-dialup/hsfmodem/Manifest index 1ae9c9927c7b..b475aa219392 100644 --- a/net-dialup/hsfmodem/Manifest +++ b/net-dialup/hsfmodem/Manifest @@ -1,14 +1,7 @@ ------BEGIN PGP SIGNED MESSAGE----- -Hash: SHA1 - MD5 7e33b0465ecdd74f7c6f8fa83f759f34 ChangeLog 5019 MD5 e348edabfe6f659ea8360e7892d89af6 files/digest-hsfmodem-7.18.00.07 230 +MD5 83ef8c3c538249abc93745ecf124151b files/digest-hsfmodem-7.18.00.07-r1 230 +MD5 55b57b492577870de5cb58229f0426d7 files/hsfmodem-7.18.00.07-upstream-20060107.patch 2809 +MD5 b1d81ef63db89c4d6af024177e2225ee hsfmodem-7.18.00.07-r1.ebuild 1578 MD5 39f793360c07f15ea11b06e09425892b hsfmodem-7.18.00.07.ebuild 1496 MD5 ec2f84816306825d125d0c01bd86758d metadata.xml 163 ------BEGIN PGP SIGNATURE----- -Version: GnuPG v1.4.2 (GNU/Linux) - -iD8DBQFDsPyWNSP4Vda7IdsRAnhiAJ4ibVN59GPxCT3epIJBpc2bPM4ZDwCffLrv -nTYIKGR411n7KptxYPdceaQ= -=iU0Y ------END PGP SIGNATURE----- diff --git a/net-dialup/hsfmodem/files/digest-hsfmodem-7.18.00.07-r1 b/net-dialup/hsfmodem/files/digest-hsfmodem-7.18.00.07-r1 new file mode 100644 index 000000000000..accbc98d0ac4 --- /dev/null +++ b/net-dialup/hsfmodem/files/digest-hsfmodem-7.18.00.07-r1 @@ -0,0 +1,3 @@ +MD5 e6d8fea8f5f641d7bb4dfb33c6f478e7 100498D_RM_HxF_Released.pdf 718949 +MD5 4e2b60a7643ce8cf37300ac54b435cd5 hsfmodem-7.18.00.07full.tar.gz 1130164 +MD5 cd8df0adb60d7fa3fbb516b8cbc7668b hsfmodem-7.18.00.07x86_64full.tar.gz 1242228 diff --git a/net-dialup/hsfmodem/files/hsfmodem-7.18.00.07-upstream-20060107.patch b/net-dialup/hsfmodem/files/hsfmodem-7.18.00.07-upstream-20060107.patch new file mode 100644 index 000000000000..a04e18cd5daf --- /dev/null +++ b/net-dialup/hsfmodem/files/hsfmodem-7.18.00.07-upstream-20060107.patch @@ -0,0 +1,48 @@ +diff -Nru hsfmodem-7.18.00.07full.orig/modules/GPL/oscompat.h hsfmodem-7.18.00.07full/modules/GPL/oscompat.h +--- hsfmodem-7.18.00.07full.orig/modules/GPL/oscompat.h 2005-09-18 00:42:03.000000000 +0300 ++++ hsfmodem-7.18.00.07full/modules/GPL/oscompat.h 2006-01-07 12:39:35.915023750 +0200 +@@ -550,7 +550,11 @@ + #define CLASS_DEVICE_DESTROY(class, dev) class_simple_device_remove(dev) + #define CLASS_CREATE(owner, name) class_simple_create(owner, name) + #else ++#ifdef FOUND_CLASS_DEVICE_PARENT ++#define CLASS_DEVICE_CREATE(class, dev, device, fmt, rest) class_device_create(class, NULL, dev, device, fmt, rest) ++#else + #define CLASS_DEVICE_CREATE(class, dev, device, fmt, rest) class_device_create(class, dev, device, fmt, rest) ++#endif + #define CLASS_DESTROY(class) class_destroy(class) + #define CLASS_DEVICE_DESTROY(class, dev) class_device_destroy(class, dev) + #define CLASS_CREATE(owner, name) class_create(owner, name) +diff -Nru hsfmodem-7.18.00.07full.orig/modules/Makefile hsfmodem-7.18.00.07full/modules/Makefile +--- hsfmodem-7.18.00.07full.orig/modules/Makefile 2005-10-21 19:09:52.000000000 +0300 ++++ hsfmodem-7.18.00.07full/modules/Makefile 2006-01-07 12:40:52.239793750 +0200 +@@ -80,8 +80,10 @@ + FOUND_CLASS_SIMPLE := $(shell grep -q 'class_simple_device_add' ${REAL_KERNELSRC}/include/linux/device.h 2>/dev/null && echo -DFOUND_CLASS_SIMPLE) + FOUND_UART_REGISTER_PORT := $(shell grep -q 'uart_register_port' ${REAL_KERNELSRC}/include/linux/serial_core.h 2>/dev/null && echo -DFOUND_UART_REGISTER_PORT) + FOUND_TTY_START_STOP := $(shell grep -q 'stop_tx.*tty_stop' ${REAL_KERNELSRC}/include/linux/serial_core.h 2>/dev/null && echo -DFOUND_TTY_START_STOP) ++FOUND_CLASS_DEVICE_PARENT := $(shell grep -q 'struct[ \t]*class_device[ \t]*\*[ \t]*parent' ${REAL_KERNELSRC}/include/linux/device.h 2>/dev/null && echo -DFOUND_CLASS_DEVICE_PARENT) ++FOUND_REFRIGERATOR := $(shell grep -q 'refrigerator' ${REAL_KERNELSRC}/include/linux/suspend.h 2>/dev/null && echo -DFOUND_REFRIGERATOR) + +-CFLAGS+= $(FOUND_CLASS_SIMPLE) $(FOUND_UART_REGISTER_PORT) $(FOUND_TTY_START_STOP) ++CFLAGS+= $(FOUND_CLASS_SIMPLE) $(FOUND_UART_REGISTER_PORT) $(FOUND_TTY_START_STOP) $(FOUND_CLASS_DEVICE_PARENT) $(FOUND_REFRIGERATOR) + + else + KO= o +diff -Nru hsfmodem-7.18.00.07full.orig/modules/osservices.c hsfmodem-7.18.00.07full/modules/osservices.c +--- hsfmodem-7.18.00.07full.orig/modules/osservices.c 2005-09-11 08:29:12.000000000 +0300 ++++ hsfmodem-7.18.00.07full/modules/osservices.c 2006-01-07 12:39:42.607442000 +0200 +@@ -519,8 +519,13 @@ + + if(signal_pending(current)) { + handle_sigs(); +- } else ++ } else { ++#ifdef FOUND_REFRIGERATOR ++ if (current->flags & PF_FREEZE) ++ refrigerator(PF_FREEZE); ++#endif + schedule(); ++ } + } + current->state = TASK_RUNNING; + remove_wait_queue(&osthrd->wq, &wait); diff --git a/net-dialup/hsfmodem/hsfmodem-7.18.00.07-r1.ebuild b/net-dialup/hsfmodem/hsfmodem-7.18.00.07-r1.ebuild new file mode 100644 index 000000000000..fdf119cf7a20 --- /dev/null +++ b/net-dialup/hsfmodem/hsfmodem-7.18.00.07-r1.ebuild @@ -0,0 +1,65 @@ +# Copyright 1999-2006 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-dialup/hsfmodem/hsfmodem-7.18.00.07-r1.ebuild,v 1.1 2006/01/07 10:48:20 mrness Exp $ + +inherit eutils + +#The document is the same as in hcfpcimodem, even if it has a different URL +MY_DOC="100498D_RM_HxF_Released.pdf" + +DESCRIPTION="Linuxant's modem driver for Conexant HSF chipset" +HOMEPAGE="http://www.linuxant.com/drivers/hsf/index.php" +SRC_URI="x86? ( http://www.linuxant.com/drivers/hsf/full/archive/${P}full/${P}full.tar.gz ) + amd64? ( http://www.linuxant.com/drivers/hsf/full/archive/${P}x86_64full/${P}x86_64full.tar.gz ) + doc? ( http://www.linuxant.com/drivers/hsf/full/archive/${P}full/${MY_DOC} )" + +LICENSE="Conexant" +KEYWORDS="-* ~x86 ~amd64" +IUSE="doc" +SLOT="0" + +DEPEND="virtual/libc + dev-lang/perl + app-arch/cpio" + +S="${WORKDIR}" + +pkg_setup() { + if useq x86; then + MY_ARCH_S=${S}/${P}full + elif useq amd64; then + MY_ARCH_S=${S}/${P}x86_64full + fi +} + +src_unpack() { + unpack ${A} + + epatch ${FILESDIR}/${P}-upstream-20060107.patch +} + +src_compile() { + cd ${MY_ARCH_S} + emake all || die "make failed" +} + +src_install () { + cd ${MY_ARCH_S} + make PREFIX=${D}/usr/ ROOT=${D} install || die "make install failed" + + use doc && dodoc "${DISTDIR}/${MY_DOC}" +} + +pkg_preinst() { + local NVMDIR="${ROOT}/etc/${PN}/nvm" + if [ -d "${NVMDIR}" ]; then + einfo "Cleaning ${NVMDIR}..." + rm -rf "${NVMDIR}" + eend + fi +} + +pkg_postinst() { + einfo "To complete the installation and configuration of your HSF modem," + einfo "please run hsfconfig." +} |