]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
ASoC: Constify channel mapping array arguments in set_channel_map()
authorKrzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Mon, 20 May 2024 14:19:56 +0000 (16:19 +0200)
committerMark Brown <broonie@kernel.org>
Mon, 27 May 2024 00:30:58 +0000 (01:30 +0100)
There is no need for implementations of DAI set_channel_map() to modify
contents of passed arrays with actual channel mapping.  Additionally,
the caller keeps full ownership of the array.

Constify these pointer arguments so the code will be safer and easier to
read (documenting the caller's ownership).

Acked-by: Charles Keepax <ckeepax@opensource.cirrus.com>
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://msgid.link/r/20240520-asoc-x1e80100-4-channel-mapping-v4-1-f657159b4aad@linaro.org
Signed-off-by: Mark Brown <broonie@kernel.org>
include/sound/cs35l41.h
include/sound/soc-dai.h
sound/soc/codecs/adau7118.c
sound/soc/codecs/cs35l41-lib.c
sound/soc/codecs/cs35l41.c
sound/soc/codecs/max98504.c
sound/soc/codecs/wcd9335.c
sound/soc/codecs/wcd934x.c
sound/soc/qcom/qdsp6/q6afe-dai.c
sound/soc/qcom/qdsp6/q6apm-lpass-dais.c
sound/soc/soc-dai.c

index bb70782d15d06e06d8eac58c2bae649b36a03efd..43c6a9ef8d9f1991c263316942cccbb4b5e88d43 100644 (file)
@@ -896,8 +896,8 @@ int cs35l41_test_key_lock(struct device *dev, struct regmap *regmap);
 int cs35l41_otp_unpack(struct device *dev, struct regmap *regmap);
 int cs35l41_register_errata_patch(struct device *dev, struct regmap *reg, unsigned int reg_revid);
 int cs35l41_set_channels(struct device *dev, struct regmap *reg,
-                        unsigned int tx_num, unsigned int *tx_slot,
-                        unsigned int rx_num, unsigned int *rx_slot);
+                        unsigned int tx_num, const unsigned int *tx_slot,
+                        unsigned int rx_num, const unsigned int *rx_slot);
 int cs35l41_gpio_config(struct regmap *regmap, struct cs35l41_hw_cfg *hw_cfg);
 void cs35l41_configure_cs_dsp(struct device *dev, struct regmap *reg, struct cs_dsp *dsp);
 int cs35l41_set_cspl_mbox_cmd(struct device *dev, struct regmap *regmap,
index adcd8719d3435aafb6555a5d2f684f5d37966310..15ef268c98450a87fbed690b44263bb6d9e48f79 100644 (file)
@@ -188,8 +188,8 @@ int snd_soc_dai_set_tdm_slot(struct snd_soc_dai *dai,
        unsigned int tx_mask, unsigned int rx_mask, int slots, int slot_width);
 
 int snd_soc_dai_set_channel_map(struct snd_soc_dai *dai,
-       unsigned int tx_num, unsigned int *tx_slot,
-       unsigned int rx_num, unsigned int *rx_slot);
+       unsigned int tx_num, const unsigned int *tx_slot,
+       unsigned int rx_num, const unsigned int *rx_slot);
 
 int snd_soc_dai_set_tristate(struct snd_soc_dai *dai, int tristate);
 
@@ -305,8 +305,8 @@ struct snd_soc_dai_ops {
                unsigned int tx_mask, unsigned int rx_mask,
                int slots, int slot_width);
        int (*set_channel_map)(struct snd_soc_dai *dai,
-               unsigned int tx_num, unsigned int *tx_slot,
-               unsigned int rx_num, unsigned int *rx_slot);
+               unsigned int tx_num, const unsigned int *tx_slot,
+               unsigned int rx_num, const unsigned int *rx_slot);
        int (*get_channel_map)(struct snd_soc_dai *dai,
                        unsigned int *tx_num, unsigned int *tx_slot,
                        unsigned int *rx_num, unsigned int *rx_slot);
