> > + ret = device_property_read_u8(codec->dev, "everest,adc-slot", &es8389->adc_slot); > > + if (ret != 0) { > > + dev_dbg(codec->dev, "adc-slot return %d", ret); > > + es8389->adc_slot = 0x00; > > + } > > + > > + ret = device_property_read_u8(codec->dev, "everest,dac-slot", &es8389->dac_slot); > > + if (ret != 0) { > > + dev_dbg(codec->dev, "dac-slot return %d", ret); > > + es8389->dac_slot = 0x00; > > + } > > set_tdm_slot() > > Please don't ignore review comments, people are generally making them > for a reason and are likely to have the same concerns if issues remain > unaddressed. Having to repeat the same comments can get repetitive and > make people question the value of time spent reviewing. If you disagree > with the review comments that's fine but you need to reply and discuss > your concerns so that the reviewer can understand your decisions. We will register multiple codecs inside a single dai_link and differentiate these codecs by of_node. And the adc_slot and the dac_slot may be different, they can be decided by the user.If we use set_tdm_slot,the adc_slot and the dac_slot will be same. > > + if (!es8389->adc_slot) { > > + es8389->mclk = devm_clk_get(codec->dev, "mclk"); > > + if (IS_ERR(es8389->mclk)) > > + return dev_err_probe(codec->dev, PTR_ERR(es8389->mclk), > > + "ES8389 is unable to get mclk\n"); > > + > > + if (!es8389->mclk) > > + dev_err(codec->dev, "%s, assuming static mclk\n", __func__); > > + > > + ret = clk_prepare_enable(es8389->mclk); > > + if (ret) { > > + dev_err(codec->dev, "%s, unable to enable mclk\n", __func__); > > + return ret; > > + } > > + } > > Making the use of a MCLK depend on the configuration of a TDM slot for > the ADC seems *very* unusual, what's going on there? Because we are associating multiple codecs under a single dai_link, we will be executing probe and init many times during initialization.But MCLK only needs to be used once.So we decided making the use of a MCLK depend on the configuration of a TDM slot for the ADC