Hi Diego - Any updates on this?
From what I've read so far, the client driver example here (pointed to by https://www.kernel.org/doc/Documentation/i2c/slave-interface):
linux/i2c-slave-eeprom.c at master · torvalds/linux · GitHub
is somewhat relevant. This assumes a user space instantiation of the i2c client device though.
https://www.kernel.org/doc/Documentation/i2c/instantiating-devices seems to describe how to do this for when the Linux i2c driver is acting as master. At least as far as I can tell.
I need a way of instantiating a kernel space i2c client (slave) whose address I can set as part of struct i2c_client and having my driver callback be called by i2c core when the imx-i2c driver generates an interrupt.