Variksla <variksla <at> gmail.com> writes:
On Mar 24, 2015, at 12:26 AM, Lars-Peter Clausen <lars <at> metafoo.de>
On 03/24/2015 07:54 AM, noman pouigt wrote: On Mon, Mar 23, 2015 at 11:53 PM, noman pouigt <variksla <at> gmail.com>
wrote:
I would like to know which file I can use to connect/enable DPAM widgets permanently so a simple aplay/record can work?
My environment is:
- Yocto Linux Kernel 3.10 - (DTS based)
- Max98090 Codec
- imx6SL SoC
I thought about doing this in alsa.conf or asound.conf but I couldn't find a single example with DAPM widgets .
I am also stuck with the same problem. I am sure ALSA experts can help here.
What i want to know is how to set the dapm widgets in open embedded? Is it alsa.conf or asound.conf ?
I need to set something like this: amixer cset name="LEFT MIXER DAC" 1
Using amixer i am able to playback but i don't know how can i modify conf file to have this dapm widgets associated with a device.
Any example would suffice.
Hi,
The whole point of DAPM (dynamic audio power management) is that you don't
have to manually power up or down
a widget. Userspace configures the routing of the audio paths and the kernel
automatically detects which
parts of the chip need to be powered up for the current routing configuration.
Why do you want to manually enable a widget?
In android we have ucm files where dapm routings are associated with each
device. Same way where can I list
down dapm routings in open embedded? We know that user space gives the routings but we need to associate each
device with certain set of dapm
routes so i am looking for a place where we can list down dapm routes which
gets triggered when a specific
device is chosen for playback or recording. Something analogous to ucm files
in open embedded? I couldn't
find a way to associate dapm routes with a specific device in conf files.
Can we use Asound.conf for this purpose?
- Lars
In my case, I do not want users to run these amixer commands to setup DAPM routing if they just want to use aplay/arecord.
amixer cset name='LINMOD Mux' 1 amixer cset name='Left Receiver Mixer Left DAC Switch' 1 amixer cset name='Right Receiver Mixer Right DAC Switch' 1
When I run aplay without above commands, I can see aplay not able to connect further than '"DACL" since there are multiple routes available in codec driver. Only enabling the right DAC switches using above commands completes routes: Logs: dapm_mark_dirty:max98090:dapm enter HiFi Playback dapm_dirty_widget:max98090:dapm enter HiFi Playback max98090 2-0010: Marking HiFi Playback dirty due to stream event dapm_power_widgets:max98090:dapm enter dapm_reset:max98090:dapm enter dapm_power_one_widget:max98090:dapm enter dapm_dac_check_power:max98090:dapm enter dapm_generic_check_power:max98090:dapm enter is_connected_input_ep:max98090:dapm HiFi Playback is_connected_output_ep:max98090:dapm HiFi Playback is_connected_output_ep:max98090:dapm AIFINL is_connected_output_ep:max98090:dapm LTENL Mux is_connected_output_ep:max98090:dapm DACL is_connected_output_ep:max98090:dapm AIFINR is_connected_output_ep:max98090:dapm LTENR Mux is_connected_output_ep:max98090:dapm DACR is_connected_output_ep:max98090:dapm AIFINL is_connected_output_ep:max98090:dapm AIFINR
Available DAPM Routes: {"Right Headphone Mixer", "Left DAC Switch", "DACL"}, {"Left Speaker Mixer", "Left DAC Switch", "DACL"}, {"Right Speaker Mixer", "Left DAC Switch", "DACL"}, {"Left Receiver Mixer", "Left DAC Switch", "DACL"}, {"Right Receiver Mixer", "Left DAC Switch", "DACL"},
I think there must be a way to enable complete DAPM routes all the way from "HiFi Playback" to one of the outputs defined in SND_SOC_DAPM_OUTPUT() from userspace without having to type commands.
asound.state save states however its not dynamic. i.e, it will just reload settings. Won't switch between paths.