aboutsummaryrefslogtreecommitdiff
path: root/tests/src/pcm_loopback_test.cc
AgeCommit message (Collapse)Author
2021-06-02force pcm_open to open device with the non-blocking flagdvdli
When a client opens a PCM device whose substreams are all occupied without the non-blocking flag, the open function would be blocked in the kernel until the previous opened ones are closed. This would cause deadlock if they try to hold the same lock. Most of the ALSA PCM drivers on embedded systems are implemented with the ALSA SOC framework. Each PCM device has only one substream. This problem would happen frequently. To force pcm_open to open PCM devices with non-blocking flag is beneficial to resolve this problem. It returns the control to clients to try again later. The reason why we don't call pcm_open with PCM_NONBLOCK is that the PCM_NONBLOCK also affects the read and write behaviors. I also add a test case to test whether the pcm_open would be blocked.
2021-03-22fix bug in testsdvdli
2021-03-10add a loopback test for floating point PCMdvdli
2020-12-02fix typo, add comments to describe the tests and fix the loopback testdvdli
2020-11-26add unit testsdvdli
1. add mixer event test 2. add pcm capturing test 3. add pcm loopback test