ASoC: msm: qdsp6v2: Propagate device HW delay to AFE.
- HW delay for each supported device is maintained in
ACDB. This needs to be propagated to AFE for timestamp
calculation in voice path. AFE provides device HW and
SW delays to CVD; based on which timestamps are calculated
for voice packets.
Cherrypick from: I959676c1ee4e0568e661e7666a61c98152344047
Change-Id: I02c59462560749da3a1cfe2f8f614b939102e527
Signed-off-by: Srikanth Katta <skatta@codeaurora.org>
Signed-off-by: Pradnya Chaphekar <pradnyac@codeaurora.org>
diff --git a/include/sound/apr_audio.h b/include/sound/apr_audio.h
index 0711b2b..f303c62 100644
--- a/include/sound/apr_audio.h
+++ b/include/sound/apr_audio.h
@@ -304,6 +304,14 @@
#define AFE_PORT_MULTI_CHAN_HDMI_AUDIO_IF_CONFIG 0x000100D9
#define AFE_PORT_CMD_I2S_CONFIG 0x000100E7
+#define AFE_PARAM_ID_DEVICE_HW_DELAY 0x00010243
+#define AFE_API_VERSION_DEVICE_HW_DELAY 0x1
+
+struct afe_param_id_device_hw_delay_cfg {
+ uint32_t device_hw_delay_minor_version;
+ uint32_t delay_in_us;
+} __packed;
+
union afe_port_config {
struct afe_port_pcm_cfg pcm;
struct afe_port_mi2s_cfg mi2s;
@@ -417,6 +425,7 @@
struct afe_param_channels channels;
struct afe_param_loopback_gain loopback_gain;
struct afe_param_loopback_cfg loopback_cfg;
+ struct afe_param_id_device_hw_delay_cfg hw_delay;
} __attribute__((packed)) param;
} __attribute__ ((packed));