Hi, beside all the other issues, Jean Delvare said the following: > Hi Michael, > >> + list_add_tail(&priv->adap.mux_list, &parent->mux_list_head); > > The driver core maintains a device tree already, do you really need to > keep your own? We've tried hard to remove all redundancy between > i2c-core and the driver core in the last couple years, so I really would > like us to not add such redundancy back now. > > If you have a good reason to have your own list, please explain. If > not, please get rid of it. > this is a core part of mux management. You need it for checking whether the current client that is to be added is already present. The problem is to efficiently parse down a mux tree towards the leaves. Sub-muxes are registered as i2c clients to their upper bus. I found no way to separate muxes from normal clients. So there were two ideas: invent a client-type field in i2c-client or to hold a separate list. The first one e.g. would have the possibility to provide basic info in sysFs but I feared a general debate. So I decided to go the other way which is hidden to the outer world. If you don't like this way, I'd need some ideas how to do it. -- KR Michael -- To unsubscribe from this list: send the line "unsubscribe linux-i2c" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html