RE: [PATCH 2/7] ASoC: amd: Registering device endpoints using MFD framework

From: Deucher, Alexander
Date: Wed Oct 02 2019 - 09:11:43 EST


> -----Original Message-----
> From: Lee Jones <lee.jones@xxxxxxxxxx>
> Sent: Wednesday, October 2, 2019 8:38 AM
> To: Deucher, Alexander <Alexander.Deucher@xxxxxxx>
> Cc: RAVULAPATI, VISHNU VARDHAN RAO
> <Vishnuvardhanrao.Ravulapati@xxxxxxx>; Liam Girdwood
> <lgirdwood@xxxxxxxxx>; Mark Brown <broonie@xxxxxxxxxx>; Jaroslav
> Kysela <perex@xxxxxxxx>; Takashi Iwai <tiwai@xxxxxxxx>; Mukunda,
> Vijendar <Vijendar.Mukunda@xxxxxxx>; Maruthi Srinivas Bayyavarapu
> <Maruthi.Bayyavarapu@xxxxxxx>; Mehta, Sanju
> <Sanju.Mehta@xxxxxxx>; Colin Ian King <colin.king@xxxxxxxxxxxxx>; Dan
> Carpenter <dan.carpenter@xxxxxxxxxx>; moderated list:SOUND - SOC LAYER
> / DYNAMIC AUDIO POWER MANAGEM... <alsa-devel@xxxxxxxxxxxxxxxx>;
> open list <linux-kernel@xxxxxxxxxxxxxxx>
> Subject: Re: [PATCH 2/7] ASoC: amd: Registering device endpoints using MFD
> framework
>
> On Tue, 01 Oct 2019, Deucher, Alexander wrote:
>
> > > -----Original Message-----
> > > From: Lee Jones <lee.jones@xxxxxxxxxx>
> > > Sent: Tuesday, October 1, 2019 8:00 AM
> > > To: RAVULAPATI, VISHNU VARDHAN RAO
> > > <Vishnuvardhanrao.Ravulapati@xxxxxxx>
> > > Cc: RAVULAPATI, VISHNU VARDHAN RAO
> > > <Vishnuvardhanrao.Ravulapati@xxxxxxx>; Deucher, Alexander
> > > <Alexander.Deucher@xxxxxxx>; Liam Girdwood
> <lgirdwood@xxxxxxxxx>;
> > > Mark Brown <broonie@xxxxxxxxxx>; Jaroslav Kysela <perex@xxxxxxxx>;
> > > Takashi Iwai <tiwai@xxxxxxxx>; Mukunda, Vijendar
> > > <Vijendar.Mukunda@xxxxxxx>; Maruthi Srinivas Bayyavarapu
> > > <Maruthi.Bayyavarapu@xxxxxxx>; Mehta, Sanju
> <Sanju.Mehta@xxxxxxx>;
> > > Colin Ian King <colin.king@xxxxxxxxxxxxx>; Dan Carpenter
> > > <dan.carpenter@xxxxxxxxxx>; moderated list:SOUND - SOC LAYER /
> > > DYNAMIC AUDIO POWER MANAGEM... <alsa-devel@xxxxxxxxxxxxxxxx>;
> open
> > > list <linux-kernel@xxxxxxxxxxxxxxx>
> > > Subject: Re: [PATCH 2/7] ASoC: amd: Registering device endpoints
> > > using MFD framework
> > >
> > > On Tue, 01 Oct 2019, vishnu wrote:
> > >
> > > > Hi Jones,
> > > >
> > > > I am very Thankful to your review comments.
> > > >
> > > > Actually The driver is not totally based on MFD. It just uses
> > > > mfd_add_hotplug_devices() and mfd_remove_devices() for adding
> the
> > > > devices automatically.
> > > >
> > > > Remaining code has nothing to do with MFD framework.
> > > >
> > > > So I thought It would not break the coding style and moved ahead
> > > > by using the MFD API by adding its header file.
> > > >
> > > > If it is any violation of coding standard then I can move it to
> > > > drivers/mfd.
> > > >
> > > > This patch could be a show stopper for us.Please suggest us how
> > > > can we move ahead ASAP.
> > >
> > > Either move the MFD parts to drivers/mfd, or stop using the MFD API.
> >
> > There are more drivers outside of drivers/mfd using this API than
> > drivers in drivers/mfd.
>
> People do wrong things all the time. It doesn't make them right.
>
> > In a lot of cases it doesn't make sense to move the driver to drivers/mfd.
>
> In those cases, the platform_device_*() API should be used.

Why do we have both? It's not clear to me on when we should use one vs the other. These are not platforms per se, they are PCI devices that happen to have other devices on them. On previous projects, I was told to use mfd and no objections were raised at that time.

Alex