* Jean Delvare <khali at linux-fr.org> [2004-05-09 12:56:36 +0200]: > Hi Mark, > > > > I.e. technically, it's the CVS w83781d driver that's wrong... > > > although it happens to be benign vs. 2.4 kernel. > > > > Yes, I see that now. I'm surprised that it doesn't cause more trouble > > than it does. Care to correct the 2.4/CVS driver so that it does what > > your asb100 driver does (i.e. the right thing)? > > I took a longer look at the w83781d driver and finally, it doesn't seem > to be broken. It simply relies on the fact that i2c-core will detach the > clients on the same order they were attached. Since the w83781d driver > attached the main client before attaching the subclients, the main > client is detached first. In the callback function, the driver detaches > the subclients "manually" (as opposed to letting i2c-core take care). > When returning from the callback function, the subclients are already > gone, so i2c-core doesn't do anything for them (verified). Exactly. That's what I meant by "happens to be benign". > So I don't think there's anything that needs fixing here. Let me know if > I missed something. That's fine with me. Regards, -- Mark M. Hoffman mhoffman at lightlink.com