Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ASoC: SOF: imx: Describe ESAI parameters to be sent to DSP

Introduce sof_ipc_dai_esai_params to keep information that
we get from topology and we send to DSP FW.

Also bump the ABI minor to reflect the changes on DSP FW.

Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20191008164443.1358-6-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>

authored by

Daniel Baluta and committed by
Mark Brown
b4be4276 8b160dc2

+38 -3
+34
include/sound/sof/dai-imx.h
··· 1 + /* SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause) */ 2 + /* 3 + * Copyright 2019 NXP 4 + * 5 + * Author: Daniel Baluta <daniel.baluta@nxp.com> 6 + */ 7 + 8 + #ifndef __INCLUDE_SOUND_SOF_DAI_IMX_H__ 9 + #define __INCLUDE_SOUND_SOF_DAI_IMX_H__ 10 + 11 + #include <sound/sof/header.h> 12 + 13 + /* ESAI Configuration Request - SOF_IPC_DAI_ESAI_CONFIG */ 14 + struct sof_ipc_dai_esai_params { 15 + struct sof_ipc_hdr hdr; 16 + 17 + /* MCLK */ 18 + uint16_t reserved1; 19 + uint16_t mclk_id; 20 + uint32_t mclk_direction; 21 + 22 + uint32_t mclk_rate; /* MCLK frequency in Hz */ 23 + uint32_t fsync_rate; /* FSYNC frequency in Hz */ 24 + uint32_t bclk_rate; /* BCLK frequency in Hz */ 25 + 26 + /* TDM */ 27 + uint32_t tdm_slots; 28 + uint32_t rx_slots; 29 + uint32_t tx_slots; 30 + uint16_t tdm_slot_width; 31 + uint16_t reserved2; /* alignment */ 32 + } __packed; 33 + 34 + #endif
+2
include/sound/sof/dai.h
··· 11 11 12 12 #include <sound/sof/header.h> 13 13 #include <sound/sof/dai-intel.h> 14 + #include <sound/sof/dai-imx.h> 14 15 15 16 /* 16 17 * DAI Configuration. ··· 74 73 struct sof_ipc_dai_dmic_params dmic; 75 74 struct sof_ipc_dai_hda_params hda; 76 75 struct sof_ipc_dai_alh_params alh; 76 + struct sof_ipc_dai_esai_params esai; 77 77 }; 78 78 } __packed; 79 79
+1 -1
include/uapi/sound/sof/abi.h
··· 26 26 27 27 /* SOF ABI version major, minor and patch numbers */ 28 28 #define SOF_ABI_MAJOR 3 29 - #define SOF_ABI_MINOR 10 29 + #define SOF_ABI_MINOR 11 30 30 #define SOF_ABI_PATCH 0 31 31 32 32 /* SOF ABI version number. Format within 32bit word is MMmmmppp */
+1 -2
include/uapi/sound/sof/tokens.h
··· 111 111 /* TODO: Add SAI tokens */ 112 112 113 113 /* ESAI */ 114 - #define SOF_TKN_IMX_ESAI_FIRST_TOKEN 1100 115 - /* TODO: Add ESAI tokens */ 114 + #define SOF_TKN_IMX_ESAI_MCLK_ID 1100 116 115 117 116 #endif