[alsa-devel] [PATCH] ASoC: dwc: I2S Controller instance param added

Deucher, Alexander Alexander.Deucher at amd.com
Mon Mar 19 15:39:24 CET 2018


> -----Original Message-----
> From: Vijendar Mukunda [mailto:Vijendar.Mukunda at amd.com]
> Sent: Monday, March 19, 2018 2:36 AM
> To: broonie at kernel.org; alsa-devel at alsa-project.org; perex at perex.cz
> Cc: lgirdwood at gmail.com; tiwai at suse.de; Deucher, Alexander
> <Alexander.Deucher at amd.com>; Agrawal, Akshu
> <Akshu.Agrawal at amd.com>; Mukunda, Vijendar
> <Vijendar.Mukunda at amd.com>
> Subject: [PATCH] ASoC: dwc: I2S Controller instance param added
> 
> When multiple I2S controller instances created, i2s_instance parameter
> refers to i2s controller instance value.
> 
> Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda at amd.com>
> ---
>  include/sound/designware_i2s.h | 4 ++++
>  sound/soc/dwc/dwc-i2s.c        | 1 +
>  sound/soc/dwc/local.h          | 1 +
>  3 files changed, 6 insertions(+)
> 
> diff --git a/include/sound/designware_i2s.h
> b/include/sound/designware_i2s.h index 830f5ca..2a94e7c 100644
> --- a/include/sound/designware_i2s.h
> +++ b/include/sound/designware_i2s.h
> @@ -44,6 +44,10 @@ struct i2s_platform_data {
>  	int channel;
>  	u32 snd_fmts;
>  	u32 snd_rates;
> +	/* i2s_instance parameter returns I2S controller instance value
> +	 * when multiple I2S controllers instantiated
> +	 */
> +	u32 i2s_instance;

Please add the defines for I2S_SP_INSTANCE and I2S_BT_INSTANCE to this header so you don't have to define them locally in the other patches.
With that fixed, the patch is:
Reviewed-by: Alex Deucher <alexander.deucher at amd.com>

> 
>  	#define DW_I2S_QUIRK_COMP_REG_OFFSET	(1 << 0)
>  	#define DW_I2S_QUIRK_COMP_PARAM1	(1 << 1)
> diff --git a/sound/soc/dwc/dwc-i2s.c b/sound/soc/dwc/dwc-i2s.c index
> e27e21f..20145c0 100644
> --- a/sound/soc/dwc/dwc-i2s.c
> +++ b/sound/soc/dwc/dwc-i2s.c
> @@ -549,6 +549,7 @@ static int dw_configure_dai_by_pd(struct dw_i2s_dev
> *dev,
> 
>  	if (dev->quirks & DW_I2S_QUIRK_16BIT_IDX_OVERRIDE)
>  		idx = 1;
> +	dev->i2s_instance = pdata->i2s_instance;
>  	/* Set DMA slaves info */
>  	dev->play_dma_data.pd.data = pdata->play_dma_data;
>  	dev->capture_dma_data.pd.data = pdata->capture_dma_data; diff -
> -git a/sound/soc/dwc/local.h b/sound/soc/dwc/local.h index
> 91dc70a..e89e464 100644
> --- a/sound/soc/dwc/local.h
> +++ b/sound/soc/dwc/local.h
> @@ -98,6 +98,7 @@ struct dw_i2s_dev {
>  	u32 ccr;
>  	u32 xfer_resolution;
>  	u32 fifo_th;
> +	u32 i2s_instance;
> 
>  	/* data related to DMA transfers b/w i2s and DMAC */
>  	union dw_i2s_snd_dma_data play_dma_data;
> --
> 2.7.4



More information about the Alsa-devel mailing list