Color me a bit skeptical... we've always had this capability really:
for multi-function devices, just register as many subsystems as you
need. If your device is a network _and_ SCSI device, you can do that
with today's APIs.
I just went through a long thread (e1000/e1000e) explaining how much
pain multiple drivers for the same PCI ID cause on the distro side of
things... its a mess. In each case you must write special case code to
resolve the ambiguity. You never know which is the best driver to
choose, or proper module load order -- which may vary depending on
machine, not just static information captured from a kernel Makefile.
Jeff
--