I am working on the RPI i2c slave on a RPI3 / CM3 module. I have it working for Writing a register to the RPi as an I2C slave from and FT4232H master. The reading of a register works - however the value that is returned by the RPi for the register seems to be updating on a second read..
That is - I write register 0x00 with 0x0A, i read register 0x00 and for the first time i read the previous value. On the second read i get 0x0A - so it works with some bugs. I will be working on it again sometime soon but for now here is the link to the github repo of my current state
It has been 6 months at least since i have looked at it so its not fresh in my memory, but i recently found a project I'd like to include it in.