• Sameer Pujar's avatar
    ASoC: tegra: Add master volume/mute control support · 0d242698
    Sameer Pujar authored
    The MVC module has a per channel control bit, based on which it decides
    to apply channel specific volume/mute settings. When per channel control
    bit is enabled (which is the default HW configuration), all MVC channel
    volume/mute can be independently controlled. If the control is disabled,
    channel-0 volume/mute setting is applied by HW to all remaining channels.
    Thus add support to leverage this HW feature by exposing master controls
    for volume/mute.
    
    With this, now there are per channel and master volume/mute controls.
    Users need to just use controls which are suitable for their applications.
    The per channel control enable/disable is mananged in driver and hidden
    from users, so that they need to just worry about respective volume/mute
    controls.
    Signed-off-by: default avatarSameer Pujar <spujar@nvidia.com>
    Link: https://lore.kernel.org/r/1638278605-28225-1-git-send-email-spujar@nvidia.comSigned-off-by: default avatarMark Brown <broonie@kernel.org>
    0d242698
tegra210_mvc.c 20.3 KB