[alsa-devel] [asoc:topic/rt5616 2/2] sound/soc/codecs/rt5665.c:4590:3-9: preceding lock on line 4553
Julia Lawall
julia.lawall at lip6.fr
Tue Nov 15 10:04:09 CET 2016
It looks from the code like a mutex_unlock may be needed on line 4590.
There is a warning about the same issue with respect to like 4609,
although that is not shown.
julia
---------- Forwarded message ----------
Date: Tue, 15 Nov 2016 08:39:41 +0800
From: kbuild test robot <fengguang.wu at intel.com>
To: kbuild at 01.org
Cc: Julia Lawall <julia.lawall at lip6.fr>
Subject: [asoc:topic/rt5616 2/2] sound/soc/codecs/rt5665.c:4590:3-9: preceding
lock on line 4553
CC: kbuild-all at 01.org
CC: alsa-devel at alsa-project.org
TO: Bard Liao <bardliao at realtek.com>
CC: Mark Brown <broonie at kernel.org>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git topic/rt5616
head: 33ada14a26c8f174dac8765f4236ca66c64ae5be
commit: 33ada14a26c8f174dac8765f4236ca66c64ae5be [2/2] ASoC: add rt5665 codec driver
:::::: branch date: 13 hours ago
:::::: commit date: 13 hours ago
>> sound/soc/codecs/rt5665.c:4590:3-9: preceding lock on line 4553
>> sound/soc/codecs/rt5665.c:4590:3-9: preceding lock on line 4553
sound/soc/codecs/rt5665.c:4609:3-9: preceding lock on line 4553
git remote add asoc https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git
git remote update asoc
git checkout 33ada14a26c8f174dac8765f4236ca66c64ae5be
vim +4590 sound/soc/codecs/rt5665.c
33ada14a Bard Liao 2016-11-14 4547 }
33ada14a Bard Liao 2016-11-14 4548
33ada14a Bard Liao 2016-11-14 4549 static void rt5665_calibrate(struct rt5665_priv *rt5665)
33ada14a Bard Liao 2016-11-14 4550 {
33ada14a Bard Liao 2016-11-14 4551 int value, count;
33ada14a Bard Liao 2016-11-14 4552
33ada14a Bard Liao 2016-11-14 @4553 mutex_lock(&rt5665->calibrate_mutex);
33ada14a Bard Liao 2016-11-14 4554
33ada14a Bard Liao 2016-11-14 4555 regcache_cache_bypass(rt5665->regmap, true);
33ada14a Bard Liao 2016-11-14 4556
33ada14a Bard Liao 2016-11-14 4557 regmap_write(rt5665->regmap, RT5665_RESET, 0);
33ada14a Bard Liao 2016-11-14 4558 regmap_write(rt5665->regmap, RT5665_BIAS_CUR_CTRL_8, 0xa602);
33ada14a Bard Liao 2016-11-14 4559 regmap_write(rt5665->regmap, RT5665_HP_CHARGE_PUMP_1, 0x0c26);
33ada14a Bard Liao 2016-11-14 4560 regmap_write(rt5665->regmap, RT5665_MONOMIX_IN_GAIN, 0x021f);
33ada14a Bard Liao 2016-11-14 4561 regmap_write(rt5665->regmap, RT5665_MONO_OUT, 0x480a);
33ada14a Bard Liao 2016-11-14 4562 regmap_write(rt5665->regmap, RT5665_PWR_MIXER, 0x083f);
33ada14a Bard Liao 2016-11-14 4563 regmap_write(rt5665->regmap, RT5665_PWR_DIG_1, 0x0180);
33ada14a Bard Liao 2016-11-14 4564 regmap_write(rt5665->regmap, RT5665_EJD_CTRL_1, 0x4040);
33ada14a Bard Liao 2016-11-14 4565 regmap_write(rt5665->regmap, RT5665_HP_LOGIC_CTRL_2, 0x0000);
33ada14a Bard Liao 2016-11-14 4566 regmap_write(rt5665->regmap, RT5665_DIG_MISC, 0x0001);
33ada14a Bard Liao 2016-11-14 4567 regmap_write(rt5665->regmap, RT5665_MICBIAS_2, 0x0380);
33ada14a Bard Liao 2016-11-14 4568 regmap_write(rt5665->regmap, RT5665_GLB_CLK, 0x8000);
33ada14a Bard Liao 2016-11-14 4569 regmap_write(rt5665->regmap, RT5665_ADDA_CLK_1, 0x1000);
33ada14a Bard Liao 2016-11-14 4570 regmap_write(rt5665->regmap, RT5665_CHOP_DAC, 0x3030);
33ada14a Bard Liao 2016-11-14 4571 regmap_write(rt5665->regmap, RT5665_CALIB_ADC_CTRL, 0x3c05);
33ada14a Bard Liao 2016-11-14 4572 regmap_write(rt5665->regmap, RT5665_PWR_ANLG_1, 0xaa3e);
33ada14a Bard Liao 2016-11-14 4573 usleep_range(15000, 20000);
33ada14a Bard Liao 2016-11-14 4574 regmap_write(rt5665->regmap, RT5665_PWR_ANLG_1, 0xfe7e);
33ada14a Bard Liao 2016-11-14 4575 regmap_write(rt5665->regmap, RT5665_HP_CALIB_CTRL_2, 0x0321);
33ada14a Bard Liao 2016-11-14 4576
33ada14a Bard Liao 2016-11-14 4577 regmap_write(rt5665->regmap, RT5665_HP_CALIB_CTRL_1, 0xfc00);
33ada14a Bard Liao 2016-11-14 4578 count = 0;
33ada14a Bard Liao 2016-11-14 4579 while (true) {
33ada14a Bard Liao 2016-11-14 4580 regmap_read(rt5665->regmap, RT5665_HP_CALIB_STA_1, &value);
33ada14a Bard Liao 2016-11-14 4581 if (value & 0x8000)
33ada14a Bard Liao 2016-11-14 4582 usleep_range(10000, 10005);
33ada14a Bard Liao 2016-11-14 4583 else
33ada14a Bard Liao 2016-11-14 4584 break;
33ada14a Bard Liao 2016-11-14 4585
33ada14a Bard Liao 2016-11-14 4586 if (count > 60) {
33ada14a Bard Liao 2016-11-14 4587 pr_err("HP Calibration Failure\n");
33ada14a Bard Liao 2016-11-14 4588 regmap_write(rt5665->regmap, RT5665_RESET, 0);
33ada14a Bard Liao 2016-11-14 4589 regcache_cache_bypass(rt5665->regmap, false);
33ada14a Bard Liao 2016-11-14 @4590 return;
33ada14a Bard Liao 2016-11-14 4591 }
33ada14a Bard Liao 2016-11-14 4592
33ada14a Bard Liao 2016-11-14 4593 count++;
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
More information about the Alsa-devel
mailing list