index a663d37e57760ff19fe798f949c1e94aff20a281..abc4764697a5330a52ee7e2324d70f2771f4c061 100644 (file)
@@ -121,8 +121,10 @@ static const struct snd_soc_dapm_widget adau7118_widgets[] = {
 };
 
 static int adau7118_set_channel_map(struct snd_soc_dai *dai,
-                                   unsigned int tx_num, unsigned int *tx_slot,
-                                   unsigned int rx_num, unsigned int *rx_slot)
+                                   unsigned int tx_num,
+                                   const unsigned int *tx_slot,
+                                   unsigned int rx_num,
+                                   const unsigned int *rx_slot)
 {
        struct adau7118_data *st =
                snd_soc_component_get_drvdata(dai->component);
index e9993a39f7d0a3f30eaf4a26265ed5242f07745b..1702f26049d37ee15c1d6db7055c8b2f12bd11f1 100644 (file)
@@ -936,8 +936,8 @@ int cs35l41_register_errata_patch(struct device *dev, struct regmap *reg, unsign
 EXPORT_SYMBOL_GPL(cs35l41_register_errata_patch);
 
 int cs35l41_set_channels(struct device *dev, struct regmap *reg,
-                        unsigned int tx_num, unsigned int *tx_slot,
-                        unsigned int rx_num, unsigned int *rx_slot)
+                        unsigned int tx_num, const unsigned int *tx_slot,
+                        unsigned int rx_num, const unsigned int *rx_slot)
 {
        unsigned int val, mask;
        int i;
index cb25c33cc9b9541ea250f8047988d29f58216551..1688c2c688f06b387e4be0eac61f422d621dbd03 100644 (file)
@@ -673,7 +673,8 @@ static const struct snd_soc_dapm_route cs35l41_audio_map[] = {
 };
 
 static int cs35l41_set_channel_map(struct snd_soc_dai *dai, unsigned int tx_n,
-                                  unsigned int *tx_slot, unsigned int rx_n, unsigned int *rx_slot)
+                                  const unsigned int *tx_slot,
+                                  unsigned int rx_n, const unsigned int *rx_slot)
 {
        struct cs35l41_private *cs35l41 = snd_soc_component_get_drvdata(dai->component);
 
index 93412b966b33672a87d053200c3778d2519fadea..6b6a7ece4cecc3d114da276faf859c8176955300 100644 (file)
@@ -220,8 +220,10 @@ static int max98504_set_tdm_slot(struct snd_soc_dai *dai,
        return 0;
 }
 static int max98504_set_channel_map(struct snd_soc_dai *dai,
-               unsigned int tx_num, unsigned int *tx_slot,
-               unsigned int rx_num, unsigned int *rx_slot)
+                                   unsigned int tx_num,
+                                   const unsigned int *tx_slot,
+                                   unsigned int rx_num,
+                                   const unsigned int *rx_slot)
 {
        struct max98504_priv *max98504 = snd_soc_dai_get_drvdata(dai);
        struct regmap *map = max98504->regmap;
index deb15b95992d5cc494562a91f13adbc348e2dd31..42a99978fe5ab333825157112241477a9b381092 100644 (file)
@@ -1983,8 +1983,10 @@ static int wcd9335_trigger(struct snd_pcm_substream *substream, int cmd,
 }
 
 static int wcd9335_set_channel_map(struct snd_soc_dai *dai,
-                                  unsigned int tx_num, unsigned int *tx_slot,
-                                  unsigned int rx_num, unsigned int *rx_slot)
+                                  unsigned int tx_num,
+                                  const unsigned int *tx_slot,
+                                  unsigned int rx_num,
+                                  const unsigned int *rx_slot)
 {
        struct wcd9335_codec *wcd;
        int i;
index de870c7819caa1a88d488d26aeaa4ae9c3dead26..fcad2c9fba550df6feab9dac850e9e47f6b9f6b4 100644 (file)
@@ -1923,8 +1923,10 @@ static int wcd934x_trigger(struct snd_pcm_substream *substream, int cmd,
 }
 
 static int wcd934x_set_channel_map(struct snd_soc_dai *dai,
-                                  unsigned int tx_num, unsigned int *tx_slot,
-                                  unsigned int rx_num, unsigned int *rx_slot)
+                                  unsigned int tx_num,
+                                  const unsigned int *tx_slot,
+                                  unsigned int rx_num,
+                                  const unsigned int *rx_slot)
 {
        struct wcd934x_codec *wcd;
        int i;
index a9c4f896a7dfd64af3f3a51ebba72e6c5e960586..7d9628cda87534dd3cad8bcb1e0faa7b8e5dd770 100644 (file)
@@ -172,8 +172,8 @@ static int q6tdm_set_tdm_slot(struct snd_soc_dai *dai,
 }
 
 static int q6tdm_set_channel_map(struct snd_soc_dai *dai,
-                               unsigned int tx_num, unsigned int *tx_slot,
-                               unsigned int rx_num, unsigned int *rx_slot)
+                               unsigned int tx_num, const unsigned int *tx_slot,
+                               unsigned int rx_num, const unsigned int *rx_slot)
 {
 
        struct q6afe_dai_data *dai_data = dev_get_drvdata(dai->dev);
@@ -250,8 +250,10 @@ static int q6tdm_hw_params(struct snd_pcm_substream *substream,
 }
 
 static int q6dma_set_channel_map(struct snd_soc_dai *dai,
-                                unsigned int tx_num, unsigned int *tx_ch_mask,
-                                unsigned int rx_num, unsigned int *rx_ch_mask)
+                                unsigned int tx_num,
+                                const unsigned int *tx_ch_mask,
+                                unsigned int rx_num,
+                                const unsigned int *rx_ch_mask)
 {
 
        struct q6afe_dai_data *dai_data = dev_get_drvdata(dai->dev);
@@ -407,8 +409,10 @@ static int q6afe_dai_prepare(struct snd_pcm_substream *substream,
 }
 
 static int q6slim_set_channel_map(struct snd_soc_dai *dai,
-                               unsigned int tx_num, unsigned int *tx_slot,
-                               unsigned int rx_num, unsigned int *rx_slot)
+                                 unsigned int tx_num,
+                                 const unsigned int *tx_slot,
+                                 unsigned int rx_num,
+                                 const unsigned int *rx_slot)
 {
        struct q6afe_dai_data *dai_data = dev_get_drvdata(dai->dev);
        struct q6afe_port_config *pcfg = &dai_data->port_config[dai->id];
index 68a38f63a2dbf5949a37fc54bd1776f33f294155..6bfbb52345e1fd8a0f32dfe267f2349363829399 100644 (file)
@@ -25,8 +25,10 @@ struct q6apm_lpass_dai_data {
 };
 
 static int q6dma_set_channel_map(struct snd_soc_dai *dai,
-                                unsigned int tx_num, unsigned int *tx_ch_mask,
-                                unsigned int rx_num, unsigned int *rx_ch_mask)
+                                unsigned int tx_num,
+                                const unsigned int *tx_ch_mask,
+                                unsigned int rx_num,
+                                const unsigned int *rx_ch_mask)
 {
 
        struct q6apm_lpass_dai_data *dai_data = dev_get_drvdata(dai->dev);
index fefe394dce72d79b1730fa637a8f79f5a954dbfd..03afd5efb24cbf0f6c0d911e4947f1cfe3bac56d 100644 (file)
@@ -304,8 +304,8 @@ EXPORT_SYMBOL_GPL(snd_soc_dai_set_tdm_slot);
  * configure the relationship between channel number and TDM slot number.
  */
 int snd_soc_dai_set_channel_map(struct snd_soc_dai *dai,
-                               unsigned int tx_num, unsigned int *tx_slot,
-                               unsigned int rx_num, unsigned int *rx_slot)
+                               unsigned int tx_num, const unsigned int *tx_slot,
+                               unsigned int rx_num, const unsigned int *rx_slot)
 {
        int ret = -ENOTSUPP;