Commit 65aecfa8 authored by Hardik T Shah's avatar Hardik T Shah Committed by Mark Brown

ASoC: Intel: Skylake: Add support for module GUIDs

The DSP FW specifies loadable modules using GUIDs so add support to
specify the GUIDs from topology
Signed-off-by: default avatarHardik T Shah <hardik.t.shah@intel.com>
Signed-off-by: default avatarOmair M Abdullah <omair.m.abdullah@intel.com>
Signed-off-by: default avatarJeeja KP <jeeja.kp@intel.com>
Signed-off-by: default avatarSubhransu S. Prusty <subhransu.s.prusty@intel.com>
Signed-off-by: default avatarVinod Koul <vinod.koul@intel.com>
Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent 04afbbbb
...@@ -1164,6 +1164,10 @@ static int skl_tplg_widget_load(struct snd_soc_component *cmpnt, ...@@ -1164,6 +1164,10 @@ static int skl_tplg_widget_load(struct snd_soc_component *cmpnt,
mconfig->time_slot = dfw_config->time_slot; mconfig->time_slot = dfw_config->time_slot;
mconfig->formats_config.caps_size = dfw_config->caps.caps_size; mconfig->formats_config.caps_size = dfw_config->caps.caps_size;
if (dfw_config->is_loadable)
memcpy(mconfig->guid, dfw_config->uuid,
ARRAY_SIZE(dfw_config->uuid));
mconfig->m_in_pin = devm_kzalloc(bus->dev, (mconfig->max_in_queue) * mconfig->m_in_pin = devm_kzalloc(bus->dev, (mconfig->max_in_queue) *
sizeof(*mconfig->m_in_pin), sizeof(*mconfig->m_in_pin),
GFP_KERNEL); GFP_KERNEL);
......
...@@ -246,6 +246,7 @@ enum skl_module_state { ...@@ -246,6 +246,7 @@ enum skl_module_state {
}; };
struct skl_module_cfg { struct skl_module_cfg {
char guid[SKL_UUID_STR_SZ];
struct skl_module_inst_id id; struct skl_module_inst_id id;
u8 domain; u8 domain;
bool homogenous_inputs; bool homogenous_inputs;
......
...@@ -32,6 +32,7 @@ ...@@ -32,6 +32,7 @@
#define MAX_IN_QUEUE 8 #define MAX_IN_QUEUE 8
#define MAX_OUT_QUEUE 8 #define MAX_OUT_QUEUE 8
#define SKL_UUID_STR_SZ 40
/* Event types goes here */ /* Event types goes here */
/* Reserve event type 0 for no event handlers */ /* Reserve event type 0 for no event handlers */
enum skl_event_types { enum skl_event_types {
...@@ -174,6 +175,8 @@ struct skl_dfw_pipe { ...@@ -174,6 +175,8 @@ struct skl_dfw_pipe {
} __packed; } __packed;
struct skl_dfw_module { struct skl_dfw_module {
char uuid[SKL_UUID_STR_SZ];
u16 module_id; u16 module_id;
u16 instance_id; u16 instance_id;
u32 max_mcps; u32 max_mcps;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment