Re: [PATCH 01/23] intel_sst: Save audio state across D3 on Medfield

Alan Cox
2011-05-03T21:27:52Z

> > Signed-off-by: Vinod Koul <vinod.koul@intel.com>
> > Signed-off-by: Ramesh Babu K V <ramesh.babu@intel.com>
> > Signed-off-by: Alan Cox <alan@linux.intel.com>
>
> Something is messed up here as:
>
> > --- a/drivers/staging/intel_sst/intel_sst_drv_interface.c
> > +++ b/drivers/staging/intel_sst/intel_sst_drv_interface.c
> > @@ -508,6 +508,7 @@ int register_sst_card(struct intel_sst_card_ops *card)
> > sst_drv_ctx->pmic_state = SND_MAD_INIT_DONE;
> > sst_drv_ctx->rx_time_slot_status = 0; /*default AMIC*/
> > card->pcm_control = sst_pmic_ops.pcm_control;
> > + sst_drv_ctx->scard_ops->card_status = SND_CARD_UN_INIT;
> > return 0;
> > } else {
> > pr_err("strcmp fail %s\n", card->module_name);
>
> This line is in the original patch from Vinod in this function that
> added the driver to the tree (git commit id fffa1cca), so the patch
> doesn't apply at all. Do you see this too?

I see it present in ffa1cca then removed then added back

I see the problem - Mark Brown took a patch in staging via the ASoC tree
which clashes with this.

fa880004682cf0d10e7a7c71dc8d56bbd67ac3d5

which is not only a staging patch but also breaks compilation of the code
because the sst_drv_ctx symbol isn't even exported or visible to the
intelmid module, which suggests it wasn't even compile tested.

Best plan seems to be for the patch Mark took to go into the staging tree
as well, and I'll then rebuild the patch stack on top of it and fix the
fact it didn't even build.

In general we have a bigger problem here, the ASoC driver appears to be
violating rule #1 of staging - nothing outside of staging should be using
or depending upon staging code in the first place.

Alan