On Mon, 24 Jan 2005 20:24:59 -0800, Greg KH wrote: > This can be done today in the bus specific match functions. And because > of that, I would argue that this belongs in the bus specific code, and > not in the driver core, as it's up to the bus to know what the different > types of "matches" that can happen, and what the priority is. Here's a version of the VGA control code that actually works. It helps if I pci_enable() the device before using it. There was nothing wrong with the routing code. I can also control multiple cards on the same bus by turning on/off their response to IO space and then enabling VGA via the standard ports. I can use this to move my console from card to card. I have this code in drivers/pci because it needs to know add/remove from hotplug. Is there a better way to structure it? Note that this is not a VGA device, it is just a mechanism for controlling which VGA device is active. Another item I need to add is generating an initial hotplug event for each secondary card. This event has to happen even if there is a card specific driver loaded. The event will be used to run the reset program needed by secondary cards. -- Jon Smirl jonsmirl@gmail.com