On Thu, Aug 29, 2019 at 05:54:00AM +0000, Shuming [范書銘] wrote:
So really this is setting up a loopback for testing?
We would not like to change ADCDAT pin to input mode in normal case. That's why the driver enables ADCDAT pin to the output mode in default. The rt1011 supports the feedback signal which could be playback data or I/V data, etc. If the system wants the AEC reference data, rt1011 could feedback the playback data.
The product could connect 2/4/6/8 rt1011 chips on the same I2S bus. In a test or debug mode, we could toggle ADCDAT pin to input mode that also helps HW engineer check the slot of feedback signal for each rt1011.
I think this needs more than just a straight userspace control on one device, these use cases make sense but they'll need to be configured over multiple chips simultaneously otherwise there's some possibility of hardware damage (eg, if two chips try to drive the signal at the same time). If this really can be usefully varied at runtime then the driver bit of this should probably be an API that the machine driver can call, the machine driver can then expose a control that sets all the chips involved up together.