ASoC: es8316: fix suspend/resume sync issue#3869
ASoC: es8316: fix suspend/resume sync issue#3869plbossart merged 2 commits intothesofproject:topic/sof-devfrom
Conversation
This reverts commit 45964e4. Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
|
single_read/single_write should be set if the codec doesn't support bulk read/write |
|
Yes the fix should work. CS42l42 has the same issue. I have no idea why some platforms use bulk write by default and others don't. |
|
@yangxiaohua2009 the default is that bulk_read/write is used, unless explicitly disabled with the .use_single_read/write. So the question is whether this bulk_read/write is supported in hardware, and if no we do need to set those two flags. Can you check the hardware capabilities? |
|
Yes these two flags are needed. ES8336 only supports I2C read/write one byte a time. |
The SOF CI tests report failures with the following error thrown kernel: es8316 i2c-ESSX8336:00: Unable to sync registers 0x0-0x1. -121 ES8336 only supports I2C read/write one byte a time, so we do need to set the .use_single_read and .use_single_write flags to avoid this sync issue. Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
ec5f920 to
ad6a9a7
Compare
|
Thanks @yangxiaohua2009, I updated the commit message. You should have an invite to join the SOF project, that will enable you to provide you approval directly in GitHub. |
|
missed the notification. Will run the test with stable-v2.2. |
|
just triggered internal test 15531 now. Had to wait as daily test uses same device pool. Will update the results. |
fredoh9
left a comment
There was a problem hiding this comment.
test result on JSL_ES8336_HDA is GOOD!
Error reported by the Intel CI during upstream merge in PR ##3859
@fredoh9 can you give this a try with the stable 2.2 firmware?
@ujfalusi @bardliao @yangxiaohua2009 comments welcome. I really have no idea if this is an acceptable fix.