提交 6c452bda 编写于 作者: T Takashi Iwai 提交者: Mark Brown

ASoC: wm_adsp: Fix BUG_ON() and WARN_ON() usages

This patch does:
- Move the sanity check with WARN_ON() in wm_adsp_region_to_reg() and
  remove the checks in the callers,
- Fix wrong WARN_ON() usages, replaced with WARN(),
- Fix unreachable or wrong BUG_ON() usages and replace with WARN_ON().
Signed-off-by: NTakashi Iwai <tiwai@suse.de>
Reviewed-by: NCharles Keepax <ckeepax@opensource.wolfsonmicro.com>
Signed-off-by: NMark Brown <broonie@linaro.org>
上级 a6ed0608
...@@ -341,6 +341,8 @@ static struct wm_adsp_region const *wm_adsp_find_region(struct wm_adsp *dsp, ...@@ -341,6 +341,8 @@ static struct wm_adsp_region const *wm_adsp_find_region(struct wm_adsp *dsp,
static unsigned int wm_adsp_region_to_reg(struct wm_adsp_region const *region, static unsigned int wm_adsp_region_to_reg(struct wm_adsp_region const *region,
unsigned int offset) unsigned int offset)
{ {
if (WARN_ON(!region))
return offset;
switch (region->type) { switch (region->type) {
case WMFW_ADSP1_PM: case WMFW_ADSP1_PM:
return region->base + (offset * 3); return region->base + (offset * 3);
...@@ -353,7 +355,7 @@ static unsigned int wm_adsp_region_to_reg(struct wm_adsp_region const *region, ...@@ -353,7 +355,7 @@ static unsigned int wm_adsp_region_to_reg(struct wm_adsp_region const *region,
case WMFW_ADSP1_ZM: case WMFW_ADSP1_ZM:
return region->base + (offset * 2); return region->base + (offset * 2);
default: default:
WARN_ON(NULL != "Unknown memory region type"); WARN(1, "Unknown memory region type");
return offset; return offset;
} }
} }
...@@ -602,7 +604,7 @@ static int wm_adsp_load(struct wm_adsp *dsp) ...@@ -602,7 +604,7 @@ static int wm_adsp_load(struct wm_adsp *dsp)
break; break;
default: default:
BUG_ON(NULL == "Unknown DSP type"); WARN(1, "Unknown DSP type");
goto out_fw; goto out_fw;
} }
...@@ -642,27 +644,22 @@ static int wm_adsp_load(struct wm_adsp *dsp) ...@@ -642,27 +644,22 @@ static int wm_adsp_load(struct wm_adsp *dsp)
reg = offset; reg = offset;
break; break;
case WMFW_ADSP1_PM: case WMFW_ADSP1_PM:
BUG_ON(!mem);
region_name = "PM"; region_name = "PM";
reg = wm_adsp_region_to_reg(mem, offset); reg = wm_adsp_region_to_reg(mem, offset);
break; break;
case WMFW_ADSP1_DM: case WMFW_ADSP1_DM:
BUG_ON(!mem);
region_name = "DM"; region_name = "DM";
reg = wm_adsp_region_to_reg(mem, offset); reg = wm_adsp_region_to_reg(mem, offset);
break; break;
case WMFW_ADSP2_XM: case WMFW_ADSP2_XM:
BUG_ON(!mem);
region_name = "XM"; region_name = "XM";
reg = wm_adsp_region_to_reg(mem, offset); reg = wm_adsp_region_to_reg(mem, offset);
break; break;
case WMFW_ADSP2_YM: case WMFW_ADSP2_YM:
BUG_ON(!mem);
region_name = "YM"; region_name = "YM";
reg = wm_adsp_region_to_reg(mem, offset); reg = wm_adsp_region_to_reg(mem, offset);
break; break;
case WMFW_ADSP1_ZM: case WMFW_ADSP1_ZM:
BUG_ON(!mem);
region_name = "ZM"; region_name = "ZM";
reg = wm_adsp_region_to_reg(mem, offset); reg = wm_adsp_region_to_reg(mem, offset);
break; break;
...@@ -901,10 +898,8 @@ static int wm_adsp_setup_algs(struct wm_adsp *dsp) ...@@ -901,10 +898,8 @@ static int wm_adsp_setup_algs(struct wm_adsp *dsp)
break; break;
} }
if (mem == NULL) { if (WARN_ON(!mem))
BUG_ON(mem != NULL);
return -EINVAL; return -EINVAL;
}
switch (dsp->type) { switch (dsp->type) {
case WMFW_ADSP1: case WMFW_ADSP1:
...@@ -998,7 +993,7 @@ static int wm_adsp_setup_algs(struct wm_adsp *dsp) ...@@ -998,7 +993,7 @@ static int wm_adsp_setup_algs(struct wm_adsp *dsp)
break; break;
default: default:
BUG_ON(NULL == "Unknown DSP type"); WARN(1, "Unknown DSP type");
return -EINVAL; return -EINVAL;
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册