This is an insanely complicated scheme. If I wanted to this then I'd hang a chip off the I2C bus inside the empeg. A user land app to do the controlling as well instead of wedging it into the kernel and wasting memory.