Skip to content

Commit

Permalink
ASoC: wm_adsp: Support DSPs that don't require firmware download
Browse files Browse the repository at this point in the history
When a DSP can self-boot from ROM it is not necessary to download
firmware - when the DSP has the wmfw_optional flag set not finding a
wmfw firmware file is a successful outcome and not an error condition.

Signed-off-by: Simon Trimmer <simont@opensource.cirrus.com>
Signed-off-by: Richard Fitzgerald <rf@opensource.cirrus.com>
Link: https://lore.kernel.org/r/167931140130.26.15590061696793062038@mailman-core.alsa-project.org
Signed-off-by: Mark Brown <broonie@kernel.org>
  • Loading branch information
Simon Trimmer authored and Mark Brown committed Mar 21, 2023
1 parent 107c167 commit 65a314b
Show file tree
Hide file tree
Showing 2 changed files with 4 additions and 0 deletions.
3 changes: 3 additions & 0 deletions sound/soc/codecs/wm_adsp.c
Original file line number Diff line number Diff line change
Expand Up @@ -850,6 +850,9 @@ static int wm_adsp_request_firmware_files(struct wm_adsp *dsp,
return 0;
}

if (dsp->wmfw_optional)
return 0;

adsp_err(dsp, "Failed to request firmware <%s>%s-%s-%s<-%s<%s>>.wmfw\n",
cirrus_dir, dsp->part, dsp->fwf_name, wm_adsp_fw[dsp->fw].file,
system_name, asoc_component_prefix);
Expand Down
1 change: 1 addition & 0 deletions sound/soc/codecs/wm_adsp.h
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ struct wm_adsp {
unsigned int sys_config_size;

int fw;
bool wmfw_optional;

struct work_struct boot_work;
int (*pre_run)(struct wm_adsp *dsp);
Expand Down

0 comments on commit 65a314b

Please sign in to comment.