SSM2603 right output offset issue


I try to use the SSM2603 chip on Zybo Z10 board for a month now and I still have the same problem: if I try to play a sinewave, the output signal look like that: (blue=right, yellow:left)

I triple check everything:

-My i2s input signal is OK, two's complement on 24bit:

(sorry, I only have a small part due to my logic analyzer)

I try to configure it with 2 method:

I2C IP based on this

And software from the zynq7 processing system like here:

Here is the soft config:

If I try to swap the right/left output channel (by changing the LRSWAP bit on Reg7), the problem stay on the right channel (but my input signal is well swap)

All clock are verified.

I try to read all the register after a config and they are all right configured.

Well there is just a little thing: if I send any register address to read, the SSM send me back the R0 register value each time. I have to ask to read 10 byte for the SSM to send me the first 10 registers value. It's not how I understand the read function of i2c but anyway...

And finally, here is the I2S and I2C transaction:



My main concern is that if I do a lot of resets, eventually it's gonna work fine... So I suspect a bad config but I can't figure it out

Thanks for your help