Re: [PATCH v4] ASoC: tas2783-sdw: add firmware download status check

From: Cezary Rojewski

Date: Tue Sep 15 2026 - 15:11:04 EST


On 9/15/2026 5:52 AM, Baojun Xu wrote:
> Currently, the firmware download is unnecessarily triggered on every
> system resume from suspend, causing significant wake-up latency. However,
> this step is redundant if the AMP remains powered on.

Either drop 'unnecessarily' in the first sentence or shorten the second
sentence to 'The step is redundant (...)'.


> @@ -996,7 +997,7 @@ static s32 tas_sdw_hw_params(struct snd_pcm_substream *substream,
> TAS2783_SDCA_POW_STATE_ON);
> if (!ret)
> break;
> - usleep_range(2000, 2200);
> + fsleep(2200);

Is this a crucial part of the patch? Looks out of scope and if so,
please move it to a separate patch.

> } while (retry--);
> }

> @@ -1252,25 +1253,29 @@ static s32 tas_fw_load(struct tas2783_prv *tas_dev, struct sdw_slave *slave)
> static s32 tas_io_init(struct device *dev, struct sdw_slave *slave)
> {
> struct tas2783_prv *tas_dev = dev_get_drvdata(dev);
> + unsigned int val;
> s32 ret;
>
> if (tas_dev->hw_init)
> return 0;
>
> - tas_dev->fw_dl_success = false;
> + regmap_read(tas_dev->regmap, TASDEV_REG_SDW(0, 0, 7), &val);
> + /* Check if the AMP is in reset status. */

Please add a newline between regmap_read() and the comment.

> + if (val == 0x20) {
> + tas_dev->fw_dl_success = false;
>