]> git.alsa-project.org Git - alsa-utils.git/commit
topology: plugins: nhlt: add ssp aux controls
authorJaska Uimonen <jaska.uimonen@linux.intel.com>
Wed, 12 Oct 2022 10:44:55 +0000 (13:44 +0300)
committerJaroslav Kysela <perex@perex.cz>
Tue, 24 Jan 2023 08:42:40 +0000 (09:42 +0100)
commit1ad140f641b876fbe1222a42990eb082c79a9146
treef1ee75448b8a61cb7c8da066347f1027866ad8a8
parent4e3843d0ed9ea7845f5570a1aca542995f91c232
topology: plugins: nhlt: add ssp aux controls

Intel ssp blob can have auxiliary controls catenated as tlv array at the
end of its "normal" data blob. These are needed in some platforms for
example to enable hardware clocks earlier than streaming starts.

In topology the auxiliary data classes are embedded into hw_config and
can be instantiated like:

Object.Base.hw_config."SSP0_0" {
id              0
mclk_freq       38400000
bclk_freq       256000
tdm_slot_width  16
format          "DSP_A"
bclk            "codec_provider"
fsync           "codec_provider"
fsync_freq      16000

Object.Base.mn_config."MN_0" {
m_div   100
n_div   200
}

Object.Base.clk_config."CLK_0" {
clock_warm_up          1
mclk                   2
warm_up_ovr            3
clock_stop_delay       4
keep_running           5
clock_stop_ovr         6
}
}

Fixes: https://github.com/alsa-project/alsa-utils/pull/184
Signed-off-by: Jaska Uimonen <jaska.uimonen@linux.intel.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
topology/nhlt/intel/ssp-nhlt.c
topology/nhlt/intel/ssp/ssp-debug.c
topology/nhlt/intel/ssp/ssp-intel.h
topology/nhlt/intel/ssp/ssp-internal.h
topology/nhlt/intel/ssp/ssp-process.c
topology/nhlt/intel/ssp/ssp-process.h