[PATCH v3 04/14] ASoC: amd: create acp3x pdm platform device

Mukunda, Vijendar Vijendar.Mukunda at amd.com
Tue May 19 13:03:28 CEST 2020


[AMD Official Use Only - Internal Distribution Only]



> -----Original Message-----
> From: Mark Brown <broonie at kernel.org>
> Sent: Tuesday, May 19, 2020 4:24 PM
> To: Mukunda, Vijendar <Vijendar.Mukunda at amd.com>
> Cc: alsa-devel at alsa-project.org; tiwai at suse.de; Deucher, Alexander
> <Alexander.Deucher at amd.com>
> Subject: Re: [PATCH v3 04/14] ASoC: amd: create acp3x pdm platform device
> 
> On Tue, May 19, 2020 at 01:16:54AM +0800, Vijendar Mukunda wrote:
> 
> > +	adata->res = devm_kzalloc(&pci->dev,
> > +				  sizeof(struct resource) * 2,
> > +				  GFP_KERNEL);
> > +	if (!adata->res) {
> > +		ret = -ENOMEM;
> > +		goto de_init;
> > +	}
> > +
> > +	adata->res[0].name = "acp_pdm_iomem";
> > +	adata->res[0].flags = IORESOURCE_MEM;
> > +	adata->res[0].start = addr;
> > +	adata->res[0].end = addr + (ACP_REG_END - ACP_REG_START);
> > +	adata->res[1].name = "acp_pdm_irq";
> > +	adata->res[1].flags = IORESOURCE_IRQ;
> > +	adata->res[1].start = pci->irq;
> > +	adata->res[1].end = pci->irq;
> 
> Creating the subdevice is good and sensible but this is basically open
> coding what the MFD framework does.  The subdevices should probably be
> created with that instead.

Previously during raven I2S driver development to support multiple I2S 
controller instances, we have seen challenges with MFD framework.
That's why we opted current design.
There is lengthy discussions happened over the mail thread during Raven I2S driver 
upstream review. Finally current design is accepted.

This driver further going to be expanded to support I2S Endpoint also.
We believe current design is good enough to handle it.



More information about the Alsa-devel mailing list