Commit 9ce5e6e6 authored by Richard Fitzgerald's avatar Richard Fitzgerald Committed by Mark Brown

ASoC: wm_adsp: factor out getting region name from type

This patch factors out converting a memory region type into
a name string, mainly so that it can be used in log commands.
Signed-off-by: default avatarRichard Fitzgerald <rf@opensource.wolfsonmicro.com>
Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent f4f0c4c6
...@@ -454,6 +454,24 @@ struct wm_coeff_ctl { ...@@ -454,6 +454,24 @@ struct wm_coeff_ctl {
unsigned int flags; unsigned int flags;
}; };
static const char *wm_adsp_mem_region_name(unsigned int type)
{
switch (type) {
case WMFW_ADSP1_PM:
return "PM";
case WMFW_ADSP1_DM:
return "DM";
case WMFW_ADSP2_XM:
return "XM";
case WMFW_ADSP2_YM:
return "YM";
case WMFW_ADSP1_ZM:
return "ZM";
default:
return NULL;
}
}
#ifdef CONFIG_DEBUG_FS #ifdef CONFIG_DEBUG_FS
static void wm_adsp_debugfs_save_wmfwname(struct wm_adsp *dsp, const char *s) static void wm_adsp_debugfs_save_wmfwname(struct wm_adsp *dsp, const char *s)
{ {
...@@ -1146,29 +1164,14 @@ static int wm_adsp_create_control(struct wm_adsp *dsp, ...@@ -1146,29 +1164,14 @@ static int wm_adsp_create_control(struct wm_adsp *dsp,
struct wm_coeff_ctl *ctl; struct wm_coeff_ctl *ctl;
struct wmfw_ctl_work *ctl_work; struct wmfw_ctl_work *ctl_work;
char name[SNDRV_CTL_ELEM_ID_NAME_MAXLEN]; char name[SNDRV_CTL_ELEM_ID_NAME_MAXLEN];
char *region_name; const char *region_name;
int ret; int ret;
if (flags & WMFW_CTL_FLAG_SYS) if (flags & WMFW_CTL_FLAG_SYS)
return 0; return 0;
switch (alg_region->type) { region_name = wm_adsp_mem_region_name(alg_region->type);
case WMFW_ADSP1_PM: if (!region_name) {
region_name = "PM";
break;
case WMFW_ADSP1_DM:
region_name = "DM";
break;
case WMFW_ADSP2_XM:
region_name = "XM";
break;
case WMFW_ADSP2_YM:
region_name = "YM";
break;
case WMFW_ADSP1_ZM:
region_name = "ZM";
break;
default:
adsp_err(dsp, "Unknown region type: %d\n", alg_region->type); adsp_err(dsp, "Unknown region type: %d\n", alg_region->type);
return -EINVAL; return -EINVAL;
} }
...@@ -1601,23 +1604,11 @@ static int wm_adsp_load(struct wm_adsp *dsp) ...@@ -1601,23 +1604,11 @@ static int wm_adsp_load(struct wm_adsp *dsp)
reg = offset; reg = offset;
break; break;
case WMFW_ADSP1_PM: case WMFW_ADSP1_PM:
region_name = "PM";
reg = wm_adsp_region_to_reg(mem, offset);
break;
case WMFW_ADSP1_DM: case WMFW_ADSP1_DM:
region_name = "DM";
reg = wm_adsp_region_to_reg(mem, offset);
break;
case WMFW_ADSP2_XM: case WMFW_ADSP2_XM:
region_name = "XM";
reg = wm_adsp_region_to_reg(mem, offset);
break;
case WMFW_ADSP2_YM: case WMFW_ADSP2_YM:
region_name = "YM";
reg = wm_adsp_region_to_reg(mem, offset);
break;
case WMFW_ADSP1_ZM: case WMFW_ADSP1_ZM:
region_name = "ZM"; region_name = wm_adsp_mem_region_name(type);
reg = wm_adsp_region_to_reg(mem, offset); reg = wm_adsp_region_to_reg(mem, offset);
break; break;
default: default:
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment