Commit 83344027 authored by Kuninori Morimoto's avatar Kuninori Morimoto Committed by Mark Brown

ASoC: fsi: add .init/.quit handler support

This is preparation for DMAEngine support
Signed-off-by: default avatarKuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: default avatarMark Brown <broonie@opensource.wolfsonmicro.com>
parent fec691e7
...@@ -201,6 +201,8 @@ struct fsi_priv { ...@@ -201,6 +201,8 @@ struct fsi_priv {
}; };
struct fsi_stream_handler { struct fsi_stream_handler {
int (*init)(struct fsi_priv *fsi, struct fsi_stream *io);
int (*quit)(struct fsi_priv *fsi, struct fsi_stream *io);
int (*probe)(struct fsi_priv *fsi, struct fsi_stream *io); int (*probe)(struct fsi_priv *fsi, struct fsi_stream *io);
int (*transfer)(struct fsi_priv *fsi, struct fsi_stream *io); int (*transfer)(struct fsi_priv *fsi, struct fsi_stream *io);
int (*remove)(struct fsi_priv *fsi, struct fsi_stream *io); int (*remove)(struct fsi_priv *fsi, struct fsi_stream *io);
...@@ -474,6 +476,7 @@ static void fsi_stream_init(struct fsi_priv *fsi, ...@@ -474,6 +476,7 @@ static void fsi_stream_init(struct fsi_priv *fsi,
io->sample_width = samples_to_bytes(runtime, 1); io->sample_width = samples_to_bytes(runtime, 1);
io->oerr_num = -1; /* ignore 1st err */ io->oerr_num = -1; /* ignore 1st err */
io->uerr_num = -1; /* ignore 1st err */ io->uerr_num = -1; /* ignore 1st err */
fsi_stream_handler_call(io, init, fsi, io);
spin_unlock_irqrestore(&master->lock, flags); spin_unlock_irqrestore(&master->lock, flags);
} }
...@@ -491,6 +494,7 @@ static void fsi_stream_quit(struct fsi_priv *fsi, struct fsi_stream *io) ...@@ -491,6 +494,7 @@ static void fsi_stream_quit(struct fsi_priv *fsi, struct fsi_stream *io)
if (io->uerr_num > 0) if (io->uerr_num > 0)
dev_err(dai->dev, "under_run = %d\n", io->uerr_num); dev_err(dai->dev, "under_run = %d\n", io->uerr_num);
fsi_stream_handler_call(io, quit, fsi, io);
io->substream = NULL; io->substream = NULL;
io->buff_sample_capa = 0; io->buff_sample_capa = 0;
io->buff_sample_pos = 0; io->buff_sample_pos = 0;
......
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