rsnd_mod_bset(mod, SCU_SYS_INT_EN1, sys_int_mask, sys_int_val);
}
-static void rsnd_src_error_clear(struct rsnd_mod *mod)
+static void rsnd_src_status_clear(struct rsnd_mod *mod)
{
u32 val = OUF_SRC(rsnd_mod_id(mod));
rsnd_mod_bset(mod, SCU_SYS_STATUS1, val, val);
}
-static bool rsnd_src_error_record(struct rsnd_mod *mod)
+static bool rsnd_src_record_error(struct rsnd_mod *mod)
{
struct rsnd_src *src = rsnd_mod_to_src(mod);
u32 val0, val1;
ret = true;
}
- /* clear error static */
- rsnd_src_error_clear(mod);
-
return ret;
}
rsnd_src_set_convert_rate(io, mod);
- rsnd_src_error_clear(mod);
+ rsnd_src_status_clear(mod);
rsnd_src_irq_enable(mod);
if (!rsnd_io_is_working(io))
goto rsnd_src_interrupt_out;
- if (rsnd_src_error_record(mod)) {
+ if (rsnd_src_record_error(mod)) {
dev_dbg(dev, "%s[%d] restart\n",
rsnd_mod_name(mod), rsnd_mod_id(mod));
rsnd_mod_name(mod), rsnd_mod_id(mod));
}
+ rsnd_src_status_clear(mod);
rsnd_src_interrupt_out:
+
spin_unlock(&priv->lock);
}