summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'net-dialup')
-rw-r--r--net-dialup/martian-modem/ChangeLog13
-rw-r--r--net-dialup/martian-modem/Manifest14
-rw-r--r--net-dialup/martian-modem/files/martian-modem-20100123-linux-3.10.patch70
-rw-r--r--net-dialup/martian-modem/files/martian-modem-20100123-linux-3.8.patch87
-rw-r--r--net-dialup/martian-modem/martian-modem-20100123-r1.ebuild (renamed from net-dialup/martian-modem/martian-modem-20100123.ebuild)29
5 files changed, 194 insertions, 19 deletions
diff --git a/net-dialup/martian-modem/ChangeLog b/net-dialup/martian-modem/ChangeLog
index b80f054e77de..daafb1a770e4 100644
--- a/net-dialup/martian-modem/ChangeLog
+++ b/net-dialup/martian-modem/ChangeLog
@@ -1,6 +1,15 @@
# ChangeLog for net-dialup/martian-modem
-# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-dialup/martian-modem/ChangeLog,v 1.2 2013/03/03 19:32:05 pacho Exp $
+# Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/net-dialup/martian-modem/ChangeLog,v 1.3 2015/03/22 12:28:21 pacho Exp $
+
+*martian-modem-20100123-r1 (22 Mar 2015)
+
+ 22 Mar 2015; Pacho Ramos <pacho@gentoo.org>
+ +files/martian-modem-20100123-linux-3.10.patch,
+ +files/martian-modem-20100123-linux-3.8.patch,
+ +martian-modem-20100123-r1.ebuild, -martian-modem-20100123.ebuild:
+ Fix build with recent kernels (#543702 by Toralf Förster, fixes by Roger),
+ drop old
03 Mar 2013; Pacho Ramos <pacho@gentoo.org> metadata.xml:
Add to proxy-maintainers herd
diff --git a/net-dialup/martian-modem/Manifest b/net-dialup/martian-modem/Manifest
index 7b2d7df1d6b7..5185a6a6e4ae 100644
--- a/net-dialup/martian-modem/Manifest
+++ b/net-dialup/martian-modem/Manifest
@@ -1,17 +1,19 @@
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
+AUX martian-modem-20100123-linux-3.10.patch 2267 SHA256 8be0ebe2358fedf26f8a0b4523c40fe3b5c674912e0fce926bc61b9469fa566c SHA512 b713e5b2691806d583e10092c7cfcf288f20a403769a3c39229bd396280b948be508fd5afa5be33e502ef35da7fe4e88e9ffc373db1e5466b97ad956aecb97ac WHIRLPOOL 5086fa987deceb8e682acc3e22a00ba6243cefefcee7edbfb5629066f98b88fc547ffbadce4f7425e4b3af2b508b6870840986a65d7172ef2aac9b44d35dbdde
+AUX martian-modem-20100123-linux-3.8.patch 2607 SHA256 68f9b73d9ebb866b010bf43c6887b7d8a4a3bc79585f337b510566c7c91eac14 SHA512 986f4bfa7ae4fd37015667045227d254d6b0903b55351eb05369bcd10589fe675a47fb17e7536a5c2333309aff997a3f52aa3ca8d7ed19947b426b72b2638362 WHIRLPOOL 766183756c224dfff39b654a2283a54ab15a1c211aabbaff38a710d99baaad4d156c0a50717fd18e62f12fce16c8f5fc4424ae8ed304d0dd930c30c3cbd945fb
AUX martian-modem-20100123-makefile.patch 1237 SHA256 e72d414c57a7fbb50b14536bfc104d0696196cfcb691af9cad6f9f9410293489 SHA512 96c0f5a507b514146b4193c8299f3da8c7ec68db62d8d7e0e38626f849b846cc098cccb172ccc986d351918a1d6262c1351d66de3e6d283341c069de2f2b39a2 WHIRLPOOL 127ee7c4c8c5aaaabef8da5b50c8f39ce8ad8f4106066fae3bc29d914c422aee30d82ec0405ecb54def5c20af4d6a8b8c8452f93a904b4cab9ee28a07cc89370
AUX martian-modem.conf.d 1569 SHA256 893800445a34cbc7084e289f0add9d043f9e03fdff96e5605f3f3dd2293b83c5 SHA512 9b9b9dfeb3575a65dc56df3ed0880929ceea2a563bbf4575fd980755a49fa62e20e176508f6c43274e696862454bf5a07bf09f7f454e3dfd34de963eea30f572 WHIRLPOOL 0606274fdab00d5fc34965976e3c9e56e90ac3ace97f1cc729ff3506dddf3d3d41b77d14cd96f68361edee314970fc6933c29bb5c04c097679703da9156527c3
AUX martian-modem.init.d 1489 SHA256 0fa608ab4453fef5baa93b552de776028c85a1fcec696ad0626f9a766fa40a03 SHA512 92c90c17222f13cda947257d09d0a3e4b4345a74461a5e31ce1c9098c043bc672a30e3436db75d494be49b184ad61aa3d42d34ace6dfa2735ac6396fac949169 WHIRLPOOL cde4be4d383f10063be7bd653d27f3c06f5634bedf38f31be791f7809b5ca6bc01787432660fe3dce03d1c776163eec22c6e530a0a485c869bc5c22f0e2d07b4
DIST martian-full-20100123.tar.gz 275365 SHA256 bf3ad369dc90e3ef7952e6bb7873b3121ce79a855060a1b4b4e3a1d8e7d08ac3 SHA512 bcd51103792bd1d477ab81f8bbb591f3eb5341920e6b0b35e8ba066a50b8a6ddf076c0bc0d21cf686c8137f8164221635b3c296185283f6e20ce2d04709f69ec WHIRLPOOL b38fb4ea1e7282cf51547c4d6ab3423350dabe717ebe89efa20cc92148347d7e1b2fcc32085d3edc677768f7286715087034bace7f51415ce31a24d840c85c59
-EBUILD martian-modem-20100123.ebuild 2888 SHA256 040e7d3c82fa3c90432248ee9f25ea1ee76da465e6c9e60b6c7ee7e301f675c8 SHA512 47d02d7d72a52f5075515f66c18147726194abfe598e794f9178b67e8c279034ff341cec5605cb5b7fb256a87a6e2d84d2593474e93c36a420526bbfb0ed695a WHIRLPOOL 11c087e81a2cdb4ce6ecfaae4f85218a29fce8e782aa09197e7b9c5e694100763fae177e53d20b36d56f5665d70084289a1a60648028b2e18a1449b57f32c55c
-MISC ChangeLog 624 SHA256 e9a74c5525f6cb35089333bd296a46419f30c58d37912f5fbadb78395f749e0d SHA512 4299c9a1222d86691582ee624e2214033a9d63de339e03bc9958879fcc2223e98670b197893db6dfee7a78ed5e4bb17455d5d4ce2c501238331a26983fad4e20 WHIRLPOOL d88c7f9589bdd90e64df0670a9994bda7bafe9a198f3e9ac0988eb275403f8c2addf3fe9b7b2fa389c7159fa00bf004d1b60d7d1434b1385dd4e33009d12a09a
+EBUILD martian-modem-20100123-r1.ebuild 3413 SHA256 958f38069cdd9c4537fa6b08d87c42b464df796d7934b9aa26b76737d7e8b8fc SHA512 f5eaf47c9b514a69ee46fdb02b9744123c8c3c1cf04e3a9a2a57893e4822709f4d88fe590e8920d72d7297e42c7b0a0eb60fff22f6125a2816065ae58faaef11 WHIRLPOOL 563b55655147cfca2ff2d37a21b61a9cf103968fb8e83f8e6a4c1a8169a5e6553d0eae4966ef3164875047a61b4af34c163e4c980bd877cef5321c24806ab59b
+MISC ChangeLog 970 SHA256 e22751ac1313926dfe8f4fae24e6a3d49670678d18087fe0cf44a2571aaa4ef0 SHA512 11fe2ca5d2d5e2ac08062eac341c25f1c6e8394d9213af434cc8721263b7cd7ef7085b4cb2687dd420745f4ef68cbd0794f4dcb1888477252ec658ea910130bd WHIRLPOOL 459bab603daac8fd638c9ed2e408458f5d3299e2b60d2b5d5d39c03e53945013a6f618f7a89890fa84fe567d8d691452d60e444baa6977218e08cb041a59e60c
MISC metadata.xml 425 SHA256 d0b1ff23567a23ed386e708f0c467b1dfd5880094d53ae459522f0a1ed50b6b1 SHA512 811a360ff689c02ad5dce6901a7653b38586566dcb4db8d810130301485f0e2f89f9dc1b8fda1ef988f17c5e1339c62e1a967a344d8b5c2e809d6db8337a0471 WHIRLPOOL 22715cfd7685da2a56916278f838d8a04e6fa4e8b2b99d4c70dbf5807041867dc77bac2e8b0ea9b112f207dfd849c50518a9fdd5ca4e77017d22213d95d7af12
-----BEGIN PGP SIGNATURE-----
-Version: GnuPG v2.0.19 (GNU/Linux)
+Version: GnuPG v2
-iEYEAREIAAYFAlEzpTYACgkQCaWpQKGI+9SN+wCfbLXhDWUk0G0+E2subi/6aoPY
-Rj4AnjiqbhJ7zX01oNCMqluE0VFPzv+F
-=YvwZ
+iEYEAREIAAYFAlUOtUsACgkQCaWpQKGI+9Q6lwCeIugI/es8rVqJQf+RvpfrJkmR
+qo8AmgIgBKgjy4OSFPBiXJJOdZR5yDRl
+=yx5P
-----END PGP SIGNATURE-----
diff --git a/net-dialup/martian-modem/files/martian-modem-20100123-linux-3.10.patch b/net-dialup/martian-modem/files/martian-modem-20100123-linux-3.10.patch
new file mode 100644
index 000000000000..27daed03792e
--- /dev/null
+++ b/net-dialup/martian-modem/files/martian-modem-20100123-linux-3.10.patch
@@ -0,0 +1,70 @@
+diff -urN martian-full-20100123.orig/kmodule/martian.c martian-full-20100123/kmodule/martian.c
+--- martian-full-20100123.orig/kmodule/martian.c 2015-03-21 16:21:21.228514759 -0400
++++ martian-full-20100123/kmodule/martian.c 2015-03-21 16:29:23.402126727 -0400
+@@ -184,8 +184,12 @@
+ static int martian_open (struct inode *inode, struct file *filp)
+ {
+ // allow single open
+- struct proc_dir_entry *entry = PDE (inode);
+- struct martian *mdev = (struct martian *) entry->data;
++ #if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 10, 0)
++ struct martian *mdev = (struct martian *) PDE_DATA (inode);
++ #else
++ struct proc_dir_entry *entry = PDE (inode);
++ struct martian *mdev = (struct martian *) entry->data;
++ #endif
+
+ if (test_and_set_bit (MARTIAN_STATE_OPEN, &mdev->state)) {
+ // already opened
+@@ -736,20 +740,37 @@
+ // create proc entry for this device
+ name[ strlen(name) - 1 ] = '0' + dev_idx;
+
+- mdev->entry = create_proc_entry (name, 0400, NULL);
+- if (! mdev->entry) {
+- MERROR ("martian: failed to create /proc/%s\n", name);
+- ret = -ENOMEM;
+- goto err_free_irq;
+- }
+-
+- martian_init_mcb(mdev);
+-
+- // set an index
+- mdev->index = dev_idx;
+-
+- mdev->entry->proc_fops = & martian_fops;
+- mdev->entry->data = mdev;
++ #if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 10, 0)
++ // initialize data before 3.10-style proc create call
++ martian_init_mcb(mdev);
++
++ // set an index
++ mdev->index = dev_idx;
++
++ mdev->entry = proc_create_data (name, 0400, NULL, & martian_fops, mdev);
++ if (! mdev->entry) {
++ MERROR ("martian: failed to create /proc/%s\n", name);
++ ret = -ENOMEM;
++ goto err_free_irq;
++ }
++
++ #else
++
++ mdev->entry = create_proc_entry (name, 0400, NULL);
++ if (! mdev->entry) {
++ MERROR ("martian: failed to create /proc/%s\n", name);
++ ret = -ENOMEM;
++ goto err_free_irq;
++ }
++
++ martian_init_mcb(mdev);
++
++ // set an index
++ mdev->index = dev_idx;
++
++ mdev->entry->proc_fops = & martian_fops;
++ mdev->entry->data = mdev;
++ #endif
+
+ pr_info("martian: added device %x:%x "
+ "BaseAddress = 0x%x, CommAddres = 0x%x, irq = %d%s\n",
diff --git a/net-dialup/martian-modem/files/martian-modem-20100123-linux-3.8.patch b/net-dialup/martian-modem/files/martian-modem-20100123-linux-3.8.patch
new file mode 100644
index 000000000000..077936857047
--- /dev/null
+++ b/net-dialup/martian-modem/files/martian-modem-20100123-linux-3.8.patch
@@ -0,0 +1,87 @@
+diff -urN martian-full-20100123.orig/kmodule/martian.c martian-full-20100123/kmodule/martian.c
+--- martian-full-20100123.orig/kmodule/martian.c 2015-03-21 16:15:55.498819336 -0400
++++ martian-full-20100123/kmodule/martian.c 2015-03-21 16:17:03.769752308 -0400
+@@ -592,7 +592,7 @@
+
+ static int dev_idx = 0;
+
+-static void __devinit
++static void
+ martian_configure_isr (struct martian *mdev)
+ {
+ struct martian_common *mcb = mdev->common;
+@@ -614,7 +614,7 @@
+ mcb->dp_bamil_rd7 = 0xff;
+ }
+
+-static void __devinit
++static void
+ martian_configure_params (struct martian *mdev)
+ {
+ mdev->params.dsp_mars = mdev->metrics.dsp_mars;
+@@ -792,7 +792,7 @@
+
+ /***** PCI Driver Interface *****/
+
+-static int __devinit
++static int
+ martian_device_gatherinfo (const struct pci_dev *dev, const struct pci_device_id *ent, struct martian_metrics *metrics)
+ {
+ int bar;
+@@ -997,7 +997,7 @@
+ return 0;
+ }
+
+-static int __devinit
++static int
+ mars_device_probe (struct pci_dev *dev, const struct pci_device_id *ent)
+ {
+ int ret;
+@@ -1036,7 +1036,7 @@
+ }
+
+
+-static void __devexit mars_remove (struct pci_dev *dev)
++static void mars_remove (struct pci_dev *dev)
+ {
+ martian_del (pci_get_drvdata (dev));
+ pci_disable_device (dev);
+@@ -1048,7 +1048,7 @@
+ struct pci_driver martian_driver = {
+ .name = "martian",
+ .probe = mars_device_probe,
+- .remove = __devexit_p (mars_remove),
++ .remove = mars_remove,
+ .id_table = martian_ids
+ };
+
+@@ -1062,7 +1062,7 @@
+
+ #define SERIAL_DRIVER "serial"
+
+-static void __devinit detach_from_serial_class (unsigned int class, unsigned int mask)
++static void detach_from_serial_class (unsigned int class, unsigned int mask)
+ {
+ struct pci_dev *dev = NULL;
+ const struct pci_device_id *entry;
+@@ -1083,7 +1083,7 @@
+ }
+ }
+
+-static void __devinit detach_from_serial(void)
++static void detach_from_serial(void)
+ {
+ detach_from_serial_class (PCI_CLASS_COMMUNICATION_SERIAL << 8, 0xffff00);
+ detach_from_serial_class (PCI_CLASS_COMMUNICATION_MODEM << 8, 0xffff00);
+diff -urN martian-full-20100123.orig/kmodule/martian_ids.c martian-full-20100123/kmodule/martian_ids.c
+--- martian-full-20100123.orig/kmodule/martian_ids.c 2015-03-21 16:15:48.461826345 -0400
++++ martian-full-20100123/kmodule/martian_ids.c 2015-03-21 16:17:17.167739363 -0400
+@@ -8,7 +8,7 @@
+ .subvendor = (_subvendor), \
+ .subdevice = PCI_ANY_ID
+
+-__devinitdata static struct pci_device_id martian_ids[] = {
++static struct pci_device_id martian_ids[] = {
+ { PCI_DEVICE (PCI_VENDOR_ID_ATT, 0x440) },
+ { PCI_DEVICE (PCI_VENDOR_ID_ATT, 0x441) },
+ { PCI_DEVICE (PCI_VENDOR_ID_ATT, 0x442) },
diff --git a/net-dialup/martian-modem/martian-modem-20100123.ebuild b/net-dialup/martian-modem/martian-modem-20100123-r1.ebuild
index e3a31bea4771..caace7e74b88 100644
--- a/net-dialup/martian-modem/martian-modem-20100123.ebuild
+++ b/net-dialup/martian-modem/martian-modem-20100123-r1.ebuild
@@ -1,6 +1,6 @@
-# Copyright 1999-2012 Gentoo Foundation
+# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/net-dialup/martian-modem/martian-modem-20100123.ebuild,v 1.1 2012/12/15 16:41:36 pacho Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-dialup/martian-modem/martian-modem-20100123-r1.ebuild,v 1.1 2015/03/22 12:28:21 pacho Exp $
EAPI=5
inherit linux-mod eutils
@@ -31,20 +31,27 @@ MODULE_NAMES="martian_dev(ltmodem::kmodule)"
CONFIG_CHECK="SERIAL_8250"
SERIAL_8250_ERROR="This driver requires you to compile your kernel with serial core (CONFIG_SERIAL_8250) support."
-pkg_setup() {
- linux-mod_pkg_setup
-
- if kernel_is 2 4; then
- eerror "This driver works only with 2.6 kernels!"
- die "unsupported kernel detected"
- fi
-}
-
src_prepare() {
# Exclude Makefile kernel version check, we used kernel_is above.
# TODO: More exactly, martian-modem-full-20100123 is for >kernel-2.6.20!
epatch "${FILESDIR}/${P}-makefile.patch"
+ # Per Gentoo Bug #543702, CONFIG_HOTPLUG is going away as an option. As of
+ # Linux Kernel 3.8, the __dev* markings need to be removed. This patch removes
+ # the use of __devinit, __devexit_p, and __devexit as the type cast simply isn't
+ # needed any longer.
+ if kernel_is -ge 3 8; then
+ epatch "${FILESDIR}/${P}-linux-3.8.patch"
+ fi
+
+ # Per Gentoo Bug #543702, "proc_dir_entry" and "create_proc_entry" Linux
+ # Kernel header definition was moved and only accessible internally as of
+ # Linux Kernel 3.10. This patch originates from Paul McClay (2014.05.28)
+ # and posted to Ubuntu Launchpad.
+ if kernel_is -ge 3 10; then
+ epatch "${FILESDIR}/${P}-linux-3.10.patch"
+ fi
+
# fix compile on amd64
sed -i -e "/^HOST.*$/s:uname -i:uname -m:" modem/Makefile || die "sed failed"