[ARM] tegra_i2s_audio: add more elaborate error counts

This patch replaces the error counter with two separate error counters, one for
late dma callbacks, and another for overruns (during recording) or underruns
(during playback).  The ioctls TEGRA_AUDIO_IN_GET_ERROR_COUNT and
TEGRA_AUDIO_OUT_GET_ERROR_COUNT now take a pointer to a struct containing both
error counters.

Signed-off-by: Iliyan Malchev <malchev@google.com>
This commit is contained in:
Iliyan Malchev
2010-10-04 12:10:29 -07:00
committed by Colin Cross
parent d25a67d8d2
commit 49c9a88333
2 changed files with 16 additions and 11 deletions

View File

@@ -52,11 +52,16 @@ struct tegra_audio_buf_config {
#define TEGRA_AUDIO_OUT_GET_BUF_CONFIG _IOR(TEGRA_AUDIO_MAGIC, 7, \
struct tegra_audio_buf_config *)
struct tegra_audio_error_counts {
unsigned late_dma;
unsigned full_empty; /* empty for playback, full for recording */
};
#define TEGRA_AUDIO_IN_GET_ERROR_COUNT _IOR(TEGRA_AUDIO_MAGIC, 8, \
unsigned *)
struct tegra_audio_error_counts *)
#define TEGRA_AUDIO_OUT_GET_ERROR_COUNT _IOR(TEGRA_AUDIO_MAGIC, 9, \
unsigned *)
struct tegra_audio_error_counts *)
struct tegra_audio_out_preload {
void *data;