* Why not PCMCIA built-in and yenta/i82365 as modules
@ 2000-11-21 22:34 Tobias Ringstrom
2000-11-22 0:04 ` David Hinds
` (2 more replies)
0 siblings, 3 replies; 11+ messages in thread
From: Tobias Ringstrom @ 2000-11-21 22:34 UTC (permalink / raw)
To: dhinds, torvalds; +Cc: Kernel Mailing List
The subject says it all. Is there any particular (technical) reason why I
must have both the generic pcmcia code and the controller support
built-in, or build all of them as modules?
/Tobias
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/
^ permalink raw reply [flat|nested] 11+ messages in thread* Re: Why not PCMCIA built-in and yenta/i82365 as modules 2000-11-21 22:34 Why not PCMCIA built-in and yenta/i82365 as modules Tobias Ringstrom @ 2000-11-22 0:04 ` David Hinds 2000-11-22 1:10 ` Albert D. Cahalan ` (2 more replies) 2000-11-22 10:25 ` Matti Aarnio 2000-11-22 11:05 ` David Woodhouse 2 siblings, 3 replies; 11+ messages in thread From: David Hinds @ 2000-11-22 0:04 UTC (permalink / raw) To: Tobias Ringstrom; +Cc: Kernel Mailing List On Tue, Nov 21, 2000 at 11:34:45PM +0100, Tobias Ringstrom wrote: > The subject says it all. Is there any particular (technical) reason why I > must have both the generic pcmcia code and the controller support > built-in, or build all of them as modules? Is there a technical reason for this? Not that I know of; but then I also cannot think of a good reason for wanting, say, the generic code built in but the controller support as modules. I do see reasonable arguments for all-builtin or all-modules. -- Dave - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/ ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: Why not PCMCIA built-in and yenta/i82365 as modules 2000-11-22 0:04 ` David Hinds @ 2000-11-22 1:10 ` Albert D. Cahalan 2000-11-22 1:28 ` David Hinds 2000-11-22 1:44 ` Horst von Brand 2000-11-22 10:54 ` Tobias Ringstrom 2 siblings, 1 reply; 11+ messages in thread From: Albert D. Cahalan @ 2000-11-22 1:10 UTC (permalink / raw) To: David Hinds; +Cc: Tobias Ringstrom, Kernel Mailing List >> The subject says it all. Is there any particular (technical) reason >> why I must have both the generic pcmcia code and the controller >> support built-in, or build all of them as modules? > > Is there a technical reason for this? Not that I know of; but then I > also cannot think of a good reason for wanting, say, the generic code > built in but the controller support as modules. I do see reasonable > arguments for all-builtin or all-modules. Hmmm, I'm not the only one who doesn't like modules depending on other modules. I suppose this is part paranoia about extra complexity leading to problems, and part desire to avoid the module overhead for common code that will most likely get used. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/ ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: Why not PCMCIA built-in and yenta/i82365 as modules 2000-11-22 1:10 ` Albert D. Cahalan @ 2000-11-22 1:28 ` David Hinds 0 siblings, 0 replies; 11+ messages in thread From: David Hinds @ 2000-11-22 1:28 UTC (permalink / raw) To: Albert D. Cahalan; +Cc: Tobias Ringstrom, Kernel Mailing List On Tue, Nov 21, 2000 at 08:10:38PM -0500, Albert D. Cahalan wrote: > > Hmmm, I'm not the only one who doesn't like modules depending > on other modules. I suppose this is part paranoia about extra > complexity leading to problems, and part desire to avoid the > module overhead for common code that will most likely get used. Since the core PCMCIA code and the socket driver are equally essential to do anything useful with PCMCIA, the only reasonable argument I could see for it would be if you are using one kernel on several systems, all of which use PCMCIA, but which need different socket drivers. So you would save... oh... perhaps 2K by having the PCMCIA shared code in the kernel. In any case, I don't think it would require much more than modifying the Config.in for the PCMCIA drivers to support this. My own paranoia would be that you would be adding a bunch of rarely used permutations of config options, that would rarely be tested. -- Dave - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/ ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: Why not PCMCIA built-in and yenta/i82365 as modules 2000-11-22 0:04 ` David Hinds 2000-11-22 1:10 ` Albert D. Cahalan @ 2000-11-22 1:44 ` Horst von Brand 2000-11-22 1:50 ` David Hinds 2000-11-22 10:54 ` Tobias Ringstrom 2 siblings, 1 reply; 11+ messages in thread From: Horst von Brand @ 2000-11-22 1:44 UTC (permalink / raw) To: David Hinds; +Cc: Tobias Ringstrom, Kernel Mailing List David Hinds <dhinds@lahmed.stanford.edu> said: [...] > Is there a technical reason for this? Not that I know of; but then I > also cannot think of a good reason for wanting, say, the generic code > built in but the controller support as modules. I do see reasonable > arguments for all-builtin or all-modules. If you have a laptop with an assortment of cards, you might want to have the generic builtin and the cards themselves as modules. Pretty weak, I know. -- Horst von Brand vonbrand@sleipnir.valparaiso.cl Casilla 9G, Vin~a del Mar, Chile +56 32 672616 - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/ ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: Why not PCMCIA built-in and yenta/i82365 as modules 2000-11-22 1:44 ` Horst von Brand @ 2000-11-22 1:50 ` David Hinds 0 siblings, 0 replies; 11+ messages in thread From: David Hinds @ 2000-11-22 1:50 UTC (permalink / raw) To: Horst von Brand; +Cc: Tobias Ringstrom, Kernel Mailing List On Tue, Nov 21, 2000 at 10:44:30PM -0300, Horst von Brand wrote: > > If you have a laptop with an assortment of cards, you might want to have > the generic builtin and the cards themselves as modules. No, that's ok, and that's supported with the current config scripts. The original question was about having the generic code built in, but the socket driver (yenta) as a module. The socket driver needs to be loaded regardless of what cards you're using. So I think having one in the kernel and the other as a module is of limited utility. -- Dave - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/ ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: Why not PCMCIA built-in and yenta/i82365 as modules 2000-11-22 0:04 ` David Hinds 2000-11-22 1:10 ` Albert D. Cahalan 2000-11-22 1:44 ` Horst von Brand @ 2000-11-22 10:54 ` Tobias Ringstrom 2 siblings, 0 replies; 11+ messages in thread From: Tobias Ringstrom @ 2000-11-22 10:54 UTC (permalink / raw) To: David Hinds; +Cc: Kernel Mailing List On Tue, 21 Nov 2000, David Hinds wrote: > On Tue, Nov 21, 2000 at 11:34:45PM +0100, Tobias Ringstrom wrote: > > The subject says it all. Is there any particular (technical) reason why I > > must have both the generic pcmcia code and the controller support > > built-in, or build all of them as modules? > > Is there a technical reason for this? Not that I know of; but then I > also cannot think of a good reason for wanting, say, the generic code > built in but the controller support as modules. I do see reasonable > arguments for all-builtin or all-modules. Maybe more a matter of taste, or real life problems. I wanted a kernel with yenta and i82365 built-in, but I need to specify extra_sockes to the i82365. There is no way to do this unless it is a module. Then I thought, why not have yenta build-in, and i82365 as a module, and discovered that that was not possible. I know, I should add a __setup thingie to i82365, but... As for taste, the generic pcmcia code is not a driver, and it would make sense to me to have that support in the kernel, not in a module. /Tobias - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/ ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: Why not PCMCIA built-in and yenta/i82365 as modules 2000-11-21 22:34 Why not PCMCIA built-in and yenta/i82365 as modules Tobias Ringstrom 2000-11-22 0:04 ` David Hinds @ 2000-11-22 10:25 ` Matti Aarnio 2000-11-22 12:29 ` Alan Cox 2000-11-24 17:06 ` Oliver Xymoron 2000-11-22 11:05 ` David Woodhouse 2 siblings, 2 replies; 11+ messages in thread From: Matti Aarnio @ 2000-11-22 10:25 UTC (permalink / raw) To: Tobias Ringstrom; +Cc: dhinds, torvalds, Kernel Mailing List On Tue, Nov 21, 2000 at 11:34:45PM +0100, Tobias Ringstrom wrote: > The subject says it all. Is there any particular (technical) reason > why I must have both the generic pcmcia code and the controller support > built-in, or build all of them as modules? > > /Tobias Wasn't there some strange laptop model which had PCMCIA floppy/CDROM, which are unavailable to bootstrap process, unless PCMCIA is supported at the booting kernel ? Or was it about USB floppy at some other laptop? - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/ ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: Why not PCMCIA built-in and yenta/i82365 as modules 2000-11-22 10:25 ` Matti Aarnio @ 2000-11-22 12:29 ` Alan Cox 2000-11-24 17:06 ` Oliver Xymoron 1 sibling, 0 replies; 11+ messages in thread From: Alan Cox @ 2000-11-22 12:29 UTC (permalink / raw) To: Matti Aarnio; +Cc: Tobias Ringstrom, dhinds, torvalds, Kernel Mailing List > Wasn't there some strange laptop model which had PCMCIA floppy/CDROM, > which are unavailable to bootstrap process, unless PCMCIA is supported > at the booting kernel ? I have seen a couple where the floppy/cdrom are supported by the bios but then vanish. Generally they are left mapped which means if you know the right ide= incantation it works. Remember you can solve this with an initrd. Alan - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/ ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: Why not PCMCIA built-in and yenta/i82365 as modules 2000-11-22 10:25 ` Matti Aarnio 2000-11-22 12:29 ` Alan Cox @ 2000-11-24 17:06 ` Oliver Xymoron 1 sibling, 0 replies; 11+ messages in thread From: Oliver Xymoron @ 2000-11-24 17:06 UTC (permalink / raw) To: Matti Aarnio; +Cc: Tobias Ringstrom, dhinds, torvalds, Kernel Mailing List On Wed, 22 Nov 2000, Matti Aarnio wrote: > On Tue, Nov 21, 2000 at 11:34:45PM +0100, Tobias Ringstrom wrote: > > The subject says it all. Is there any particular (technical) reason > > why I must have both the generic pcmcia code and the controller support > > built-in, or build all of them as modules? > > > > /Tobias > > Wasn't there some strange laptop model which had PCMCIA floppy/CDROM, > which are unavailable to bootstrap process, unless PCMCIA is supported > at the booting kernel ? > > Or was it about USB floppy at some other laptop? Yes and yes. However, you still would need the controller specific code built-in. The USB floppy situation is uglier still. When I tried to put Debian on my VAIO from floppy, I discovered that even with a USB-enabled kernel, the floppy wasn't available in time to mount /. Approaches that did work, in case anyone is curious, were using loadlin with FreeDOS (incredibly slow) to preload the second floppy via BIOS, or using syslinux and a custom mini-kernel and initrd image crammed onto a single floppy. -- "Love the dolphins," she advised him. "Write by W.A.S.T.E.." - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/ ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: Why not PCMCIA built-in and yenta/i82365 as modules 2000-11-21 22:34 Why not PCMCIA built-in and yenta/i82365 as modules Tobias Ringstrom 2000-11-22 0:04 ` David Hinds 2000-11-22 10:25 ` Matti Aarnio @ 2000-11-22 11:05 ` David Woodhouse 2 siblings, 0 replies; 11+ messages in thread From: David Woodhouse @ 2000-11-22 11:05 UTC (permalink / raw) To: David Hinds; +Cc: Tobias Ringstrom, Kernel Mailing List dhinds@lahmed.stanford.edu said: > Is there a technical reason for this? Not that I know of; but then I > also cannot think of a good reason for wanting, say, the generic code > built in but the controller support as modules. I do see reasonable > arguments for all-builtin or all-modules. register_ss_entry() is broken and when you unload a socket driver it'll get very confused and leave /proc entries behind. You can clean this up by removing pcmcia_core.o and reloading it. If you have pcmcia_core.o built in and a socket driver as a module, then obviously you can't do this without rebooting. I doubt this was known at the time the Config.in choices were made, but it's sufficient reason right now to leave it as it is. The correct fix is to dump the static socket tables completely, as has already happened in the standalone code, but I think that should probably wait for 2.5. In the meantime, this patch ought to work around the problem for most cases - although it'll still break if you load 2 socket drivers, then unload them again FIFO. Index: drivers/pcmcia/cs.c =================================================================== RCS file: /net/passion/inst/cvs/linux/drivers/pcmcia/Attic/cs.c,v retrieving revision 1.1.2.28 diff -u -r1.1.2.28 cs.c --- drivers/pcmcia/cs.c 2000/11/10 14:56:32 1.1.2.28 +++ drivers/pcmcia/cs.c 2000/11/22 10:37:33 @@ -416,12 +416,10 @@ { int i; - for (i = 0; i < sockets; i++) { + for (i = sockets-1; i >= 0; i-- ) { socket_info_t *socket = socket_table[i]; if (socket->ss_entry == ss_entry) - pcmcia_unregister_socket (socket); - else - i++; + pcmcia_unregister_socket (socket); } } /* unregister_ss_entry */ -- dwmw2 - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/ ^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2000-11-24 17:37 UTC | newest] Thread overview: 11+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2000-11-21 22:34 Why not PCMCIA built-in and yenta/i82365 as modules Tobias Ringstrom 2000-11-22 0:04 ` David Hinds 2000-11-22 1:10 ` Albert D. Cahalan 2000-11-22 1:28 ` David Hinds 2000-11-22 1:44 ` Horst von Brand 2000-11-22 1:50 ` David Hinds 2000-11-22 10:54 ` Tobias Ringstrom 2000-11-22 10:25 ` Matti Aarnio 2000-11-22 12:29 ` Alan Cox 2000-11-24 17:06 ` Oliver Xymoron 2000-11-22 11:05 ` David Woodhouse
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox