Messages in this thread | | | Date | Thu, 09 Mar 2000 09:45:50 -0500 | From | Peter Leif Rasmussen <> | Subject | PNP design philosophy? |
| |
First, excuse me but I am not on this list (too busy), but keeps up by reading Kernel Traffic @ LinuxCare. I have compiled almost every release of 2.3.* and with 2.3.50 wondered about the following.
What is the design philosophy of resource management in the kernel and what should I expect in 2.4?
Specifically I am interested in IRQ, DMA and IO, but I suppose there is more to it, and what dependance is expected on the BIOS in i386?
What worries me is that I have in one present i386 system:
1.Legacy ISA cards 2.ISA PNP cards 3.PCI cards 4.AGP card 5.USB 6.Basic stuff like keyboard, mouse, serial, parallel, etc.
And here I don't seem to be able to specify for the kernel what IRQ, DMA and IO port I want to go where. For example an ISA-PNP soundcard no longer lets me tell it what IRQ, DMA and IO I want it to use because it gets it from the PNP code. And I can't see that I am able to tell the PNP code what resources I want to go where?
In the particular system, I have to set up the BIOS manually to configure those resources, and that makes my PNP capable Linux kernel dependant on the i386 BIOS, which in my book isn't good, because I could have a machine with a BIOS without that capability. I would prefer to just set everything to automatic in the BIOS (or nothing at all) and fiddle with the resources in the kernel.
I would therefore hope that reasonable defaults are attempted used by the kernel so no conflicts occur (presently, I am not able to run the mentioned ISA-PNP soundcard because of an IRQ conflict), but that it is also manually configurable either through command line options or /proc.
If someone could therefore enlighten me and calm me down, or tell me that I'll have to start hacking the kernel myself I'd appreciate it. Or that I am a dofus that missed the boat and that it is a well thought out issue :-)
Thank you very much,
Peter -- main(){char*s="O_>>^PQAHBbPQAHBbPOOH^^PAAHBJPAAHBbPA_H>BB";int i,j,k=1,l,m,n; for(j=0;j<7;j++)for(l=0;m=l-6+j,i=m/6,n=j*6+i,k=1<<m%6,l<41-j;l++) putchar(l<6-j?' ':l==40-j?'\n':k&&s[n]&k?'*':' ');}
- 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/
| |