ASoC: wm_adsp: Fix BUG_ON() and WARN_ON() usages
authorTakashi Iwai <tiwai@suse.de>
Tue, 5 Nov 2013 17:40:00 +0000 (18:40 +0100)
committerMark Brown <broonie@linaro.org>
Thu, 7 Nov 2013 19:55:21 +0000 (19:55 +0000)
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: Takashi Iwai <tiwai@suse.de>
Reviewed-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
sound/soc/codecs/wm_adsp.c

index b38f350..8dfce8f 100644 (file)
@@ -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,
                                          unsigned int offset)
 {
+       if (WARN_ON(!region))
+               return offset;
        switch (region->type) {
        case WMFW_ADSP1_PM:
                return region->base + (offset * 3);
@@ -353,7 +355,7 @@ static unsigned int wm_adsp_region_to_reg(struct wm_adsp_region const *region,
        case WMFW_ADSP1_ZM:
                return region->base + (offset * 2);
        default:
-               WARN_ON(NULL != "Unknown memory region type");
+               WARN(1, "Unknown memory region type");
                return offset;
        }
 }
@@ -602,7 +604,7 @@ static int wm_adsp_load(struct wm_adsp *dsp)
                break;
 
        default:
-               BUG_ON(NULL == "Unknown DSP type");
+               WARN(1, "Unknown DSP type");
                goto out_fw;
        }
 
@@ -642,27 +644,22 @@ static int wm_adsp_load(struct wm_adsp *dsp)
                        reg = offset;
                        break;
                case WMFW_ADSP1_PM:
-                       BUG_ON(!mem);
                        region_name = "PM";
                        reg = wm_adsp_region_to_reg(mem, offset);
                        break;
                case WMFW_ADSP1_DM:
-                       BUG_ON(!mem);
                        region_name = "DM";
                        reg = wm_adsp_region_to_reg(mem, offset);
                        break;
                case WMFW_ADSP2_XM:
-                       BUG_ON(!mem);
                        region_name = "XM";
                        reg = wm_adsp_region_to_reg(mem, offset);
                        break;
                case WMFW_ADSP2_YM:
-                       BUG_ON(!mem);
                        region_name = "YM";
                        reg = wm_adsp_region_to_reg(mem, offset);
                        break;
                case WMFW_ADSP1_ZM:
-                       BUG_ON(!mem);
                        region_name = "ZM";
                        reg = wm_adsp_region_to_reg(mem, offset);
                        break;
@@ -901,10 +898,8 @@ static int wm_adsp_setup_algs(struct wm_adsp *dsp)
                break;
        }
 
-       if (mem == NULL) {
-               BUG_ON(mem != NULL);
+       if (WARN_ON(!mem))
                return -EINVAL;
-       }
 
        switch (dsp->type) {
        case WMFW_ADSP1:
@@ -998,7 +993,7 @@ static int wm_adsp_setup_algs(struct wm_adsp *dsp)
                break;
 
        default:
-               BUG_ON(NULL == "Unknown DSP type");
+               WARN(1, "Unknown DSP type");
                return -EINVAL;
        }