diff options
author | Shengjiu Wang <shengjiu.wang@nxp.com> | 2021-03-12 03:38:41 +0100 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2021-03-25 14:58:07 +0100 |
commit | b73d9e6225e86492f6a901223a34ecfa7b55c178 (patch) | |
tree | 7488b96affc0db3d7e4f0eed3fbcd34d420084aa /sound/soc/fsl/fsl_rpmsg.h | |
parent | ASoC: soc-component: Add snd_soc_pcm_component_ack (diff) | |
download | linux-b73d9e6225e86492f6a901223a34ecfa7b55c178.tar.xz linux-b73d9e6225e86492f6a901223a34ecfa7b55c178.zip |
ASoC: fsl_rpmsg: Add CPU DAI driver for audio base on rpmsg
This is a cpu dai driver for rpmsg audio use case,
which is mainly used for getting the user's configuration
from devicetree and configure the clocks which is used by
Cortex-M core.
Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
Link: https://lore.kernel.org/r/1615516725-4975-3-git-send-email-shengjiu.wang@nxp.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound/soc/fsl/fsl_rpmsg.h')
-rw-r--r-- | sound/soc/fsl/fsl_rpmsg.h | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/sound/soc/fsl/fsl_rpmsg.h b/sound/soc/fsl/fsl_rpmsg.h new file mode 100644 index 000000000000..4f5b49eb18d8 --- /dev/null +++ b/sound/soc/fsl/fsl_rpmsg.h @@ -0,0 +1,35 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * Copyright 2017-2021 NXP + */ + +#ifndef __FSL_RPMSG_H +#define __FSL_RPMSG_H + +/* + * struct fsl_rpmsg - rpmsg private data + * + * @ipg: ipg clock for cpu dai (SAI) + * @mclk: master clock for cpu dai (SAI) + * @dma: clock for dma device + * @pll8k: parent clock for multiple of 8kHz frequency + * @pll11k: parent clock for multiple of 11kHz frequency + * @card_pdev: Platform_device pointer to register a sound card + * @mclk_streams: Active streams that are using baudclk + * @force_lpa: force enable low power audio routine if condition satisfy + * @enable_lpa: enable low power audio routine according to dts setting + * @buffer_size: pre allocated dma buffer size + */ +struct fsl_rpmsg { + struct clk *ipg; + struct clk *mclk; + struct clk *dma; + struct clk *pll8k; + struct clk *pll11k; + struct platform_device *card_pdev; + unsigned int mclk_streams; + int force_lpa; + int enable_lpa; + int buffer_size; +}; +#endif /* __FSL_RPMSG_H */ |