From: Iliyan Malchev Date: Fri, 15 Oct 2010 21:13:48 +0000 (-0700) Subject: [ARM] tegra_i2s_audio: add a few overlooked checks X-Git-Tag: firefly_0821_release~9833^2~152^2~6 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=810694cfa9c90b1fe4bee572ad11159a43826f23;p=firefly-linux-kernel-4.4.55.git [ARM] tegra_i2s_audio: add a few overlooked checks Signed-off-by: Iliyan Malchev --- diff --git a/arch/arm/mach-tegra/tegra_i2s_audio.c b/arch/arm/mach-tegra/tegra_i2s_audio.c index 64ba1be2ab1f..48b1bec21f67 100644 --- a/arch/arm/mach-tegra/tegra_i2s_audio.c +++ b/arch/arm/mach-tegra/tegra_i2s_audio.c @@ -947,7 +947,7 @@ static int resume_dma_recording(struct audio_stream *ais) if (ais->dma_has_it) { pr_debug("%s: recording already in progress\n", __func__); - return 0; + return -EALREADY; } /* Don't send all the data yet. */ @@ -1035,7 +1035,7 @@ static int start_pio_playback(struct audio_stream *aos) if (i2s_is_fifo_enabled(ads->i2s_base, I2S_FIFO_TX)) { pr_debug("%s: playback is already in progress\n", __func__); - return 0; + return -EALREADY; } pr_debug("%s\n", __func__); @@ -1080,7 +1080,7 @@ static int start_pio_recording(struct audio_stream *ais) if (i2s_is_fifo_enabled(ads->i2s_base, I2S_FIFO_RX)) { pr_debug("%s: already started\n", __func__); - return 0; + return -EALREADY; } pr_debug("%s: start\n", __func__); @@ -1285,7 +1285,7 @@ again: } rc = start_playback(&ads->out); - if (rc < 0) { + if (rc < 0 && rc != -EALREADY) { pr_err("%s: could not start playback: %d\n", __func__, rc); goto done; }