Thank you very much for the proposed patch, but I have some questions that I would like to discuss with you On Mon, Sep 04, 2023 at 12:53 PM +0200, Krzysztof Kozlowski wrote: > The Devicetree sound-channel property was never accepted and is not > allowed by bindings. It is not used by any upstream user, thus > considering that it was never documented, should be dropped. This node property is intended for use with multiple PA, to load different configurations for different PA. Can I add this sound-channel in the "awinic,aw88395.yaml" file? > Even though it does not look like from the diff, the property is not > actually used by the driver, because once set, it is read only in loops > depending on ddt_num (prof_hdr->ddt_num, cfg_hdr->ddt_num). The > variable ddt_num is never set and is always 0, so the loops do not have > any iteration. Dropping sound-channel and ddt_num-related loops allows > to drop empty functions which in turn drop quite a lot of code. This > entire code was not possible to execute. The ddt_num variable is not always 0, this variable is defined in the configuration file. The "prof_hdr" variable is assigned by the "cfg_hdr" variable. The "cfg_hdr" variable is assigned by "aw_cfg" aw_cfg is the data obtained through request_firmware.The specific process is as follows: request_firmware ---> cont->data ---> aw_cfg->data --> cfg_hdr --> prof_hdr > Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxx> --- > Not tested on hardware... but feature removed here could not work > according if conforming to documented interface. --- > sound/soc/codecs/aw88261.c | 13 - > sound/soc/codecs/aw88395/aw88395_data_type.h | 1 - > sound/soc/codecs/aw88395/aw88395_device.c | 21 - > sound/soc/codecs/aw88395/aw88395_device.h | 1 - > sound/soc/codecs/aw88395/aw88395_lib.c | 788 ------------------- > 5 files changed, 824 deletions(-) > diff --git a/sound/soc/codecs/aw88261.c b/sound/soc/codecs/aw88261.c > index a5de7c704e73..e0527ce2f83e 100644 > --- a/sound/soc/codecs/aw88261.c > +++ b/sound/soc/codecs/aw88261.c > @@ -1171,17 +1171,6 @@ static void aw88261_hw_reset(struct aw88261 *aw88261) > usleep_range(AW88261_1000_US, AW88261_1000_US + 10); > } ... Best Regards, Weidong Wang