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);
 }