[bug report] ASoC: Intel: KMB: Enable TDM audio capture

Dan Carpenter dan.carpenter at oracle.com
Tue Aug 25 15:21:02 CEST 2020


Hello Michael Sit Wei Hong,

The patch 9c3bab3c4f15: "ASoC: Intel: KMB: Enable TDM audio capture"
from Aug 11, 2020, leads to the following static checker warning:

	sound/soc/intel/keembay/kmb_platform.c:518 kmb_dai_hw_params()
	warn: potential ! vs ~ typo

sound/soc/intel/keembay/kmb_platform.c
   502          }
   503  
   504          config->chan_nr = params_channels(hw_params);
   505  
   506          switch (config->chan_nr) {
   507          case 8:
   508          case 4:
   509                  /*
   510                   * Platform is not capable of providing clocks for
   511                   * multi channel audio
   512                   */
   513                  if (kmb_i2s->master)
   514                          return -EINVAL;
   515  
   516                  write_val = ((config->chan_nr / 2) << TDM_CHANNEL_CONFIG_BIT) |
   517                                  (config->data_width << DATA_WIDTH_CONFIG_BIT) |
   518                                  !MASTER_MODE | TDM_OPERATION;
                                        ^^^^^^^^^^^^
MASTER_MODE is BIT(13).  It's unclear what this is supposed to be.  My
best guess is that the ! should just be deleted.

   519  
   520                  writel(write_val, kmb_i2s->pss_base + I2S_GEN_CFG_0);
   521                  break;
   522          case 2:
   523                  /*
   524                   * Platform is only capable of providing clocks need for
   525                   * 2 channel master mode
   526                   */
   527                  if (!(kmb_i2s->master))
   528                          return -EINVAL;
   529  
   530                  write_val = ((config->chan_nr / 2) << TDM_CHANNEL_CONFIG_BIT) |
   531                                  (config->data_width << DATA_WIDTH_CONFIG_BIT) |
   532                                  MASTER_MODE | I2S_OPERATION;
   533  
   534                  writel(write_val, kmb_i2s->pss_base + I2S_GEN_CFG_0);
   535                  break;
   536          default:
   537                  dev_dbg(kmb_i2s->dev, "channel not supported\n");
   538                  return -EINVAL;
   539          }

regards,
dan carpenter


More information about the Alsa-devel mailing list