Commit 108145a6 authored by Mark Brown's avatar Mark Brown

Merge remote-tracking branch 'asoc/topic/warn' into asoc-next

parents 022aa51e bf4edea8
...@@ -179,8 +179,9 @@ static inline int sport_hook_rx_dummy(struct sport_device *sport) ...@@ -179,8 +179,9 @@ static inline int sport_hook_rx_dummy(struct sport_device *sport)
struct dmasg *desc, temp_desc; struct dmasg *desc, temp_desc;
unsigned long flags; unsigned long flags;
BUG_ON(sport->dummy_rx_desc == NULL); if (WARN_ON(!sport->dummy_rx_desc) ||
BUG_ON(sport->curr_rx_desc == sport->dummy_rx_desc); WARN_ON(sport->curr_rx_desc == sport->dummy_rx_desc))
return -EINVAL;
/* Maybe the dummy buffer descriptor ring is damaged */ /* Maybe the dummy buffer descriptor ring is damaged */
sport->dummy_rx_desc->next_desc_addr = sport->dummy_rx_desc + 1; sport->dummy_rx_desc->next_desc_addr = sport->dummy_rx_desc + 1;
...@@ -250,8 +251,9 @@ int sport_rx_start(struct sport_device *sport) ...@@ -250,8 +251,9 @@ int sport_rx_start(struct sport_device *sport)
return -EBUSY; return -EBUSY;
if (sport->tx_run) { if (sport->tx_run) {
/* tx is running, rx is not running */ /* tx is running, rx is not running */
BUG_ON(sport->dma_rx_desc == NULL); if (WARN_ON(!sport->dma_rx_desc) ||
BUG_ON(sport->curr_rx_desc != sport->dummy_rx_desc); WARN_ON(sport->curr_rx_desc != sport->dummy_rx_desc))
return -EINVAL;
local_irq_save(flags); local_irq_save(flags);
while ((get_dma_curr_desc_ptr(sport->dma_rx_chan) - while ((get_dma_curr_desc_ptr(sport->dma_rx_chan) -
sizeof(struct dmasg)) != sport->dummy_rx_desc) sizeof(struct dmasg)) != sport->dummy_rx_desc)
...@@ -298,8 +300,9 @@ static inline int sport_hook_tx_dummy(struct sport_device *sport) ...@@ -298,8 +300,9 @@ static inline int sport_hook_tx_dummy(struct sport_device *sport)
struct dmasg *desc, temp_desc; struct dmasg *desc, temp_desc;
unsigned long flags; unsigned long flags;
BUG_ON(sport->dummy_tx_desc == NULL); if (WARN_ON(!sport->dummy_tx_desc) ||
BUG_ON(sport->curr_tx_desc == sport->dummy_tx_desc); WARN_ON(sport->curr_tx_desc == sport->dummy_tx_desc))
return -EINVAL;
sport->dummy_tx_desc->next_desc_addr = sport->dummy_tx_desc + 1; sport->dummy_tx_desc->next_desc_addr = sport->dummy_tx_desc + 1;
...@@ -331,8 +334,9 @@ int sport_tx_start(struct sport_device *sport) ...@@ -331,8 +334,9 @@ int sport_tx_start(struct sport_device *sport)
if (sport->tx_run) if (sport->tx_run)
return -EBUSY; return -EBUSY;
if (sport->rx_run) { if (sport->rx_run) {
BUG_ON(sport->dma_tx_desc == NULL); if (WARN_ON(!sport->dma_tx_desc) ||
BUG_ON(sport->curr_tx_desc != sport->dummy_tx_desc); WARN_ON(sport->curr_tx_desc != sport->dummy_tx_desc))
return -EINVAL;
/* Hook the normal buffer descriptor */ /* Hook the normal buffer descriptor */
local_irq_save(flags); local_irq_save(flags);
while ((get_dma_curr_desc_ptr(sport->dma_tx_chan) - while ((get_dma_curr_desc_ptr(sport->dma_tx_chan) -
...@@ -767,7 +771,8 @@ static irqreturn_t err_handler(int irq, void *dev_id) ...@@ -767,7 +771,8 @@ static irqreturn_t err_handler(int irq, void *dev_id)
int sport_set_rx_callback(struct sport_device *sport, int sport_set_rx_callback(struct sport_device *sport,
void (*rx_callback)(void *), void *rx_data) void (*rx_callback)(void *), void *rx_data)
{ {
BUG_ON(rx_callback == NULL); if (WARN_ON(!rx_callback))
return -EINVAL;
sport->rx_callback = rx_callback; sport->rx_callback = rx_callback;
sport->rx_data = rx_data; sport->rx_data = rx_data;
...@@ -778,7 +783,8 @@ EXPORT_SYMBOL(sport_set_rx_callback); ...@@ -778,7 +783,8 @@ EXPORT_SYMBOL(sport_set_rx_callback);
int sport_set_tx_callback(struct sport_device *sport, int sport_set_tx_callback(struct sport_device *sport,
void (*tx_callback)(void *), void *tx_data) void (*tx_callback)(void *), void *tx_data)
{ {
BUG_ON(tx_callback == NULL); if (WARN_ON(!tx_callback))
return -EINVAL;
sport->tx_callback = tx_callback; sport->tx_callback = tx_callback;
sport->tx_data = tx_data; sport->tx_data = tx_data;
...@@ -789,7 +795,8 @@ EXPORT_SYMBOL(sport_set_tx_callback); ...@@ -789,7 +795,8 @@ EXPORT_SYMBOL(sport_set_tx_callback);
int sport_set_err_callback(struct sport_device *sport, int sport_set_err_callback(struct sport_device *sport,
void (*err_callback)(void *), void *err_data) void (*err_callback)(void *), void *err_data)
{ {
BUG_ON(err_callback == NULL); if (WARN_ON(!err_callback))
return -EINVAL;
sport->err_callback = err_callback; sport->err_callback = err_callback;
sport->err_data = err_data; sport->err_data = err_data;
...@@ -856,7 +863,8 @@ struct sport_device *sport_init(struct platform_device *pdev, ...@@ -856,7 +863,8 @@ struct sport_device *sport_init(struct platform_device *pdev,
param.wdsize = wdsize; param.wdsize = wdsize;
param.dummy_count = dummy_count; param.dummy_count = dummy_count;
BUG_ON(param.wdsize == 0 || param.dummy_count == 0); if (WARN_ON(param.wdsize == 0 || param.dummy_count == 0))
return NULL;
ret = sport_config_pdev(pdev, &param); ret = sport_config_pdev(pdev, &param);
if (ret) if (ret)
......
...@@ -568,8 +568,9 @@ static void m98088_eq_band(struct snd_soc_codec *codec, unsigned int dai, ...@@ -568,8 +568,9 @@ static void m98088_eq_band(struct snd_soc_codec *codec, unsigned int dai,
unsigned int eq_reg; unsigned int eq_reg;
unsigned int i; unsigned int i;
BUG_ON(band > 4); if (WARN_ON(band > 4) ||
BUG_ON(dai > 1); WARN_ON(dai > 1))
return;
/* Load the base register address */ /* Load the base register address */
eq_reg = dai ? M98088_REG_84_DAI2_EQ_BASE : M98088_REG_52_DAI1_EQ_BASE; eq_reg = dai ? M98088_REG_84_DAI2_EQ_BASE : M98088_REG_52_DAI1_EQ_BASE;
...@@ -909,7 +910,8 @@ static int max98088_line_pga(struct snd_soc_dapm_widget *w, ...@@ -909,7 +910,8 @@ static int max98088_line_pga(struct snd_soc_dapm_widget *w,
struct max98088_priv *max98088 = snd_soc_codec_get_drvdata(codec); struct max98088_priv *max98088 = snd_soc_codec_get_drvdata(codec);
u8 *state; u8 *state;
BUG_ON(!((channel == 1) || (channel == 2))); if (WARN_ON(!(channel == 1 || channel == 2)))
return -EINVAL;
switch (line) { switch (line) {
case LINE_INA: case LINE_INA:
......
...@@ -516,8 +516,9 @@ static void m98095_eq_band(struct snd_soc_codec *codec, unsigned int dai, ...@@ -516,8 +516,9 @@ static void m98095_eq_band(struct snd_soc_codec *codec, unsigned int dai,
unsigned int eq_reg; unsigned int eq_reg;
unsigned int i; unsigned int i;
BUG_ON(band > 4); if (WARN_ON(band > 4) ||
BUG_ON(dai > 1); WARN_ON(dai > 1))
return;
/* Load the base register address */ /* Load the base register address */
eq_reg = dai ? M98095_142_DAI2_EQ_BASE : M98095_110_DAI1_EQ_BASE; eq_reg = dai ? M98095_142_DAI2_EQ_BASE : M98095_110_DAI1_EQ_BASE;
...@@ -541,8 +542,9 @@ static void m98095_biquad_band(struct snd_soc_codec *codec, unsigned int dai, ...@@ -541,8 +542,9 @@ static void m98095_biquad_band(struct snd_soc_codec *codec, unsigned int dai,
unsigned int bq_reg; unsigned int bq_reg;
unsigned int i; unsigned int i;
BUG_ON(band > 1); if (WARN_ON(band > 1) ||
BUG_ON(dai > 1); WARN_ON(dai > 1))
return;
/* Load the base register address */ /* Load the base register address */
bq_reg = dai ? M98095_17E_DAI2_BQ_BASE : M98095_174_DAI1_BQ_BASE; bq_reg = dai ? M98095_17E_DAI2_BQ_BASE : M98095_174_DAI1_BQ_BASE;
...@@ -890,7 +892,8 @@ static int max98095_line_pga(struct snd_soc_dapm_widget *w, ...@@ -890,7 +892,8 @@ static int max98095_line_pga(struct snd_soc_dapm_widget *w,
struct max98095_priv *max98095 = snd_soc_codec_get_drvdata(codec); struct max98095_priv *max98095 = snd_soc_codec_get_drvdata(codec);
u8 *state; u8 *state;
BUG_ON(!((channel == 1) || (channel == 2))); if (WARN_ON(!(channel == 1 || channel == 2)))
return -EINVAL;
state = &max98095->lin_state; state = &max98095->lin_state;
...@@ -1740,7 +1743,8 @@ static int max98095_put_eq_enum(struct snd_kcontrol *kcontrol, ...@@ -1740,7 +1743,8 @@ static int max98095_put_eq_enum(struct snd_kcontrol *kcontrol,
int fs, best, best_val, i; int fs, best, best_val, i;
int regmask, regsave; int regmask, regsave;
BUG_ON(channel > 1); if (WARN_ON(channel > 1))
return -EINVAL;
if (!pdata || !max98095->eq_textcnt) if (!pdata || !max98095->eq_textcnt)
return 0; return 0;
......
...@@ -56,7 +56,8 @@ static int tpa6130a2_i2c_read(int reg) ...@@ -56,7 +56,8 @@ static int tpa6130a2_i2c_read(int reg)
struct tpa6130a2_data *data; struct tpa6130a2_data *data;
int val; int val;
BUG_ON(tpa6130a2_client == NULL); if (WARN_ON(!tpa6130a2_client))
return -EINVAL;
data = i2c_get_clientdata(tpa6130a2_client); data = i2c_get_clientdata(tpa6130a2_client);
/* If powered off, return the cached value */ /* If powered off, return the cached value */
...@@ -78,7 +79,8 @@ static int tpa6130a2_i2c_write(int reg, u8 value) ...@@ -78,7 +79,8 @@ static int tpa6130a2_i2c_write(int reg, u8 value)
struct tpa6130a2_data *data; struct tpa6130a2_data *data;
int val = 0; int val = 0;
BUG_ON(tpa6130a2_client == NULL); if (WARN_ON(!tpa6130a2_client))
return -EINVAL;
data = i2c_get_clientdata(tpa6130a2_client); data = i2c_get_clientdata(tpa6130a2_client);
if (data->power_state) { if (data->power_state) {
...@@ -99,7 +101,8 @@ static u8 tpa6130a2_read(int reg) ...@@ -99,7 +101,8 @@ static u8 tpa6130a2_read(int reg)
{ {
struct tpa6130a2_data *data; struct tpa6130a2_data *data;
BUG_ON(tpa6130a2_client == NULL); if (WARN_ON(!tpa6130a2_client))
return 0;
data = i2c_get_clientdata(tpa6130a2_client); data = i2c_get_clientdata(tpa6130a2_client);
return data->regs[reg]; return data->regs[reg];
...@@ -110,7 +113,8 @@ static int tpa6130a2_initialize(void) ...@@ -110,7 +113,8 @@ static int tpa6130a2_initialize(void)
struct tpa6130a2_data *data; struct tpa6130a2_data *data;
int i, ret = 0; int i, ret = 0;
BUG_ON(tpa6130a2_client == NULL); if (WARN_ON(!tpa6130a2_client))
return -EINVAL;
data = i2c_get_clientdata(tpa6130a2_client); data = i2c_get_clientdata(tpa6130a2_client);
for (i = 1; i < TPA6130A2_REG_VERSION; i++) { for (i = 1; i < TPA6130A2_REG_VERSION; i++) {
...@@ -128,7 +132,8 @@ static int tpa6130a2_power(u8 power) ...@@ -128,7 +132,8 @@ static int tpa6130a2_power(u8 power)
u8 val; u8 val;
int ret = 0; int ret = 0;
BUG_ON(tpa6130a2_client == NULL); if (WARN_ON(!tpa6130a2_client))
return -EINVAL;
data = i2c_get_clientdata(tpa6130a2_client); data = i2c_get_clientdata(tpa6130a2_client);
mutex_lock(&data->mutex); mutex_lock(&data->mutex);
...@@ -194,7 +199,8 @@ static int tpa6130a2_get_volsw(struct snd_kcontrol *kcontrol, ...@@ -194,7 +199,8 @@ static int tpa6130a2_get_volsw(struct snd_kcontrol *kcontrol,
unsigned int mask = (1 << fls(max)) - 1; unsigned int mask = (1 << fls(max)) - 1;
unsigned int invert = mc->invert; unsigned int invert = mc->invert;
BUG_ON(tpa6130a2_client == NULL); if (WARN_ON(!tpa6130a2_client))
return -EINVAL;
data = i2c_get_clientdata(tpa6130a2_client); data = i2c_get_clientdata(tpa6130a2_client);
mutex_lock(&data->mutex); mutex_lock(&data->mutex);
...@@ -224,7 +230,8 @@ static int tpa6130a2_put_volsw(struct snd_kcontrol *kcontrol, ...@@ -224,7 +230,8 @@ static int tpa6130a2_put_volsw(struct snd_kcontrol *kcontrol,
unsigned int val = (ucontrol->value.integer.value[0] & mask); unsigned int val = (ucontrol->value.integer.value[0] & mask);
unsigned int val_reg; unsigned int val_reg;
BUG_ON(tpa6130a2_client == NULL); if (WARN_ON(!tpa6130a2_client))
return -EINVAL;
data = i2c_get_clientdata(tpa6130a2_client); data = i2c_get_clientdata(tpa6130a2_client);
if (invert) if (invert)
......
...@@ -372,7 +372,8 @@ static int wm0010_firmware_load(const char *name, struct snd_soc_codec *codec) ...@@ -372,7 +372,8 @@ static int wm0010_firmware_load(const char *name, struct snd_soc_codec *codec)
offset = 0; offset = 0;
dsp = inforec->dsp_target; dsp = inforec->dsp_target;
wm0010->boot_failed = false; wm0010->boot_failed = false;
BUG_ON(!list_empty(&xfer_list)); if (WARN_ON(!list_empty(&xfer_list)))
return -EINVAL;
init_completion(&done); init_completion(&done);
/* First record should be INFO */ /* First record should be INFO */
......
...@@ -137,7 +137,8 @@ static int wm2000_power_up(struct i2c_client *i2c, int analogue) ...@@ -137,7 +137,8 @@ static int wm2000_power_up(struct i2c_client *i2c, int analogue)
unsigned long rate; unsigned long rate;
int ret; int ret;
BUG_ON(wm2000->anc_mode != ANC_OFF); if (WARN_ON(wm2000->anc_mode != ANC_OFF))
return -EINVAL;
dev_dbg(&i2c->dev, "Beginning power up\n"); dev_dbg(&i2c->dev, "Beginning power up\n");
...@@ -277,7 +278,8 @@ static int wm2000_enter_bypass(struct i2c_client *i2c, int analogue) ...@@ -277,7 +278,8 @@ static int wm2000_enter_bypass(struct i2c_client *i2c, int analogue)
{ {
struct wm2000_priv *wm2000 = dev_get_drvdata(&i2c->dev); struct wm2000_priv *wm2000 = dev_get_drvdata(&i2c->dev);
BUG_ON(wm2000->anc_mode != ANC_ACTIVE); if (WARN_ON(wm2000->anc_mode != ANC_ACTIVE))
return -EINVAL;
if (analogue) { if (analogue) {
wm2000_write(i2c, WM2000_REG_SYS_MODE_CNTRL, wm2000_write(i2c, WM2000_REG_SYS_MODE_CNTRL,
...@@ -315,7 +317,8 @@ static int wm2000_exit_bypass(struct i2c_client *i2c, int analogue) ...@@ -315,7 +317,8 @@ static int wm2000_exit_bypass(struct i2c_client *i2c, int analogue)
{ {
struct wm2000_priv *wm2000 = dev_get_drvdata(&i2c->dev); struct wm2000_priv *wm2000 = dev_get_drvdata(&i2c->dev);
BUG_ON(wm2000->anc_mode != ANC_BYPASS); if (WARN_ON(wm2000->anc_mode != ANC_BYPASS))
return -EINVAL;
wm2000_write(i2c, WM2000_REG_SYS_CTL1, 0); wm2000_write(i2c, WM2000_REG_SYS_CTL1, 0);
...@@ -349,7 +352,8 @@ static int wm2000_enter_standby(struct i2c_client *i2c, int analogue) ...@@ -349,7 +352,8 @@ static int wm2000_enter_standby(struct i2c_client *i2c, int analogue)
{ {
struct wm2000_priv *wm2000 = dev_get_drvdata(&i2c->dev); struct wm2000_priv *wm2000 = dev_get_drvdata(&i2c->dev);
BUG_ON(wm2000->anc_mode != ANC_ACTIVE); if (WARN_ON(wm2000->anc_mode != ANC_ACTIVE))
return -EINVAL;
if (analogue) { if (analogue) {
wm2000_write(i2c, WM2000_REG_ANA_VMID_PD_TIME, 248 / 4); wm2000_write(i2c, WM2000_REG_ANA_VMID_PD_TIME, 248 / 4);
...@@ -392,7 +396,8 @@ static int wm2000_exit_standby(struct i2c_client *i2c, int analogue) ...@@ -392,7 +396,8 @@ static int wm2000_exit_standby(struct i2c_client *i2c, int analogue)
{ {
struct wm2000_priv *wm2000 = dev_get_drvdata(&i2c->dev); struct wm2000_priv *wm2000 = dev_get_drvdata(&i2c->dev);
BUG_ON(wm2000->anc_mode != ANC_STANDBY); if (WARN_ON(wm2000->anc_mode != ANC_STANDBY))
return -EINVAL;
wm2000_write(i2c, WM2000_REG_SYS_CTL1, 0); wm2000_write(i2c, WM2000_REG_SYS_CTL1, 0);
......
...@@ -1972,7 +1972,8 @@ static void wm5100_set_detect_mode(struct wm5100_priv *wm5100, int the_mode) ...@@ -1972,7 +1972,8 @@ static void wm5100_set_detect_mode(struct wm5100_priv *wm5100, int the_mode)
{ {
struct wm5100_jack_mode *mode = &wm5100->pdata.jack_modes[the_mode]; struct wm5100_jack_mode *mode = &wm5100->pdata.jack_modes[the_mode];
BUG_ON(the_mode >= ARRAY_SIZE(wm5100->pdata.jack_modes)); if (WARN_ON(the_mode >= ARRAY_SIZE(wm5100->pdata.jack_modes)))
return;
gpio_set_value_cansleep(wm5100->pdata.hp_pol, mode->hp_pol); gpio_set_value_cansleep(wm5100->pdata.hp_pol, mode->hp_pol);
regmap_update_bits(wm5100->regmap, WM5100_ACCESSORY_DETECT_MODE_1, regmap_update_bits(wm5100->regmap, WM5100_ACCESSORY_DETECT_MODE_1,
......
...@@ -274,7 +274,7 @@ static int pga_event(struct snd_soc_dapm_widget *w, ...@@ -274,7 +274,7 @@ static int pga_event(struct snd_soc_dapm_widget *w,
break; break;
default: default:
BUG(); WARN(1, "Invalid shift %d\n", w->shift);
return -1; return -1;
} }
......
...@@ -736,7 +736,7 @@ static int wm8580_set_sysclk(struct snd_soc_dai *dai, int clk_id, ...@@ -736,7 +736,7 @@ static int wm8580_set_sysclk(struct snd_soc_dai *dai, int clk_id,
break; break;
default: default:
BUG_ON("Unknown DAI driver ID\n"); WARN(1, "Unknown DAI driver ID\n");
return -EINVAL; return -EINVAL;
} }
......
...@@ -325,7 +325,8 @@ static int wm8776_set_sysclk(struct snd_soc_dai *dai, ...@@ -325,7 +325,8 @@ static int wm8776_set_sysclk(struct snd_soc_dai *dai,
struct snd_soc_codec *codec = dai->codec; struct snd_soc_codec *codec = dai->codec;
struct wm8776_priv *wm8776 = snd_soc_codec_get_drvdata(codec); struct wm8776_priv *wm8776 = snd_soc_codec_get_drvdata(codec);
BUG_ON(dai->driver->id >= ARRAY_SIZE(wm8776->sysclk)); if (WARN_ON(dai->driver->id >= ARRAY_SIZE(wm8776->sysclk)))
return -EINVAL;
wm8776->sysclk[dai->driver->id] = freq; wm8776->sysclk[dai->driver->id] = freq;
......
...@@ -279,7 +279,8 @@ static int wm8900_hp_event(struct snd_soc_dapm_widget *w, ...@@ -279,7 +279,8 @@ static int wm8900_hp_event(struct snd_soc_dapm_widget *w,
break; break;
default: default:
BUG(); WARN(1, "Invalid event %d\n", event);
break;
} }
return 0; return 0;
...@@ -691,7 +692,8 @@ static int fll_factors(struct _fll_div *fll_div, unsigned int Fref, ...@@ -691,7 +692,8 @@ static int fll_factors(struct _fll_div *fll_div, unsigned int Fref,
unsigned int K, Ndiv, Nmod, target; unsigned int K, Ndiv, Nmod, target;
unsigned int div; unsigned int div;
BUG_ON(!Fout); if (WARN_ON(!Fout))
return -EINVAL;
/* The FLL must run at 90-100MHz which is then scaled down to /* The FLL must run at 90-100MHz which is then scaled down to
* the output value by FLLCLK_DIV. */ * the output value by FLLCLK_DIV. */
...@@ -742,8 +744,9 @@ static int fll_factors(struct _fll_div *fll_div, unsigned int Fref, ...@@ -742,8 +744,9 @@ static int fll_factors(struct _fll_div *fll_div, unsigned int Fref,
/* Move down to proper range now rounding is done */ /* Move down to proper range now rounding is done */
fll_div->k = K / 10; fll_div->k = K / 10;
BUG_ON(target != Fout * (fll_div->fllclk_div << 2)); if (WARN_ON(target != Fout * (fll_div->fllclk_div << 2)) ||
BUG_ON(!K && target != Fref * fll_div->fll_ratio * fll_div->n); WARN_ON(!K && target != Fref * fll_div->fll_ratio * fll_div->n))
return -EINVAL;
return 0; return 0;
} }
......
...@@ -658,7 +658,8 @@ SOC_SINGLE_TLV("EQ5 Volume", WM8904_EQ6, 0, 24, 0, eq_tlv), ...@@ -658,7 +658,8 @@ SOC_SINGLE_TLV("EQ5 Volume", WM8904_EQ6, 0, 24, 0, eq_tlv),
static int cp_event(struct snd_soc_dapm_widget *w, static int cp_event(struct snd_soc_dapm_widget *w,
struct snd_kcontrol *kcontrol, int event) struct snd_kcontrol *kcontrol, int event)
{ {
BUG_ON(event != SND_SOC_DAPM_POST_PMU); if (WARN_ON(event != SND_SOC_DAPM_POST_PMU))
return -EINVAL;
/* Maximum startup time */ /* Maximum startup time */
udelay(500); udelay(500);
...@@ -740,7 +741,7 @@ static int out_pga_event(struct snd_soc_dapm_widget *w, ...@@ -740,7 +741,7 @@ static int out_pga_event(struct snd_soc_dapm_widget *w,
dcs_r = 3; dcs_r = 3;
break; break;
default: default:
BUG(); WARN(1, "Invalid reg %d\n", reg);
return -EINVAL; return -EINVAL;
} }
......
...@@ -348,7 +348,7 @@ static void wm8958_dsp_apply(struct snd_soc_codec *codec, int path, int start) ...@@ -348,7 +348,7 @@ static void wm8958_dsp_apply(struct snd_soc_codec *codec, int path, int start)
aif = 1; aif = 1;
break; break;
default: default:
BUG(); WARN(1, "Invalid path %d\n", path);
return; return;
} }
......
...@@ -1845,7 +1845,7 @@ static int cp_event(struct snd_soc_dapm_widget *w, ...@@ -1845,7 +1845,7 @@ static int cp_event(struct snd_soc_dapm_widget *w,
break; break;
default: default:
BUG(); WARN(1, "Invalid event %d\n", event);
return -EINVAL; return -EINVAL;
} }
...@@ -1937,7 +1937,7 @@ static int hp_event(struct snd_soc_dapm_widget *w, ...@@ -1937,7 +1937,7 @@ static int hp_event(struct snd_soc_dapm_widget *w,
break; break;
default: default:
BUG(); WARN(1, "Invalid event %d\n", event);
return -EINVAL; return -EINVAL;
} }
...@@ -1966,7 +1966,7 @@ static int out_pga_event(struct snd_soc_dapm_widget *w, ...@@ -1966,7 +1966,7 @@ static int out_pga_event(struct snd_soc_dapm_widget *w,
reg = WM8962_SPKOUTL_VOLUME; reg = WM8962_SPKOUTL_VOLUME;
break; break;
default: default:
BUG(); WARN(1, "Invalid shift %d\n", w->shift);
return -EINVAL; return -EINVAL;
} }
...@@ -1974,7 +1974,7 @@ static int out_pga_event(struct snd_soc_dapm_widget *w, ...@@ -1974,7 +1974,7 @@ static int out_pga_event(struct snd_soc_dapm_widget *w,
case SND_SOC_DAPM_POST_PMU: case SND_SOC_DAPM_POST_PMU:
return snd_soc_write(codec, reg, snd_soc_read(codec, reg)); return snd_soc_write(codec, reg, snd_soc_read(codec, reg));
default: default:
BUG(); WARN(1, "Invalid event %d\n", event);
return -EINVAL; return -EINVAL;
} }
} }
...@@ -1997,7 +1997,7 @@ static int dsp2_event(struct snd_soc_dapm_widget *w, ...@@ -1997,7 +1997,7 @@ static int dsp2_event(struct snd_soc_dapm_widget *w,
break; break;
default: default:
BUG(); WARN(1, "Invalid event %d\n", event);
return -EINVAL; return -EINVAL;
} }
......
...@@ -608,7 +608,7 @@ static int bg_event(struct snd_soc_dapm_widget *w, ...@@ -608,7 +608,7 @@ static int bg_event(struct snd_soc_dapm_widget *w,
wm8996_bg_disable(codec); wm8996_bg_disable(codec);
break; break;
default: default:
BUG(); WARN(1, "Invalid event %d\n", event);
ret = -EINVAL; ret = -EINVAL;
} }
...@@ -625,7 +625,7 @@ static int cp_event(struct snd_soc_dapm_widget *w, ...@@ -625,7 +625,7 @@ static int cp_event(struct snd_soc_dapm_widget *w,
msleep(5); msleep(5);
break; break;
default: default:
BUG(); WARN(1, "Invalid event %d\n", event);
ret = -EINVAL; ret = -EINVAL;
} }
...@@ -646,7 +646,7 @@ static int rmv_short_event(struct snd_soc_dapm_widget *w, ...@@ -646,7 +646,7 @@ static int rmv_short_event(struct snd_soc_dapm_widget *w,
wm8996->hpout_pending |= w->shift; wm8996->hpout_pending |= w->shift;
break; break;
default: default:
BUG(); WARN(1, "Invalid event %d\n", event);
return -EINVAL; return -EINVAL;
} }
...@@ -767,7 +767,7 @@ static int dcs_start(struct snd_soc_dapm_widget *w, ...@@ -767,7 +767,7 @@ static int dcs_start(struct snd_soc_dapm_widget *w,
wm8996->dcs_pending |= 1 << w->shift; wm8996->dcs_pending |= 1 << w->shift;
break; break;
default: default:
BUG(); WARN(1, "Invalid event %d\n", event);
return -EINVAL; return -EINVAL;
} }
...@@ -1656,7 +1656,7 @@ static int wm8996_set_fmt(struct snd_soc_dai *dai, unsigned int fmt) ...@@ -1656,7 +1656,7 @@ static int wm8996_set_fmt(struct snd_soc_dai *dai, unsigned int fmt)
lrclk_rx_reg = WM8996_AIF2_RX_LRCLK_2; lrclk_rx_reg = WM8996_AIF2_RX_LRCLK_2;
break; break;
default: default:
BUG(); WARN(1, "Invalid dai id %d\n", dai->id);
return -EINVAL; return -EINVAL;
} }
...@@ -1768,7 +1768,7 @@ static int wm8996_hw_params(struct snd_pcm_substream *substream, ...@@ -1768,7 +1768,7 @@ static int wm8996_hw_params(struct snd_pcm_substream *substream,
dsp_shift = WM8996_DSP2_DIV_SHIFT; dsp_shift = WM8996_DSP2_DIV_SHIFT;
break; break;
default: default:
BUG(); WARN(1, "Invalid dai id %d\n", dai->id);
return -EINVAL; return -EINVAL;
} }
......
...@@ -221,7 +221,8 @@ static int wm9713_voice_shutdown(struct snd_soc_dapm_widget *w, ...@@ -221,7 +221,8 @@ static int wm9713_voice_shutdown(struct snd_soc_dapm_widget *w,
struct snd_soc_codec *codec = w->codec; struct snd_soc_codec *codec = w->codec;
u16 status, rate; u16 status, rate;
BUG_ON(event != SND_SOC_DAPM_PRE_PMD); if (WARN_ON(event != SND_SOC_DAPM_PRE_PMD))
return -EINVAL;
/* Gracefully shut down the voice interface. */ /* Gracefully shut down the voice interface. */
status = ac97_read(codec, AC97_EXTENDED_MID) | 0x1000; status = ac97_read(codec, AC97_EXTENDED_MID) | 0x1000;
......
...@@ -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;
} }
} }
...@@ -605,7 +607,7 @@ static int wm_adsp_load(struct wm_adsp *dsp) ...@@ -605,7 +607,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;
} }
...@@ -645,27 +647,22 @@ static int wm_adsp_load(struct wm_adsp *dsp) ...@@ -645,27 +647,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;
...@@ -905,10 +902,8 @@ static int wm_adsp_setup_algs(struct wm_adsp *dsp) ...@@ -905,10 +902,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:
...@@ -1002,7 +997,7 @@ static int wm_adsp_setup_algs(struct wm_adsp *dsp) ...@@ -1002,7 +997,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;
} }
......
...@@ -611,7 +611,7 @@ static int earpiece_event(struct snd_soc_dapm_widget *w, ...@@ -611,7 +611,7 @@ static int earpiece_event(struct snd_soc_dapm_widget *w,
break; break;
default: default:
BUG(); WARN(1, "Invalid event %d\n", event);
break; break;
} }
......
...@@ -40,7 +40,8 @@ static DEFINE_MUTEX(sst_lock); ...@@ -40,7 +40,8 @@ static DEFINE_MUTEX(sst_lock);
int sst_register_dsp(struct sst_device *dev) int sst_register_dsp(struct sst_device *dev)
{ {
BUG_ON(!dev); if (WARN_ON(!dev))
return -EINVAL;
if (!try_module_get(dev->dev->driver->owner)) if (!try_module_get(dev->dev->driver->owner))
return -ENODEV; return -ENODEV;
mutex_lock(&sst_lock); mutex_lock(&sst_lock);
...@@ -59,7 +60,8 @@ EXPORT_SYMBOL_GPL(sst_register_dsp); ...@@ -59,7 +60,8 @@ EXPORT_SYMBOL_GPL(sst_register_dsp);
int sst_unregister_dsp(struct sst_device *dev) int sst_unregister_dsp(struct sst_device *dev)
{ {
BUG_ON(!dev); if (WARN_ON(!dev))
return -EINVAL;
if (dev != sst) if (dev != sst)
return -EINVAL; return -EINVAL;
......
...@@ -344,8 +344,11 @@ static int __init n810_soc_init(void) ...@@ -344,8 +344,11 @@ static int __init n810_soc_init(void)
clk_set_parent(sys_clkout2_src, func96m_clk); clk_set_parent(sys_clkout2_src, func96m_clk);
clk_set_rate(sys_clkout2, 12000000); clk_set_rate(sys_clkout2, 12000000);
BUG_ON((gpio_request(N810_HEADSET_AMP_GPIO, "hs_amp") < 0) || if (WARN_ON((gpio_request(N810_HEADSET_AMP_GPIO, "hs_amp") < 0) ||
(gpio_request(N810_SPEAKER_AMP_GPIO, "spk_amp") < 0)); (gpio_request(N810_SPEAKER_AMP_GPIO, "spk_amp") < 0))) {
err = -EINVAL;
goto err4;
}
gpio_direction_output(N810_HEADSET_AMP_GPIO, 0); gpio_direction_output(N810_HEADSET_AMP_GPIO, 0);
gpio_direction_output(N810_SPEAKER_AMP_GPIO, 0); gpio_direction_output(N810_SPEAKER_AMP_GPIO, 0);
......
...@@ -165,7 +165,8 @@ static int pxa2xx_i2s_hw_params(struct snd_pcm_substream *substream, ...@@ -165,7 +165,8 @@ static int pxa2xx_i2s_hw_params(struct snd_pcm_substream *substream,
{ {
struct snd_dmaengine_dai_dma_data *dma_data; struct snd_dmaengine_dai_dma_data *dma_data;
BUG_ON(IS_ERR(clk_i2s)); if (WARN_ON(IS_ERR(clk_i2s)))
return -EINVAL;
clk_prepare_enable(clk_i2s); clk_prepare_enable(clk_i2s);
clk_ena = 1; clk_ena = 1;
pxa_i2s_wait(); pxa_i2s_wait();
......
...@@ -90,7 +90,8 @@ static void s6000_pcm_enqueue_dma(struct snd_pcm_substream *substream) ...@@ -90,7 +90,8 @@ static void s6000_pcm_enqueue_dma(struct snd_pcm_substream *substream)
return; return;
} }
BUG_ON(period_size & 15); if (WARN_ON(period_size & 15))
return;
s6dmac_put_fifo(DMA_MASK_DMAC(channel), DMA_INDEX_CHNL(channel), s6dmac_put_fifo(DMA_MASK_DMAC(channel), DMA_INDEX_CHNL(channel),
src, dst, period_size); src, dst, period_size);
......
...@@ -198,7 +198,8 @@ static struct rsnd_mod_ops rsnd_scu_ops = { ...@@ -198,7 +198,8 @@ static struct rsnd_mod_ops rsnd_scu_ops = {
struct rsnd_mod *rsnd_scu_mod_get(struct rsnd_priv *priv, int id) struct rsnd_mod *rsnd_scu_mod_get(struct rsnd_priv *priv, int id)
{ {
BUG_ON(id < 0 || id >= rsnd_scu_nr(priv)); if (WARN_ON(id < 0 || id >= rsnd_scu_nr(priv)))
id = 0;
return &((struct rsnd_scu *)(priv->scu) + id)->mod; return &((struct rsnd_scu *)(priv->scu) + id)->mod;
} }
......
...@@ -611,7 +611,8 @@ struct rsnd_mod *rsnd_ssi_mod_get_frm_dai(struct rsnd_priv *priv, ...@@ -611,7 +611,8 @@ struct rsnd_mod *rsnd_ssi_mod_get_frm_dai(struct rsnd_priv *priv,
struct rsnd_mod *rsnd_ssi_mod_get(struct rsnd_priv *priv, int id) struct rsnd_mod *rsnd_ssi_mod_get(struct rsnd_priv *priv, int id)
{ {
BUG_ON(id < 0 || id >= rsnd_ssi_nr(priv)); if (WARN_ON(id < 0 || id >= rsnd_ssi_nr(priv)))
id = 0;
return &(((struct rsnd_ssiu *)(priv->ssiu))->ssi + id)->mod; return &(((struct rsnd_ssiu *)(priv->ssiu))->ssi + id)->mod;
} }
......
...@@ -543,7 +543,8 @@ static void siu_dai_shutdown(struct snd_pcm_substream *substream, ...@@ -543,7 +543,8 @@ static void siu_dai_shutdown(struct snd_pcm_substream *substream,
/* Stop the siu if the other stream is not using it */ /* Stop the siu if the other stream is not using it */
if (!port_info->play_cap) { if (!port_info->play_cap) {
/* during stmread or stmwrite ? */ /* during stmread or stmwrite ? */
BUG_ON(port_info->playback.rw_flg || port_info->capture.rw_flg); if (WARN_ON(port_info->playback.rw_flg || port_info->capture.rw_flg))
return;
siu_dai_spbstop(port_info); siu_dai_spbstop(port_info);
siu_dai_stop(port_info); siu_dai_stop(port_info);
} }
......
...@@ -36,7 +36,8 @@ static bool snd_soc_set_cache_val(void *base, unsigned int idx, ...@@ -36,7 +36,8 @@ static bool snd_soc_set_cache_val(void *base, unsigned int idx,
break; break;
} }
default: default:
BUG(); WARN(1, "Invalid word_size %d\n", word_size);
break;
} }
return false; return false;
} }
...@@ -57,7 +58,8 @@ static unsigned int snd_soc_get_cache_val(const void *base, unsigned int idx, ...@@ -57,7 +58,8 @@ static unsigned int snd_soc_get_cache_val(const void *base, unsigned int idx,
return cache[idx]; return cache[idx];
} }
default: default:
BUG(); WARN(1, "Invalid word_size %d\n", word_size);
break;
} }
/* unreachable */ /* unreachable */
return -1; return -1;
......
...@@ -1416,7 +1416,7 @@ static void dapm_seq_check_event(struct snd_soc_card *card, ...@@ -1416,7 +1416,7 @@ static void dapm_seq_check_event(struct snd_soc_card *card,
power = 0; power = 0;
break; break;
default: default:
BUG(); WARN(1, "Unknown event %d\n", event);
return; return;
} }
...@@ -1448,7 +1448,7 @@ static void dapm_seq_run_coalesced(struct snd_soc_card *card, ...@@ -1448,7 +1448,7 @@ static void dapm_seq_run_coalesced(struct snd_soc_card *card,
power_list)->reg; power_list)->reg;
list_for_each_entry(w, pending, power_list) { list_for_each_entry(w, pending, power_list) {
BUG_ON(reg != w->reg); WARN_ON(reg != w->reg);
w->power = w->new_power; w->power = w->new_power;
mask |= w->mask << w->shift; mask |= w->mask << w->shift;
...@@ -2006,7 +2006,7 @@ static ssize_t dapm_bias_read_file(struct file *file, char __user *user_buf, ...@@ -2006,7 +2006,7 @@ static ssize_t dapm_bias_read_file(struct file *file, char __user *user_buf,
level = "Off\n"; level = "Off\n";
break; break;
default: default:
BUG(); WARN(1, "Unknown bias_level %d\n", dapm->bias_level);
level = "Unknown\n"; level = "Unknown\n";
break; break;
} }
...@@ -3339,8 +3339,9 @@ static int snd_soc_dai_link_event(struct snd_soc_dapm_widget *w, ...@@ -3339,8 +3339,9 @@ static int snd_soc_dai_link_event(struct snd_soc_dapm_widget *w,
u64 fmt; u64 fmt;
int ret; int ret;
BUG_ON(!config); if (WARN_ON(!config) ||
BUG_ON(list_empty(&w->sources) || list_empty(&w->sinks)); WARN_ON(list_empty(&w->sources) || list_empty(&w->sinks)))
return -EINVAL;
/* We only support a single source and sink, pick the first */ /* We only support a single source and sink, pick the first */
source_p = list_first_entry(&w->sources, struct snd_soc_dapm_path, source_p = list_first_entry(&w->sources, struct snd_soc_dapm_path,
...@@ -3348,9 +3349,10 @@ static int snd_soc_dai_link_event(struct snd_soc_dapm_widget *w, ...@@ -3348,9 +3349,10 @@ static int snd_soc_dai_link_event(struct snd_soc_dapm_widget *w,
sink_p = list_first_entry(&w->sinks, struct snd_soc_dapm_path, sink_p = list_first_entry(&w->sinks, struct snd_soc_dapm_path,
list_source); list_source);
BUG_ON(!source_p || !sink_p); if (WARN_ON(!source_p || !sink_p) ||
BUG_ON(!sink_p->source || !source_p->sink); WARN_ON(!sink_p->source || !source_p->sink) ||
BUG_ON(!source_p->source || !sink_p->sink); WARN_ON(!source_p->source || !sink_p->sink))
return -EINVAL;
source = source_p->source->priv; source = source_p->source->priv;
sink = sink_p->sink->priv; sink = sink_p->sink->priv;
...@@ -3426,7 +3428,7 @@ static int snd_soc_dai_link_event(struct snd_soc_dapm_widget *w, ...@@ -3426,7 +3428,7 @@ static int snd_soc_dai_link_event(struct snd_soc_dapm_widget *w,
break; break;
default: default:
BUG(); WARN(1, "Unknown event %d\n", event);
return -EINVAL; return -EINVAL;
} }
......
...@@ -115,8 +115,8 @@ static void txx9aclc_dma_complete(void *arg) ...@@ -115,8 +115,8 @@ static void txx9aclc_dma_complete(void *arg)
spin_lock_irqsave(&dmadata->dma_lock, flags); spin_lock_irqsave(&dmadata->dma_lock, flags);
if (dmadata->frag_count >= 0) { if (dmadata->frag_count >= 0) {
dmadata->dmacount--; dmadata->dmacount--;
BUG_ON(dmadata->dmacount < 0); if (!WARN_ON(dmadata->dmacount < 0))
tasklet_schedule(&dmadata->tasklet); tasklet_schedule(&dmadata->tasklet);
} }
spin_unlock_irqrestore(&dmadata->dma_lock, flags); spin_unlock_irqrestore(&dmadata->dma_lock, flags);
} }
...@@ -181,7 +181,10 @@ static void txx9aclc_dma_tasklet(unsigned long data) ...@@ -181,7 +181,10 @@ static void txx9aclc_dma_tasklet(unsigned long data)
spin_unlock_irqrestore(&dmadata->dma_lock, flags); spin_unlock_irqrestore(&dmadata->dma_lock, flags);
return; return;
} }
BUG_ON(dmadata->dmacount >= NR_DMA_CHAIN); if (WARN_ON(dmadata->dmacount >= NR_DMA_CHAIN)) {
spin_unlock_irqrestore(&dmadata->dma_lock, flags);
return;
}
while (dmadata->dmacount < NR_DMA_CHAIN) { while (dmadata->dmacount < NR_DMA_CHAIN) {
dmadata->dmacount++; dmadata->dmacount++;
spin_unlock_irqrestore(&dmadata->dma_lock, flags); spin_unlock_irqrestore(&dmadata->dma_lock, flags);
......
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