Martin Mares and myself have already discussed using a special section in
each driver with a structure, which would give name to the driver, type of
driver (net, scsi, fs, ...), list of buses the driver is servicing devices
on (e.g. it could be ISA+PCI or PCI+SBUS or whatever), for buses where card
detection is easy (like PCI or SBUS) it would contain magics used to detect
them (for PCI the IDs, for SBUS device names), then of course additional
detection routines, arguments it accepts (that could unify in kernel and
module arguments), dependencies on other drivers, etc. Even bus drivers,
like PCI, SBUS, ... itself would come with such section entries, so even
main.c could be simplified.
Then one could do stuff like initialize all SCSI devices on PCI bus X, etc.
But as it is obviously 2.3 thing, it has to wait...
Cheers,
Jakub
___________________________________________________________________
Jakub Jelinek | jj@sunsite.mff.cuni.cz | http://sunsite.mff.cuni.cz
Administrator of SunSITE Czech Republic, MFF, Charles University
___________________________________________________________________
UltraLinux | http://ultra.linux.cz/ | http://ultra.penguin.cz/
Linux version 2.1.130 on a sparc64 machine (3958.37 BogoMips)
___________________________________________________________________
-
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/