> On 25 Aug 2020, at 9:21 PM, Dan Carpenter <dan.carpenter@xxxxxxxxxx> wrote: > > 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. This ! is intentional because it is meant to be Slave mode. Would a better approach be to create another #define for slave mode? > > 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