OSDN Git Service

ASoC: rockchip: rockchip_max98090: Set period size to 240
authorCheng-Yi Chiang <cychiang@chromium.org>
Tue, 13 Aug 2019 07:44:30 +0000 (15:44 +0800)
committerMark Brown <broonie@kernel.org>
Tue, 13 Aug 2019 11:39:31 +0000 (12:39 +0100)
commit7188f656cdf762d4ea8ce16b6aaf4c6b06e119ec
tree98f006b4c1cd5a900535af3fbd4afb1d741099a4
parent8afd1a99d713ccc7cf1bd509b205c3bb60cf0b90
ASoC: rockchip: rockchip_max98090: Set period size to 240

From stress testing of arecord, we found that period size
greater than ~900 will bring pl330 to DYING state and
can not recover within 100 iterations.
The result is that arecord will stuck and get I/O error,
and issue can not be recovered until reboot.

This issue does not happen when period size is small.
Set constraint of period size to 240 to prevent such issue.
With the constraint, there will be no issue after 2000 iterations.

We can revert this patch once the root cause is found
in rockchip's pl330 implementation.

Signed-off-by: Cheng-Yi Chiang <cychiang@chromium.org>
Link: https://lore.kernel.org/r/20190813074430.191791-1-cychiang@chromium.org
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/rockchip/rockchip_max98090.c