Below is the snapshot from the schematic for hardware connections.

Codec is connected on I2C1 and SAI2.
Below are my changes in the device tree.
There is no headphone in custom board. Playback device is speaker and Capture device is MIC. both are always there , there is no jack for mic detect.
I have made related changes in device tree like pin muxing, i2c change and sai2.
But neither playback nor capture are working.
When i try to play using aplay, It gives me below error.
aplay: pcm_write:1947: write error: Input/output error <== ERROR
Codec is getting detected in i2c bus, I have tested it through i2cdetect utility.
Few more logs.
aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: wm8960audio [wm8960-audio], device 0: HiFi wm8960-hifi-0 []
Subdevices: 1/1
Subdevice #0: subdevice #0
arecord -l
**** List of CAPTURE Hardware Devices ****
card 0: wm8960audio [wm8960-audio], device 0: HiFi wm8960-hifi-0 []
Subdevices: 1/1
Subdevice #0: subdevice #0
Am i missing anything? Any pointers or help is appreciated.
How should i proceed to debug it?