On Wed, Feb 07, 2007 at 02:15:08PM -0800, Simon White wrote: > Hi, > > I've been working through trying to create a virtual > bus.
How does this differ from a "real" bus? > I've successfuly made it work for a single instance but wanted to > confirm how to create multiple instances of the virtual bus. Why would you need that? > I believe to do this you have only one instance of your new > bus_type registered but register multiple instances of struct device > for it. I just wanted to confirm that was correct. That would create multiple devices on the same bus. Is that what you need to do? > Lastly how do you walk over all devices on a bus > instance? You usually do this in your bus-specific code somehow. > I note bus_for_each_dev but that appears to take a bus_type rather > than struct device instance, hence I assume it will return all devices > from all instances. No, it will walk the bus that you created. If you need multiple busses, create multiple 'struct bus_type' structures. > I know I could compare each device to see if it is on a certain bus > instance but wondered if there was a better way? I think you will find that it works the way it is described. Might I ask what you are trying to do with these multiple busses? Note that you can have multiple trees of devices, all with the same bus_type, yet not joined together in any other way. Odds are, you probably want to do that, right? thanks, greg k-h - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/