summaryrefslogtreecommitdiffstats
path: root/alsa-pcm.c
AgeCommit message (Collapse)AuthorFilesLines
2018-10-26Optimize CHK_ macrosMark Farrugia1-2/+1
No need to be using kasprintf in a debug macro! Signed-off-by: Mark Farrugia <mark.farrugia@fiberdyne.com.au>
2018-10-26Reinstate temporarily removed PCM callbacksMark Farrugia1-4/+4
These can still be used, although proceed with caution when adding new Audio Paths. The copy_user PCM callback caused lots of strife when porting the loopback driver! Signed-off-by: Mark Farrugia <mark.farrugia@fiberdyne.com.au>
2018-10-26Update license headersMark Farrugia1-4/+4
All license headers need to be uniform across AVIRT Signed-off-by: Mark Farrugia <mark.farrugia@fiberdyne.com.au>
2018-10-26Fix DO_AUDIOPATH_CB, remove unused PCM cbs for nowMark Farrugia1-67/+50
We don't want to return inside the macro call necessarily. Some PCM cbs require differing return values. Signed-off-by: Mark Farrugia <mark.farrugia@fiberdyne.com.au>
2018-10-26Remove remaining blocksize associated calcsMark Farrugia1-4/+0
These should be done in the Audio Path Signed-off-by: Mark Farrugia <mark.farrugia@fiberdyne.com.au>
2018-10-26Make Audio Path searching dynamic againMark Farrugia1-3/+3
Remove hardcoded test Audio Path UID, and use dynamic Audio Path UID Signed-off-by: Mark Farrugia <mark.farrugia@fiberdyne.com.au>
2018-10-26Refactor to use new DINFO macrosMark Farrugia1-3/+7
Signed-off-by: Mark Farrugia <mark.farrugia@fiberdyne.com.au>
2018-10-26Remove blocksize from audiopathMark Farrugia1-12/+1
This is no longer needed in AVIRT, since it is only actually used for the ADSP Audio Path. Clean up white space, add function documentation, remove out of place debug prints Signed-off-by: Mark Farrugia <mark.farrugia@fiberdyne.com.au>
2018-10-26Add configfs interface, revamp stream groupingMark Farrugia1-53/+29
Add additional callbacks for audio path configuring, after card has been sealed. Signed-off-by: Mark Farrugia <mark.farrugia@fiberdyne.com.au>
2018-10-26Make pcm_ack staticMark Farrugia1-1/+1
Add missing static declaration to pcm_ack callback function Signed-off-by: Mark Farrugia <mark.farrugia@fiberdyne.com.au>
2018-10-26Refactor top-level AVIRT API to be avirt_<subject>_<action>Mark Farrugia1-1/+1
This makes for a more organized function/variable naming convention Signed-off-by: Mark Farrugia <mark.farrugia@fiberdyne.com.au>
2018-10-26Create avirt_stream structure in place of old config structuresMark Farrugia1-22/+47
Remove unnecessary extra memory allocation with the old config structures. We can store the snd_pcm pointer, which contains lots of info already. Signed-off-by: Mark Farrugia <mark.farrugia@fiberdyne.com.au>
2018-10-26Add 'uid' field to AP, store AP in PCM private data, fix helper macrosMark Farrugia1-25/+28
We want to use a UID when registering APs, that must start with "ap_", and acts as a unique identifier for each AP. To move forward with the adoption of routing PCMs to differing APs, we now store the AP in the PCM private data - set at pcm_open. A fix to the helper macros now allows additional args to be passed in for inclusion to the debug string Signed-off-by: Mark Farrugia <mark.farrugia@fiberdyne.com.au>
2018-10-26Remove configure_pcm function, absorb into pcm_openMark Farrugia1-24/+10
No longer any need for the configure_pcm function in it's current form. Signed-off-by: Mark Farrugia <mark.farrugia@fiberdyne.com.au>
2018-10-26Fix warnings generated by checkpatch.plMark Farrugia1-19/+18
Signed-off-by: Mark Farrugia <mark.farrugia@fiberdyne.com.au>
2018-10-26Move ALSA info into coreinfo, for export to Audio PathsMark Farrugia1-12/+7
Remove the avirt_alsa_driver Signed-off-by: Mark Farrugia <mark.farrugia@fiberdyne.com.au>
2018-10-26Remove leftover variable 'hw_frame_idx'Mark Farrugia1-7/+3
Remove remnant of earlier implementation Signed-off-by: Mark Farrugia <mark.farrugia@fiberdyne.com.au>
2018-10-26Remove unused 'buffersize' avirt_alsa_dev_groupMark Farrugia1-13/+0
buffersize is only needed by the ADSP Audio Path driver, so this has been migrated there. Signed-off-by: Mark Farrugia <mark.farrugia@fiberdyne.com.au>
2018-10-26Remove the unnecessary allocation of substreams in avirt_alsa_dev_groupMark Farrugia1-9/+0
Substreams are actually allocated by the PCM middle layer, so we do not need to do this here Signed-off-by: Mark Farrugia <mark.farrugia@fiberdyne.com.au>
2018-10-26Loopback progressJames O'Shannessy1-3/+7
Loopback currently reads from dma_area but the initial copy from playback to capture has not been implemented. Signed-off-by: James O'Shannessy <james.oshannessy@fiberdyne.com.au>
2018-10-26Current state of loopback.James O'Shannessy1-6/+16
Committing debug changes and loopback changes Signed-off-by: James O'Shannessy <james.oshannessy@fiberdyne.com.au>
2018-10-26Changes to loopbackJames O'Shannessy1-0/+9
Added more detailed printing to loopback, alsa-pcm. Updated load and unload functions Signed-off-by: James O'Shannessy <james.oshannessy@fiberdyne.com.au>
2018-10-26Remove snd_pcm_lib_mmap_vmalloc from default pcm_ops struct.Mark Farrugia1-1/+0
This has been removed as of Linux kernel 4.18 Signed-off-by: Mark Farrugia <mark.farrugia@fiberdyne.com.au>
2018-10-26Update licensingMark Farrugia1-1/+1
Signed-off-by: Mark Farrugia <mark.farrugia@fiberdyne.com.au>
2018-10-26Public push of AVIRT.James O'Shannessy1-0/+381
Follow readme for building in/out of tree for Ubuntu/AGL/etc. Signed-off-by: James O'Shannessy <james.oshannessy@fiberdyne.com.au>