7 Commits

Author SHA1 Message Date
Andrea Bondavalli
3d3209bfc9 Set of chnages to ALSA Ravenna driver to fix the playback with memory mapped access mode on ARM platform.
Issue is in the mr_alsa_audio_pcm_playback_copy_internal() function of audio_driver.c that transfers the PCM samples from the ALSA buffer to the Ravenna buffer using the get_user() function.
In case of memory access mode the ALSA buffer can be directly accessed by the kernel and the samples must be copied.
mr_alsa_audio_pcm_playback_copy_internal() has been modified  to handle the transfer of the ALSA buffer from user space (used with read/write access mode) and from kernel space (used by memory access mode).
The issue is common to all the platform but impacting ARM only.
Additional changes:
- changed type for dma_playback_offset and dma_capture_offset variables to uint32_t instead of atomic_t since the pointer callback mr_alsa_audio_pcm_pointer() is now atomic
- added variables to the mr_alsa_audio_chip scructure to decrease the number of calls to snd_pcm_lib_xxx() functions. These get assigned in the prepare callback mr_alsa_audio_pcm_prepare()
- changed mr_alsa_audio_get_playback_buffer_size_in_frames() to return configured size of Ravenna playback buffer (same as mr_alsa_audio_get_capture_buffer_size_in_frames())
- some rework of the existing patches
This fixes issue #20
2020-08-27 21:20:19 +02:00
Andrea Bondavalli
2a2d536284 Change in RAVENNA ALSA driver to avoid channels consistency check when operating in mmap interleaved mode 2020-08-02 15:54:02 +02:00
Andrea Bondavalli
ba1305a0b9 Added fix to ALSA/RAVENNA driver to revert changes done to mr_alsa_audio_pcm_capture_copy_internal() in ALSA/RAVENNA driver version 1.1.93.
This fixes issue #14
2020-07-03 15:50:27 +02:00
Andrea Bondavalli
dd0ab49c6c Added fix to ALSA/RAVENNA driver to restore default number of inputs and outputs to 64.
These were set back to 8 after merge of ALSA/RAVENNA driver version 1.1.93.
This fixes issue #13
2020-06-30 17:27:16 +02:00
Andrea Bondavalli
f9a07569f9 Added fix to AES67 Driver to remove a kernel message that can delay the playback startup on slow platform 2020-06-15 20:49:33 +02:00
Andrea Bondavalli
c62ccdb808 Added fix to ALSA RAVENNA/AES67 module to solve compilation error "undefined named operand ‘new’" using kernel headers 5.4.19-rt11.
Since this fix seems to work on all the kernels I tested so fax (> 4.14.x) I add it to the generic fixes patch file (ravenna-alsa-lkm-fixes.patch).
2020-02-29 10:41:31 +01:00
Andrea Bondavalli
259e99afbc First import 2020-01-28 20:16:30 +01:00