Hi Bogdan,

Thank you for the patch! Perhaps something to improve:

[auto build test WARNING on linus/master]
[cannot apply to v5.4-rc1 next-20191004]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]

url:    
https://github.com/0day-ci/linux/commits/Bogdan-Togorean/drm-bridge-adv7511-Enable-SPDIF-DAI/20191004-205455
config: xtensa-allyesconfig (attached as .config)
compiler: xtensa-linux-gcc (GCC) 7.4.0
reproduce:
        wget 
https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O 
~/bin/make.cross
        chmod +x ~/bin/make.cross
        # save the attached .config to linux build tree
        GCC_VERSION=7.4.0 make.cross ARCH=xtensa 

If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <l...@intel.com>

All warnings (new ones prefixed by >>):

   drivers/gpu/drm/bridge/adv7511/adv7511_audio.c: In function 
'adv7511_hdmi_hw_params':
>> drivers/gpu/drm/bridge/adv7511/adv7511_audio.c:123:16: warning: this 
>> statement may fall through [-Wimplicit-fallthrough=]
      audio_source = ADV7511_AUDIO_SOURCE_SPDIF;
   drivers/gpu/drm/bridge/adv7511/adv7511_audio.c:124:2: note: here
     default:
     ^~~~~~~

vim +123 drivers/gpu/drm/bridge/adv7511/adv7511_audio.c

    55  
    56  int adv7511_hdmi_hw_params(struct device *dev, void *data,
    57                             struct hdmi_codec_daifmt *fmt,
    58                             struct hdmi_codec_params *hparms)
    59  {
    60          struct adv7511 *adv7511 = dev_get_drvdata(dev);
    61          unsigned int audio_source, i2s_format = 0;
    62          unsigned int invert_clock;
    63          unsigned int rate;
    64          unsigned int len;
    65  
    66          switch (hparms->sample_rate) {
    67          case 32000:
    68                  rate = ADV7511_SAMPLE_FREQ_32000;
    69                  break;
    70          case 44100:
    71                  rate = ADV7511_SAMPLE_FREQ_44100;
    72                  break;
    73          case 48000:
    74                  rate = ADV7511_SAMPLE_FREQ_48000;
    75                  break;
    76          case 88200:
    77                  rate = ADV7511_SAMPLE_FREQ_88200;
    78                  break;
    79          case 96000:
    80                  rate = ADV7511_SAMPLE_FREQ_96000;
    81                  break;
    82          case 176400:
    83                  rate = ADV7511_SAMPLE_FREQ_176400;
    84                  break;
    85          case 192000:
    86                  rate = ADV7511_SAMPLE_FREQ_192000;
    87                  break;
    88          default:
    89                  return -EINVAL;
    90          }
    91  
    92          switch (hparms->sample_width) {
    93          case 16:
    94                  len = ADV7511_I2S_SAMPLE_LEN_16;
    95                  break;
    96          case 18:
    97                  len = ADV7511_I2S_SAMPLE_LEN_18;
    98                  break;
    99          case 20:
   100                  len = ADV7511_I2S_SAMPLE_LEN_20;
   101                  break;
   102          case 24:
   103                  len = ADV7511_I2S_SAMPLE_LEN_24;
   104                  break;
   105          default:
   106                  return -EINVAL;
   107          }
   108  
   109          switch (fmt->fmt) {
   110          case HDMI_I2S:
   111                  audio_source = ADV7511_AUDIO_SOURCE_I2S;
   112                  i2s_format = ADV7511_I2S_FORMAT_I2S;
   113                  break;
   114          case HDMI_RIGHT_J:
   115                  audio_source = ADV7511_AUDIO_SOURCE_I2S;
   116                  i2s_format = ADV7511_I2S_FORMAT_RIGHT_J;
   117                  break;
   118          case HDMI_LEFT_J:
   119                  audio_source = ADV7511_AUDIO_SOURCE_I2S;
   120                  i2s_format = ADV7511_I2S_FORMAT_LEFT_J;
   121                  break;
   122          case HDMI_SPDIF:
 > 123                  audio_source = ADV7511_AUDIO_SOURCE_SPDIF;
   124          default:
   125                  return -EINVAL;
   126          }
   127  
   128          invert_clock = fmt->bit_clk_inv;
   129  
   130          regmap_update_bits(adv7511->regmap, ADV7511_REG_AUDIO_SOURCE, 
0x70,
   131                             audio_source << 4);
   132          regmap_update_bits(adv7511->regmap, ADV7511_REG_AUDIO_CONFIG, 
BIT(6),
   133                             invert_clock << 6);
   134          regmap_update_bits(adv7511->regmap, ADV7511_REG_I2S_CONFIG, 
0x03,
   135                             i2s_format);
   136  
   137          adv7511->audio_source = audio_source;
   138  
   139          adv7511->f_audio = hparms->sample_rate;
   140  
   141          adv7511_update_cts_n(adv7511);
   142  
   143          regmap_update_bits(adv7511->regmap, ADV7511_REG_AUDIO_CFG3,
   144                             ADV7511_AUDIO_CFG3_LEN_MASK, len);
   145          regmap_update_bits(adv7511->regmap, ADV7511_REG_I2C_FREQ_ID_CFG,
   146                             ADV7511_I2C_FREQ_ID_CFG_RATE_MASK, rate << 
4);
   147          regmap_write(adv7511->regmap, 0x73, 0x1);
   148  
   149          return 0;
   150  }
   151  

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

Attachment: .config.gz
Description: application/gzip

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

Reply via email to