CC: [email protected]
CC: [email protected]
CC: [email protected]
TO: Srinivas Kandagatla <[email protected]>
CC: Mark Brown <[email protected]>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 
master
head:   26291c54e111ff6ba87a164d85d4a4e134b7315c
commit: 810532e7392e764be5ee1b85603585065fa3e86b ASoC: qcom: sm8250: Add Jack 
support
date:   4 months ago
:::::: branch date: 2 days ago
:::::: commit date: 4 months ago
config: arm-randconfig-c002-20220122 
(https://download.01.org/0day-ci/archive/20220201/[email protected]/config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 
7b3d30728816403d1fd73cc5082e9fb761262bce)
reproduce (this is a W=1 build):
        wget 
https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O 
~/bin/make.cross
        chmod +x ~/bin/make.cross
        # install arm cross compiling tool for clang build
        # apt-get install binutils-arm-linux-gnueabi
        # 
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=810532e7392e764be5ee1b85603585065fa3e86b
        git remote add linus 
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
        git fetch --no-tags linus master
        git checkout 810532e7392e764be5ee1b85603585065fa3e86b
        # save the config file to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=arm 
clang-analyzer 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <[email protected]>


clang-analyzer warnings: (new ones prefixed by >>)
                           if (rkey != keys[level]) {
                               ^~~~~~~~~~~~~~~~~~~
   drivers/md/persistent-data/dm-btree.c:397:4: note: Taking false branch
                           if (rkey != keys[level]) {
                           ^
   drivers/md/persistent-data/dm-btree.c:406:8: note: Assigned value is garbage 
or undefined
                   root = le64_to_cpu(internal_value_le);
                        ^
   drivers/md/persistent-data/dm-btree.c:1091:3: warning: Value stored to 
'node' is never read [clang-analyzer-deadcode.DeadStores]
                   node = dm_block_data(shadow_current(s));
                   ^      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/md/persistent-data/dm-btree.c:1091:3: note: Value stored to 'node' 
is never read
                   node = dm_block_data(shadow_current(s));
                   ^      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/md/persistent-data/dm-btree.c:1155:3: warning: Value stored to 
'node' is never read [clang-analyzer-deadcode.DeadStores]
                   node = dm_block_data(shadow_current(s));
                   ^      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/md/persistent-data/dm-btree.c:1155:3: note: Value stored to 'node' 
is never read
                   node = dm_block_data(shadow_current(s));
                   ^      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   1 warning generated.
   drivers/hwspinlock/qcom_hwspinlock.c:158:24: warning: Passed-by-value struct 
argument contains uninitialized data (e.g., field: 'id_size') 
[clang-analyzer-core.CallAndMessage]
                   bank->lock[i].priv = devm_regmap_field_alloc(&pdev->dev,
                                        ^
   drivers/hwspinlock/qcom_hwspinlock.c:132:2: note: 'field' initialized here
           struct reg_field field;
           ^~~~~~~~~~~~~~~~~~~~~~
   drivers/hwspinlock/qcom_hwspinlock.c:140:21: note: Left side of '&&' is false
           if (IS_ERR(regmap) && PTR_ERR(regmap) == -ENODEV)
                              ^
   drivers/hwspinlock/qcom_hwspinlock.c:143:6: note: Calling 'IS_ERR'
           if (IS_ERR(regmap))
               ^~~~~~~~~~~~~~
   include/linux/err.h:36:2: note: Returning zero, which participates in a 
condition later
           return IS_ERR_VALUE((unsigned long)ptr);
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/hwspinlock/qcom_hwspinlock.c:143:6: note: Returning from 'IS_ERR'
           if (IS_ERR(regmap))
               ^~~~~~~~~~~~~~
   drivers/hwspinlock/qcom_hwspinlock.c:143:2: note: Taking false branch
           if (IS_ERR(regmap))
           ^
   drivers/hwspinlock/qcom_hwspinlock.c:148:6: note: Assuming 'bank' is non-null
           if (!bank)
               ^~~~~
   drivers/hwspinlock/qcom_hwspinlock.c:148:2: note: Taking false branch
           if (!bank)
           ^
   drivers/hwspinlock/qcom_hwspinlock.c:153:2: note: Loop condition is true.  
Entering loop body
           for (i = 0; i < QCOM_MUTEX_NUM_LOCKS; i++) {
           ^
   drivers/hwspinlock/qcom_hwspinlock.c:158:24: note: Passed-by-value struct 
argument contains uninitialized data (e.g., field: 'id_size')
                   bank->lock[i].priv = devm_regmap_field_alloc(&pdev->dev,
                                        ^
   1 warning generated.
   sound/soc/codecs/tas2562.c:69:23: warning: Value stored to 'tas2562' during 
its initialization is never read [clang-analyzer-deadcode.DeadStores]
           struct tas2562_data *tas2562 =
                                ^~~~~~~
   sound/soc/codecs/tas2562.c:69:23: note: Value stored to 'tas2562' during its 
initialization is never read
           struct tas2562_data *tas2562 =
                                ^~~~~~~
   1 warning generated.
   sound/soc/codecs/tas2770.c:50:23: warning: Value stored to 'tas2770' during 
its initialization is never read [clang-analyzer-deadcode.DeadStores]
           struct tas2770_priv *tas2770 =
                                ^~~~~~~
   sound/soc/codecs/tas2770.c:50:23: note: Value stored to 'tas2770' during its 
initialization is never read
           struct tas2770_priv *tas2770 =
                                ^~~~~~~
   2 warnings generated.
   block/badblocks.c:68:3: warning: Value stored to 'sectors' is never read 
[clang-analyzer-deadcode.DeadStores]
                   sectors = target - s;
                   ^         ~~~~~~~~~~
   block/badblocks.c:68:3: note: Value stored to 'sectors' is never read
                   sectors = target - s;
                   ^         ~~~~~~~~~~
   block/badblocks.c:348:3: warning: Value stored to 'sectors' is never read 
[clang-analyzer-deadcode.DeadStores]
                   sectors = target - s;
                   ^         ~~~~~~~~~~
   block/badblocks.c:348:3: note: Value stored to 'sectors' is never read
                   sectors = target - s;
                   ^         ~~~~~~~~~~
   1 warning generated.
   sound/soc/kirkwood/kirkwood-i2s.c:322:2: warning: Value stored to 'value' is 
never read [clang-analyzer-deadcode.DeadStores]
           value = readl(priv->io + KIRKWOOD_RECCTL);
           ^
   sound/soc/kirkwood/kirkwood-i2s.c:322:2: note: Value stored to 'value' is 
never read
   2 warnings generated.
   sound/soc/qcom/sdm845.c:76:4: warning: Value stored to 'ret' is never read 
[clang-analyzer-deadcode.DeadStores]
                           ret = snd_soc_dai_set_channel_map(cpu_dai, 0, NULL,
                           ^     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   sound/soc/qcom/sdm845.c:76:4: note: Value stored to 'ret' is never read
                           ret = snd_soc_dai_set_channel_map(cpu_dai, 0, NULL,
                           ^     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   sound/soc/qcom/sdm845.c:79:4: warning: Value stored to 'ret' is never read 
[clang-analyzer-deadcode.DeadStores]
                           ret = snd_soc_dai_set_channel_map(cpu_dai, tx_ch_cnt,
                           ^     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   sound/soc/qcom/sdm845.c:79:4: note: Value stored to 'ret' is never read
                           ret = snd_soc_dai_set_channel_map(cpu_dai, tx_ch_cnt,
                           ^     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   1 warning generated.
>> sound/soc/qcom/sm8250.c:31:22: warning: Value stored to 'codec_dai' during 
>> its initialization is never read [clang-analyzer-deadcode.DeadStores]
           struct snd_soc_dai *codec_dai = asoc_rtd_to_codec(rtd, 0);
                               ^~~~~~~~~
   sound/soc/qcom/sm8250.c:31:22: note: Value stored to 'codec_dai' during its 
initialization is never read
           struct snd_soc_dai *codec_dai = asoc_rtd_to_codec(rtd, 0);
                               ^~~~~~~~~
   1 warning generated.
   sound/soc/codecs/da7213.c:1427:3: warning: Value stored to 'indiv' is never 
read [clang-analyzer-deadcode.DeadStores]
                   indiv = DA7213_PLL_INDIV_9_TO_18_MHZ_VAL;
                   ^
   sound/soc/codecs/da7213.c:1427:3: note: Value stored to 'indiv' is never read
   1 warning generated.
   drivers/input/joystick/adi.c:139:6: warning: Although the value stored to 
'z' is used in the enclosing expression, the value is never actually read from 
'z' [clang-analyzer-deadcode.DeadStores]
           v = z = gameport_read(gameport);
               ^   ~~~~~~~~~~~~~~~~~~~~~~~
   drivers/input/joystick/adi.c:139:6: note: Although the value stored to 'z' 
is used in the enclosing expression, the value is never actually read from 'z'
           v = z = gameport_read(gameport);
               ^   ~~~~~~~~~~~~~~~~~~~~~~~
   1 warning generated.
   drivers/iio/dac/ad5449.c:61:8: warning: Excessive padding in 'struct ad5449' 
(39 padding bytes, where 7 is optimal). 
   Optimal fields order: 
   data, 
   spi, 
   chip_info, 
   lock, 
   vref_reg, 
   dac_cache, 
   has_sdo, 
   consider reordering the fields or adding explicit padding members 
[clang-analyzer-optin.performance.Padding]
   struct ad5449 {
   ~~~~~~~^~~~~~~~
   drivers/iio/dac/ad5449.c:61:8: note: Excessive padding in 'struct ad5449' 
(39 padding bytes, where 7 is optimal). Optimal fields order: data, spi, 
chip_info, lock, vref_reg, dac_cache, has_sdo, consider reordering the fields 
or adding explicit padding members
   struct ad5449 {
   ~~~~~~~^~~~~~~~
   1 warning generated.
   Suppressed 1 warnings (1 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use 
-system-headers to display errors from system headers as well.
   1 warning generated.
   Suppressed 1 warnings (1 with check filters).
   2 warnings generated.
   fs/ntfs3/file.c:496:2: warning: Value stored to 'err' is never read 
[clang-analyzer-deadcode.DeadStores]
           err = attr_set_size(ni, ATTR_DATA, NULL, 0, &ni->file.run, new_size,
           ^     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   fs/ntfs3/file.c:496:2: note: Value stored to 'err' is never read
           err = attr_set_size(ni, ATTR_DATA, NULL, 0, &ni->file.run, new_size,
           ^     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   fs/ntfs3/file.c:988:3: warning: Value stored to 'frame' is never read 
[clang-analyzer-deadcode.DeadStores]
                   frame = pos >> frame_bits;
                   ^       ~~~~~~~~~~~~~~~~~
   fs/ntfs3/file.c:988:3: note: Value stored to 'frame' is never read
                   frame = pos >> frame_bits;
                   ^       ~~~~~~~~~~~~~~~~~
   2 warnings generated.
   drivers/mtd/nand/spi/gigadevice.c:195:14: warning: The left operand of '&' 
is a garbage value [clang-analyzer-core.UndefinedBinaryOperatorResult]
                           ((status2 & STATUS_ECC_MASK) >> 4);
                             ~~~~~~~ ^
   drivers/mtd/nand/spi/gigadevice.c:171:2: note: 'status2' declared without an 
initial value
           u8 status2;
           ^~~~~~~~~~
   drivers/mtd/nand/spi/gigadevice.c:176:2: note: Control jumps to 'case 16:'  
at line 180
           switch (status & STATUS_ECC_MASK) {
           ^
   drivers/mtd/nand/spi/gigadevice.c:186:7: note: Assuming 'ret' is 0
                   if (ret)
                       ^~~
   drivers/mtd/nand/spi/gigadevice.c:186:3: note: Taking false branch
                   if (ret)
                   ^
   drivers/mtd/nand/spi/gigadevice.c:195:14: note: The left operand of '&' is a 
garbage value
                           ((status2 & STATUS_ECC_MASK) >> 4);
                             ~~~~~~~ ^
   drivers/mtd/nand/spi/gigadevice.c:235:20: warning: The left operand of '&' 
is a garbage value [clang-analyzer-core.UndefinedBinaryOperatorResult]
                   return ((status2 & STATUS_ECC_MASK) >> 4) + 1;
                            ~~~~~~~ ^
   drivers/mtd/nand/spi/gigadevice.c:213:2: note: 'status2' declared without an 
initial value
           u8 status2;
           ^~~~~~~~~~
   drivers/mtd/nand/spi/gigadevice.c:218:2: note: Control jumps to 'case 16:'  
at line 222
           switch (status & STATUS_ECC_MASK) {
           ^
   drivers/mtd/nand/spi/gigadevice.c:228:7: note: Assuming 'ret' is 0
                   if (ret)
                       ^~~
   drivers/mtd/nand/spi/gigadevice.c:228:3: note: Taking false branch
                   if (ret)
                   ^
   drivers/mtd/nand/spi/gigadevice.c:235:20: note: The left operand of '&' is a 
garbage value
                   return ((status2 & STATUS_ECC_MASK) >> 4) + 1;
                            ~~~~~~~ ^
   1 warning generated.
   drivers/mtd/nand/spi/macronix.c:63:9: warning: The left expression of the 
compound assignment is an uninitialized value. The computed value will also be 
garbage [clang-analyzer-core.uninitialized.Assign]
           *eccsr &= MACRONIX_ECCSR_MASK;
                  ^
   drivers/mtd/nand/spi/macronix.c:71:2: note: 'eccsr' declared without an 
initial value
           u8 eccsr;
           ^~~~~~~~
   drivers/mtd/nand/spi/macronix.c:73:2: note: Control jumps to 'case 16:'  at 
line 80
           switch (status & STATUS_ECC_MASK) {
           ^
   drivers/mtd/nand/spi/macronix.c:86:7: note: Calling 'mx35lf1ge4ab_get_eccsr'
                   if (mx35lf1ge4ab_get_eccsr(spinand, &eccsr))

vim +/codec_dai +31 sound/soc/qcom/sm8250.c

aa2e2785545aab Srinivas Kandagatla 2020-10-26  26  
810532e7392e76 Srinivas Kandagatla 2021-10-06  27  static int 
sm8250_snd_init(struct snd_soc_pcm_runtime *rtd)
810532e7392e76 Srinivas Kandagatla 2021-10-06  28  {
810532e7392e76 Srinivas Kandagatla 2021-10-06  29       struct sm8250_snd_data 
*data = snd_soc_card_get_drvdata(rtd->card);
810532e7392e76 Srinivas Kandagatla 2021-10-06  30       struct snd_soc_dai 
*cpu_dai = asoc_rtd_to_cpu(rtd, 0);
810532e7392e76 Srinivas Kandagatla 2021-10-06 @31       struct snd_soc_dai 
*codec_dai = asoc_rtd_to_codec(rtd, 0);
810532e7392e76 Srinivas Kandagatla 2021-10-06  32       struct snd_soc_card 
*card = rtd->card;
810532e7392e76 Srinivas Kandagatla 2021-10-06  33       int rval, i;
810532e7392e76 Srinivas Kandagatla 2021-10-06  34  
810532e7392e76 Srinivas Kandagatla 2021-10-06  35       if (!data->jack_setup) {
810532e7392e76 Srinivas Kandagatla 2021-10-06  36               struct snd_jack 
*jack;
810532e7392e76 Srinivas Kandagatla 2021-10-06  37  
810532e7392e76 Srinivas Kandagatla 2021-10-06  38               rval = 
snd_soc_card_jack_new(card, "Headset Jack",
810532e7392e76 Srinivas Kandagatla 2021-10-06  39                               
             SND_JACK_HEADSET | SND_JACK_LINEOUT |
810532e7392e76 Srinivas Kandagatla 2021-10-06  40                               
             SND_JACK_MECHANICAL |
810532e7392e76 Srinivas Kandagatla 2021-10-06  41                               
             SND_JACK_BTN_0 | SND_JACK_BTN_1 |
810532e7392e76 Srinivas Kandagatla 2021-10-06  42                               
             SND_JACK_BTN_2 | SND_JACK_BTN_3 |
810532e7392e76 Srinivas Kandagatla 2021-10-06  43                               
             SND_JACK_BTN_4 | SND_JACK_BTN_5,
810532e7392e76 Srinivas Kandagatla 2021-10-06  44                               
             &data->jack, NULL, 0);
810532e7392e76 Srinivas Kandagatla 2021-10-06  45  
810532e7392e76 Srinivas Kandagatla 2021-10-06  46               if (rval < 0) {
810532e7392e76 Srinivas Kandagatla 2021-10-06  47                       
dev_err(card->dev, "Unable to add Headphone Jack\n");
810532e7392e76 Srinivas Kandagatla 2021-10-06  48                       return 
rval;
810532e7392e76 Srinivas Kandagatla 2021-10-06  49               }
810532e7392e76 Srinivas Kandagatla 2021-10-06  50  
810532e7392e76 Srinivas Kandagatla 2021-10-06  51               jack = 
data->jack.jack;
810532e7392e76 Srinivas Kandagatla 2021-10-06  52  
810532e7392e76 Srinivas Kandagatla 2021-10-06  53               
snd_jack_set_key(jack, SND_JACK_BTN_0, KEY_MEDIA);
810532e7392e76 Srinivas Kandagatla 2021-10-06  54               
snd_jack_set_key(jack, SND_JACK_BTN_1, KEY_VOICECOMMAND);
810532e7392e76 Srinivas Kandagatla 2021-10-06  55               
snd_jack_set_key(jack, SND_JACK_BTN_2, KEY_VOLUMEUP);
810532e7392e76 Srinivas Kandagatla 2021-10-06  56               
snd_jack_set_key(jack, SND_JACK_BTN_3, KEY_VOLUMEDOWN);
810532e7392e76 Srinivas Kandagatla 2021-10-06  57               
data->jack_setup = true;
810532e7392e76 Srinivas Kandagatla 2021-10-06  58       }
810532e7392e76 Srinivas Kandagatla 2021-10-06  59  
810532e7392e76 Srinivas Kandagatla 2021-10-06  60       switch (cpu_dai->id) {
810532e7392e76 Srinivas Kandagatla 2021-10-06  61       case TX_CODEC_DMA_TX_0:
810532e7392e76 Srinivas Kandagatla 2021-10-06  62       case TX_CODEC_DMA_TX_1:
810532e7392e76 Srinivas Kandagatla 2021-10-06  63       case TX_CODEC_DMA_TX_2:
810532e7392e76 Srinivas Kandagatla 2021-10-06  64       case TX_CODEC_DMA_TX_3:
810532e7392e76 Srinivas Kandagatla 2021-10-06  65               
for_each_rtd_codec_dais(rtd, i, codec_dai) {
810532e7392e76 Srinivas Kandagatla 2021-10-06  66                       rval = 
snd_soc_component_set_jack(codec_dai->component,
810532e7392e76 Srinivas Kandagatla 2021-10-06  67                               
                          &data->jack, NULL);
810532e7392e76 Srinivas Kandagatla 2021-10-06  68                       if 
(rval != 0 && rval != -ENOTSUPP) {
810532e7392e76 Srinivas Kandagatla 2021-10-06  69                               
dev_warn(card->dev, "Failed to set jack: %d\n", rval);
810532e7392e76 Srinivas Kandagatla 2021-10-06  70                               
return rval;
810532e7392e76 Srinivas Kandagatla 2021-10-06  71                       }
810532e7392e76 Srinivas Kandagatla 2021-10-06  72               }
810532e7392e76 Srinivas Kandagatla 2021-10-06  73  
810532e7392e76 Srinivas Kandagatla 2021-10-06  74               break;
810532e7392e76 Srinivas Kandagatla 2021-10-06  75       default:
810532e7392e76 Srinivas Kandagatla 2021-10-06  76               break;
810532e7392e76 Srinivas Kandagatla 2021-10-06  77       }
810532e7392e76 Srinivas Kandagatla 2021-10-06  78  
810532e7392e76 Srinivas Kandagatla 2021-10-06  79  
810532e7392e76 Srinivas Kandagatla 2021-10-06  80       return 0;
810532e7392e76 Srinivas Kandagatla 2021-10-06  81  }
810532e7392e76 Srinivas Kandagatla 2021-10-06  82  

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/[email protected]
_______________________________________________
kbuild mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to