Merge tag 'asoc-v5.12' of https://git.kernel.org/pub/scm/linux/kernel/git/broonie...
authorTakashi Iwai <tiwai@suse.de>
Wed, 17 Feb 2021 20:16:27 +0000 (21:16 +0100)
committerTakashi Iwai <tiwai@suse.de>
Wed, 17 Feb 2021 20:16:27 +0000 (21:16 +0100)
ASoC: Updates for v5.12

Another quiet release in terms of features, though several of the
drivers got quite a bit of work and there were a lot of general changes
resulting from Morimoto-san's ongoing cleanup work.

 - As ever, lots of hard work by Morimoto-san cleaning up the code and
   making it more consistent.
 - Many improvements in the Intel drivers including a wide range of
   quirks and bug fixes.
 - A KUnit testsuite for the topology code.
 - Support for Ingenic JZ4760(B), Intel AlderLake-P, DT configured
   nVidia cards, Qualcomm lpass-rx-macro and lpass-tx-macro
 - Removal of obsolete SIRF prima/atlas, Txx9 and ZTE zx drivers.

1  2 
sound/soc/sh/rcar/core.c
sound/soc/sof/intel/hda.h

diff --combined sound/soc/sh/rcar/core.c
@@@ -1320,8 -1320,8 +1320,8 @@@ static void __rsnd_dai_probe(struct rsn
  
        if (rsnd_ssi_is_pin_sharing(io_capture) ||
            rsnd_ssi_is_pin_sharing(io_playback)) {
-               /* should have symmetric_rates if pin sharing */
-               drv->symmetric_rates = 1;
+               /* should have symmetric_rate if pin sharing */
+               drv->symmetric_rate = 1;
        }
  
        dev_dbg(dev, "%s (%s/%s)\n", rdai->name,
@@@ -1472,7 -1472,7 +1472,7 @@@ static int rsnd_kctrl_info(struct snd_k
                uinfo->value.enumerated.items = cfg->max;
                if (uinfo->value.enumerated.item >= cfg->max)
                        uinfo->value.enumerated.item = cfg->max - 1;
 -              strlcpy(uinfo->value.enumerated.name,
 +              strscpy(uinfo->value.enumerated.name,
                        cfg->texts[uinfo->value.enumerated.item],
                        sizeof(uinfo->value.enumerated.name));
        } else {
  #define SSP_SET_SFRM_SLAVE    BIT(24)
  #define SSP_SET_SLAVE         (SSP_SET_SCLK_SLAVE | SSP_SET_SFRM_SLAVE)
  
 -#define HDA_IDISP_CODEC(x) ((x) & BIT(2))
 +#define HDA_IDISP_ADDR                2
 +#define HDA_IDISP_CODEC(x) ((x) & BIT(HDA_IDISP_ADDR))
  
  struct sof_intel_dsp_bdl {
        __le32 addr_l;
  #define SOF_HDA_PLAYBACK              0
  #define SOF_HDA_CAPTURE                       1
  
+ /* stream flags */
+ #define SOF_HDA_STREAM_DMI_L1_COMPATIBLE      1
  /*
   * Time in ms for opportunistic D0I3 entry delay.
   * This has been deliberately chosen to be long to avoid race conditions.
@@@ -472,6 -474,7 +475,7 @@@ struct sof_intel_hda_stream 
        struct hdac_ext_stream hda_stream;
        struct sof_intel_stream stream;
        int host_reserved; /* reserve host DMA channel */
+       u32 flags;
  };
  
  #define hstream_to_sof_hda_stream(hstream) \
@@@ -514,7 -517,6 +518,6 @@@ int hda_dsp_runtime_suspend(struct snd_
  int hda_dsp_runtime_resume(struct snd_sof_dev *sdev);
  int hda_dsp_runtime_idle(struct snd_sof_dev *sdev);
  int hda_dsp_set_hw_params_upon_resume(struct snd_sof_dev *sdev);
- void hda_dsp_dump_skl(struct snd_sof_dev *sdev, u32 flags);
  void hda_dsp_dump(struct snd_sof_dev *sdev, u32 flags);
  void hda_ipc_dump(struct snd_sof_dev *sdev);
  void hda_ipc_irq_dump(struct snd_sof_dev *sdev);
@@@ -563,7 -565,7 +566,7 @@@ bool hda_dsp_check_ipc_irq(struct snd_s
  bool hda_dsp_check_stream_irq(struct snd_sof_dev *sdev);
  
  struct hdac_ext_stream *
-       hda_dsp_stream_get(struct snd_sof_dev *sdev, int direction);
+       hda_dsp_stream_get(struct snd_sof_dev *sdev, int direction, u32 flags);
  int hda_dsp_stream_put(struct snd_sof_dev *sdev, int direction, int stream_tag);
  int hda_dsp_stream_spib_config(struct snd_sof_dev *sdev,
                               struct hdac_ext_stream *stream,