1. 27 Jul, 2022 2 commits
    • Krzysztof Kozlowski's avatar
      ASoC: dt-bindings: use spi-peripheral-props.yaml · abed2baf
      Krzysztof Kozlowski authored
      Instead of listing directly properties typical for SPI peripherals,
      reference the spi-peripheral-props.yaml schema.  This allows using all
      properties typical for SPI-connected devices, even these which device
      bindings author did not tried yet.
      
      Remove the spi-* properties which now come via spi-peripheral-props.yaml
      schema, except for the cases when device schema adds some constraints
      like maximum frequency.
      
      While changing additionalProperties->unevaluatedProperties, put it in
      typical place, just before example DTS.
      Signed-off-by: default avatarKrzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
      Acked-by: default avatarCharles Keepax <ckeepax@opensource.cirrus.com>
      Link: https://lore.kernel.org/r/20220727164050.385241-1-krzysztof.kozlowski@linaro.orgSigned-off-by: default avatarMark Brown <broonie@kernel.org>
      abed2baf
    • Jiaxin Yu's avatar
      ASoC: mediatek: mt8186: remove unnecessary judgments · d7bffbe9
      Jiaxin Yu authored
      The afe_priv->dai_priv[] is allocated when platform driver probe(), if it
      failed, the ASoC platform driver probe() will return fail first.
      Therefore, this is excessive judgment, and the condition will never be
      established.
      
      Bug report: https://www.spinics.net/lists/alsa-devel/msg145609.html
      
      This is a semi-automatic email about new static checker warnings.
      
      The patch ae92dcbe: "ASoC: mediatek: mt8186: support tdm in
      platform driver" from May 23, 2022, leads to the following Smatch
      complaint:
      
          sound/soc/mediatek/mt8186/mt8186-dai-tdm.c:424 mtk_dai_tdm_hw_params()
          warn: variable dereferenced before check 'tdm_priv' (see line 406)
      
      sound/soc/mediatek/mt8186/mt8186-dai-tdm.c
         405		struct mtk_afe_tdm_priv *tdm_priv = afe_priv->dai_priv[tdm_id];
         406		unsigned int tdm_mode = tdm_priv->tdm_mode;
                                              ^^^^^^^^^^^^^^^^^^^
      Lot's of dereferences
      
         407		unsigned int data_mode = tdm_priv->data_mode;
         408		unsigned int rate = params_rate(params);
         409		unsigned int channels = params_channels(params);
         410		snd_pcm_format_t format = params_format(params);
         411		unsigned int bit_width =
         412			snd_pcm_format_physical_width(format);
         413		unsigned int tdm_channels = (data_mode == TDM_DATA_ONE_PIN) ?
         414			get_tdm_ch_per_sdata(tdm_mode, channels) : 2;
         415		unsigned int lrck_width =
         416			get_tdm_lrck_width(format, tdm_mode);
         417		unsigned int tdm_con = 0;
         418		bool slave_mode = tdm_priv->slave_mode;
         419		bool lrck_inv = tdm_priv->lck_invert;
         420		bool bck_inv = tdm_priv->bck_invert;
         421		unsigned int tran_rate;
         422		unsigned int tran_relatch_rate;
         423
         424		if (!tdm_priv) {
                          ^^^^^^^^^
      Checked too late
      
         425			dev_err(afe->dev, "%s(), tdm_priv == NULL", __func__);
         426			return -EINVAL;
      
      Fixes: ae92dcbe ("ASoC: mediatek: mt8186: support tdm in platform driver")
      Signed-off-by: default avatarJiaxin Yu <jiaxin.yu@mediatek.com>
      Link: https://lore.kernel.org/r/20220726154220.28141-1-jiaxin.yu@mediatek.comSigned-off-by: default avatarMark Brown <broonie@kernel.org>
      d7bffbe9
  2. 26 Jul, 2022 10 commits
  3. 25 Jul, 2022 14 commits
  4. 22 Jul, 2022 8 commits
  5. 21 Jul, 2022 6 commits