[alsa-devel] [PATCH] ASoC: Intel: sst: Remove unused function sst_restore_shim64()

Takashi Iwai tiwai at suse.de
Thu Jun 8 09:02:23 CEST 2017


On Wed, 07 Jun 2017 23:53:29 +0200,
Matthias Kaehlcke wrote:
> 
> Hi Takashi,
> 
> El Wed, Jun 07, 2017 at 11:40:19PM +0200 Takashi Iwai ha dit:
> 
> > On Tue, 23 May 2017 02:12:58 +0200,
> > Matthias Kaehlcke wrote:
> > > 
> > > Looks like the function has never been used since it was added by commit
> > > b0d94acd634a ("ASoC: Intel: mrfld - add shim save restore"). Removing it
> > > fixes the following warning when building with clang:
> > > 
> > > sound/soc/intel/atom/sst/sst.c:360:20: error: unused function
> > >     'sst_restore_shim64' [-Werror,-Wunused-function]
> > > 
> > > Signed-off-by: Matthias Kaehlcke <mka at chromium.org>
> > 
> > Hmm, although this patch was already merged, I now think this is
> > rather a bug.  If the restore is never executed, why the counterpart,
> > sst_save_shim64() is required at all at runtime suspend?
> 
> Doug Anderson also noticed this and removed the function and struct
> sst_shim_regs64:
> 
> https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git/commit/?h=for-next&id=98cf2c03b467fa67df58cb52adeb85b425cabcb2

Yes, I know.  But I wonder it were a failure to remove before
confirming that.


thanks,

Takashi

> 
> > > ---
> > >  sound/soc/intel/atom/sst/sst.c | 16 ----------------
> > >  1 file changed, 16 deletions(-)
> > > 
> > > diff --git a/sound/soc/intel/atom/sst/sst.c b/sound/soc/intel/atom/sst/sst.c
> > > index f9ba71315e33..fb608d3a90c8 100644
> > > --- a/sound/soc/intel/atom/sst/sst.c
> > > +++ b/sound/soc/intel/atom/sst/sst.c
> > > @@ -397,22 +397,6 @@ static inline void sst_save_shim64(struct intel_sst_drv *ctx,
> > >  	spin_unlock_irqrestore(&ctx->ipc_spin_lock, irq_flags);
> > >  }
> > >  
> > > -static inline void sst_restore_shim64(struct intel_sst_drv *ctx,
> > > -				      void __iomem *shim,
> > > -				      struct sst_shim_regs64 *shim_regs)
> > > -{
> > > -	unsigned long irq_flags;
> > > -
> > > -	/*
> > > -	 * we only need to restore IMRX for this case, rest will be
> > > -	 * initialize by FW or driver when firmware is loaded
> > > -	 */
> > > -	spin_lock_irqsave(&ctx->ipc_spin_lock, irq_flags);
> > > -	sst_shim_write64(shim, SST_IMRX, shim_regs->imrx);
> > > -	sst_shim_write64(shim, SST_CSR, shim_regs->csr);
> > > -	spin_unlock_irqrestore(&ctx->ipc_spin_lock, irq_flags);
> > > -}
> > > -
> > >  void sst_configure_runtime_pm(struct intel_sst_drv *ctx)
> > >  {
> > >  	pm_runtime_set_autosuspend_delay(ctx->dev, SST_SUSPEND_DELAY);
> 


More information about the Alsa-devel mailing list