[alsa-devel] [PATCH] ASoC: rt1011: fix warning reported by kbuild test robot and minor issue
shumingf at realtek.com
shumingf at realtek.com
Thu Jun 6 08:22:32 CEST 2019
From: Shuming Fan <shumingf at realtek.com>
This patch fixes following issues:
- warning: this decimal constant is unsigned only in ISO C90
- sparse: incorrect type in assignment
- check if value.integer.value is zero for "R0 Load Mode" control
Signed-off-by: Shuming Fan <shumingf at realtek.com>
---
sound/soc/codecs/rt1011.c | 15 +++++++++------
1 file changed, 9 insertions(+), 6 deletions(-)
diff --git a/sound/soc/codecs/rt1011.c b/sound/soc/codecs/rt1011.c
index 349d6db7ecd4..5605b660f4bf 100644
--- a/sound/soc/codecs/rt1011.c
+++ b/sound/soc/codecs/rt1011.c
@@ -1145,8 +1145,8 @@ static int rt1011_bq_drc_coeff_get(struct snd_kcontrol *kcontrol,
bq_drc_info = rt1011->bq_drc_params[mode_idx];
for (i = 0; i < RT1011_BQ_DRC_NUM; i++) {
- params[i].reg = cpu_to_le16(bq_drc_info[i].reg);
- params[i].val = cpu_to_le16(bq_drc_info[i].val);
+ params[i].reg = bq_drc_info[i].reg;
+ params[i].val = bq_drc_info[i].val;
}
return 0;
@@ -1187,8 +1187,8 @@ static int rt1011_bq_drc_coeff_put(struct snd_kcontrol *kcontrol,
pr_info("%s, id.name=%s, mode_idx=%d\n", __func__,
ucontrol->id.name, mode_idx);
for (i = 0; i < RT1011_BQ_DRC_NUM; i++) {
- bq_drc_info[i].reg = le16_to_cpu(params[i].reg);
- bq_drc_info[i].val = le16_to_cpu(params[i].val);
+ bq_drc_info[i].reg = params[i].reg;
+ bq_drc_info[i].val = params[i].val;
}
for (i = 0; i < RT1011_BQ_DRC_NUM; i++) {
@@ -1284,11 +1284,14 @@ static int rt1011_r0_load_mode_put(struct snd_kcontrol *kcontrol,
if (!component->card->instantiated)
return 0;
+ if (ucontrol->value.integer.value[0] == 0)
+ return -EINVAL;
+
dev = regmap_get_device(rt1011->regmap);
if (snd_soc_component_get_bias_level(component) == SND_SOC_BIAS_OFF) {
rt1011->r0_reg = ucontrol->value.integer.value[0];
- format = 2147483648; /* 2^24 * 128 */
+ format = 2147483648U; /* 2^24 * 128 */
r0_integer = format / rt1011->r0_reg / 128;
r0_factor = ((format / rt1011->r0_reg * 100) / 128)
- (r0_integer * 100);
@@ -2120,7 +2123,7 @@ static int rt1011_calibrate(struct rt1011_priv *rt1011, unsigned char cali_flag)
dev_err(dev, "Calibrate R0 Failure\n");
ret = -EAGAIN;
} else {
- format = 2147483648; /* 2^24 * 128 */
+ format = 2147483648U; /* 2^24 * 128 */
r0_integer = format / r0[0] / 128;
r0_factor = ((format / r0[0] * 100) / 128)
- (r0_integer * 100);
--
2.21.0
More information about the Alsa-devel
mailing list