| From 679d4975b9babdd83189da8b5f5d90f1a60a84d0 Mon Sep 17 00:00:00 2001 |
| From: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> |
| Date: Fri, 3 Feb 2012 00:50:35 -0800 |
| Subject: ASoC: fsi: tidyup: fsi_stream_xx() functions were gathered |
| |
| This patch gathered fsi_stream_xxx() functions in order to make it readable. |
| |
| Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> |
| Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> |
| (cherry picked from commit 4e62d84d9da5190c303d6408180fbfee414d25bc) |
| |
| Signed-off-by: Simon Horman <horms@verge.net.au> |
| --- |
| sound/soc/sh/fsi.c | 115 ++++++++++++++++++++++++++--------------------------- |
| 1 file changed, 57 insertions(+), 58 deletions(-) |
| |
| diff --git a/sound/soc/sh/fsi.c b/sound/soc/sh/fsi.c |
| index 0d78740..162416e 100644 |
| --- a/sound/soc/sh/fsi.c |
| +++ b/sound/soc/sh/fsi.c |
| @@ -338,22 +338,6 @@ static u32 fsi_get_info_flags(struct fsi_priv *fsi) |
| master->info->portb_flags; |
| } |
| |
| -static inline int fsi_stream_is_play(int stream) |
| -{ |
| - return stream == SNDRV_PCM_STREAM_PLAYBACK; |
| -} |
| - |
| -static inline int fsi_is_play(struct snd_pcm_substream *substream) |
| -{ |
| - return fsi_stream_is_play(substream->stream); |
| -} |
| - |
| -static inline struct fsi_stream *fsi_get_stream(struct fsi_priv *fsi, |
| - int is_play) |
| -{ |
| - return is_play ? &fsi->playback : &fsi->capture; |
| -} |
| - |
| static u32 fsi_get_port_shift(struct fsi_priv *fsi, int is_play) |
| { |
| int is_porta = fsi_is_port_a(fsi); |
| @@ -377,10 +361,60 @@ static int fsi_sample2frame(struct fsi_priv *fsi, int samples) |
| return samples / fsi->chan_num; |
| } |
| |
| +static int fsi_get_current_fifo_samples(struct fsi_priv *fsi, int is_play) |
| +{ |
| + u32 status; |
| + int frames; |
| + |
| + status = is_play ? |
| + fsi_reg_read(fsi, DOFF_ST) : |
| + fsi_reg_read(fsi, DIFF_ST); |
| + |
| + frames = 0x1ff & (status >> 8); |
| + |
| + return fsi_frame2sample(fsi, frames); |
| +} |
| + |
| +static void fsi_count_fifo_err(struct fsi_priv *fsi) |
| +{ |
| + u32 ostatus = fsi_reg_read(fsi, DOFF_ST); |
| + u32 istatus = fsi_reg_read(fsi, DIFF_ST); |
| + |
| + if (ostatus & ERR_OVER) |
| + fsi->playback.oerr_num++; |
| + |
| + if (ostatus & ERR_UNDER) |
| + fsi->playback.uerr_num++; |
| + |
| + if (istatus & ERR_OVER) |
| + fsi->capture.oerr_num++; |
| + |
| + if (istatus & ERR_UNDER) |
| + fsi->capture.uerr_num++; |
| + |
| + fsi_reg_write(fsi, DOFF_ST, 0); |
| + fsi_reg_write(fsi, DIFF_ST, 0); |
| +} |
| + |
| +/* |
| + * fsi_stream_xx() function |
| + */ |
| +#define fsi_is_play(substream) fsi_stream_is_play(substream->stream) |
| +static inline int fsi_stream_is_play(int stream) |
| +{ |
| + return stream == SNDRV_PCM_STREAM_PLAYBACK; |
| +} |
| + |
| +static inline struct fsi_stream *fsi_stream_get(struct fsi_priv *fsi, |
| + int is_play) |
| +{ |
| + return is_play ? &fsi->playback : &fsi->capture; |
| +} |
| + |
| static int fsi_stream_is_working(struct fsi_priv *fsi, |
| int is_play) |
| { |
| - struct fsi_stream *io = fsi_get_stream(fsi, is_play); |
| + struct fsi_stream *io = fsi_stream_get(fsi, is_play); |
| struct fsi_master *master = fsi_get_master(fsi); |
| unsigned long flags; |
| int ret; |
| @@ -396,7 +430,7 @@ static void fsi_stream_push(struct fsi_priv *fsi, |
| int is_play, |
| struct snd_pcm_substream *substream) |
| { |
| - struct fsi_stream *io = fsi_get_stream(fsi, is_play); |
| + struct fsi_stream *io = fsi_stream_get(fsi, is_play); |
| struct snd_pcm_runtime *runtime = substream->runtime; |
| struct fsi_master *master = fsi_get_master(fsi); |
| unsigned long flags; |
| @@ -415,7 +449,7 @@ static void fsi_stream_push(struct fsi_priv *fsi, |
| |
| static void fsi_stream_pop(struct fsi_priv *fsi, int is_play) |
| { |
| - struct fsi_stream *io = fsi_get_stream(fsi, is_play); |
| + struct fsi_stream *io = fsi_stream_get(fsi, is_play); |
| struct snd_soc_dai *dai = fsi_get_dai(io->substream); |
| struct fsi_master *master = fsi_get_master(fsi); |
| unsigned long flags; |
| @@ -439,41 +473,6 @@ static void fsi_stream_pop(struct fsi_priv *fsi, int is_play) |
| spin_unlock_irqrestore(&master->lock, flags); |
| } |
| |
| -static int fsi_get_current_fifo_samples(struct fsi_priv *fsi, int is_play) |
| -{ |
| - u32 status; |
| - int frames; |
| - |
| - status = is_play ? |
| - fsi_reg_read(fsi, DOFF_ST) : |
| - fsi_reg_read(fsi, DIFF_ST); |
| - |
| - frames = 0x1ff & (status >> 8); |
| - |
| - return fsi_frame2sample(fsi, frames); |
| -} |
| - |
| -static void fsi_count_fifo_err(struct fsi_priv *fsi) |
| -{ |
| - u32 ostatus = fsi_reg_read(fsi, DOFF_ST); |
| - u32 istatus = fsi_reg_read(fsi, DIFF_ST); |
| - |
| - if (ostatus & ERR_OVER) |
| - fsi->playback.oerr_num++; |
| - |
| - if (ostatus & ERR_UNDER) |
| - fsi->playback.uerr_num++; |
| - |
| - if (istatus & ERR_OVER) |
| - fsi->capture.oerr_num++; |
| - |
| - if (istatus & ERR_UNDER) |
| - fsi->capture.uerr_num++; |
| - |
| - fsi_reg_write(fsi, DOFF_ST, 0); |
| - fsi_reg_write(fsi, DIFF_ST, 0); |
| -} |
| - |
| /* |
| * dma function |
| */ |
| @@ -481,7 +480,7 @@ static void fsi_count_fifo_err(struct fsi_priv *fsi) |
| static u8 *fsi_dma_get_area(struct fsi_priv *fsi, int stream) |
| { |
| int is_play = fsi_stream_is_play(stream); |
| - struct fsi_stream *io = fsi_get_stream(fsi, is_play); |
| + struct fsi_stream *io = fsi_stream_get(fsi, is_play); |
| struct snd_pcm_runtime *runtime = io->substream->runtime; |
| |
| return runtime->dma_area + |
| @@ -698,7 +697,7 @@ static void fsi_fifo_init(struct fsi_priv *fsi, |
| struct device *dev) |
| { |
| struct fsi_master *master = fsi_get_master(fsi); |
| - struct fsi_stream *io = fsi_get_stream(fsi, is_play); |
| + struct fsi_stream *io = fsi_stream_get(fsi, is_play); |
| u32 shift, i; |
| int frame_capa; |
| |
| @@ -753,7 +752,7 @@ static int fsi_fifo_data_ctrl(struct fsi_priv *fsi, int stream) |
| struct snd_pcm_runtime *runtime; |
| struct snd_pcm_substream *substream = NULL; |
| int is_play = fsi_stream_is_play(stream); |
| - struct fsi_stream *io = fsi_get_stream(fsi, is_play); |
| + struct fsi_stream *io = fsi_stream_get(fsi, is_play); |
| int sample_residues; |
| int samples; |
| int samples_max; |
| @@ -1150,7 +1149,7 @@ static int fsi_hw_free(struct snd_pcm_substream *substream) |
| static snd_pcm_uframes_t fsi_pointer(struct snd_pcm_substream *substream) |
| { |
| struct fsi_priv *fsi = fsi_get_priv(substream); |
| - struct fsi_stream *io = fsi_get_stream(fsi, fsi_is_play(substream)); |
| + struct fsi_stream *io = fsi_stream_get(fsi, fsi_is_play(substream)); |
| int samples_pos = io->buff_sample_pos - 1; |
| |
| if (samples_pos < 0) |
| -- |
| 1.7.10.2.565.gbd578b5 |
| |