Messages in this thread | | | Date | Tue, 9 Mar 1999 23:04:30 -0600 (CST) | From | Dave Weis <> | Subject | Re: RFC: ISA Plug and Play Implementation |
| |
> Unfortunately, I've been unable to come up with a great way to get around > this and was wondering if anyone had any ideas.
I had thought about this for a few minutes before and was thinking of something like kerneld, so when the kernel hits a pnp device, it would request pnp-driver-rwb1688-ld0 etc. I hadn't thought too much about the resources though, perhaps we could have that be slightly modular, like pnp-driver-rwb1688-ld0 sb io=0x220 irq=5 dma=1 which would be a combination of /etc/isapnp.conf and /etc/conf.modules. Alternatively, just have pnp-driver-rwb1688-ld0 sb and keep conf.modules the same. That would keep most of the policy in userspace, and just have a /proc file that would contain pnp-driver-rwb1688-ld0 io 220 pnp-driver-rwb1688-ld0 irq 5 7 9 10 pnp-driver-rwb1688-ld0 dma 0 1 3
It doesn't help much with boot devices on pnp, etc. but I think initrd could solve this similar to the way it is done now. The serial number could be used for a more unique identifier in the case of multiple identical cards. I guess we could have a program automatically read the /proc file on boot, right after the root file system is mounted. At that point we would have most of the resources already taken by the non-pnp devices. If another pnp device is added later in the same boot, the userspace program can be re-run and find out which devices aren't configured yet and remove and reinsert modules until the proper resources are free.
I think this is a good start and doesn't put a ton of non-swappable code in the kernel.
djweis
-- David Weis | 10520 New York Ave, Des Moines, IA 50322 djweis@plconline.com | Voice 515-278-0133 Ext 231 http://www.plconline.com/ | "Great spirits will always encounter violent | opposition from mediocre minds" - Einstein
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |