No I'm not joking, I read that you broke your Fuze too
I gave up studying i2c registers, I think the benefit isn't very high (i2c busy loop delay could be mesured anyway).
About headphones detection I gave up as well since we can detect insertion but not removal it seems, and i2c interrupts are not needed for this. (You can enable the interrupt by IRQ_ENRD_* ascodec registers and check the status manually).
Just look for "headphone detec" in the AS3525 spec and "DET_ON" in as3514.h
@saratoga : except lcd & i2c I didn't see any busy loops without yield() in the middle, so I think the slowness is related to caching being disabled (mmu disabled).
Other stuff : today I looked again at the Clipv2 and now I pass the SD init procedure! Now I'm looking at which registers to modify to get a DMA transfer.
The code is still very hackish, I'm eagerly waiting for a AS3531 spec to see which SD controller is used.
I'll write again to the AMS people I contacted to see if they didn't forget me.
Oh and I noticed that the viewer plugin crashes a lot on my Clip, did someone notice that as well on Clip & other targets?