Thanks for the suggestion; I'll probably end up implementing this in my I2C driver. The temporary GPIO switch won't hurt; at that point, the I2C host should probably get a reset too just to un-confuse it (at least I can generate THAT in pure software).