Iliyan Malchev | a169e31 | 2010-08-23 21:01:55 -0700 | [diff] [blame] | 1 | /**************************************************************************** |
| 2 | **************************************************************************** |
| 3 | *** |
| 4 | *** This header was automatically generated from a Linux kernel header |
| 5 | *** of the same name, to make information necessary for userspace to |
| 6 | *** call into the kernel available to libc. It contains only constants, |
| 7 | *** structures, and macros generated from the original header, and thus, |
| 8 | *** contains no copyrightable information. |
| 9 | *** |
| 10 | **************************************************************************** |
| 11 | ****************************************************************************/ |
| 12 | #ifndef _TEGRA_AUDIO_H |
| 13 | #define _TEGRA_AUDIO_H |
| 14 | |
| 15 | #include <linux/ioctl.h> |
| 16 | |
| 17 | #define TEGRA_AUDIO_MAGIC 't' |
| 18 | |
| 19 | #define TEGRA_AUDIO_IN_START _IO(TEGRA_AUDIO_MAGIC, 0) |
| 20 | #define TEGRA_AUDIO_IN_STOP _IO(TEGRA_AUDIO_MAGIC, 1) |
| 21 | |
| 22 | struct tegra_audio_in_config { |
| 23 | int rate; |
| 24 | int stereo; |
| 25 | }; |
| 26 | |
| 27 | #define TEGRA_AUDIO_IN_SET_CONFIG _IOW(TEGRA_AUDIO_MAGIC, 2, const struct tegra_audio_in_config *) |
| 28 | #define TEGRA_AUDIO_IN_GET_CONFIG _IOR(TEGRA_AUDIO_MAGIC, 3, struct tegra_audio_in_config *) |
| 29 | |
| 30 | struct tegra_audio_buf_config { |
| 31 | unsigned size; |
| 32 | unsigned threshold; |
| 33 | unsigned chunk; |
| 34 | }; |
| 35 | |
| 36 | #define TEGRA_AUDIO_IN_SET_BUF_CONFIG _IOW(TEGRA_AUDIO_MAGIC, 4, const struct tegra_audio_buf_config *) |
| 37 | #define TEGRA_AUDIO_IN_GET_BUF_CONFIG _IOR(TEGRA_AUDIO_MAGIC, 5, struct tegra_audio_buf_config *) |
| 38 | |
| 39 | #define TEGRA_AUDIO_OUT_SET_BUF_CONFIG _IOW(TEGRA_AUDIO_MAGIC, 6, const struct tegra_audio_buf_config *) |
| 40 | #define TEGRA_AUDIO_OUT_GET_BUF_CONFIG _IOR(TEGRA_AUDIO_MAGIC, 7, struct tegra_audio_buf_config *) |
| 41 | |
Iliyan Malchev | fff0c58 | 2010-10-04 22:54:47 -0700 | [diff] [blame] | 42 | struct tegra_audio_error_counts { |
| 43 | unsigned late_dma; |
| 44 | unsigned full_empty; |
| 45 | }; |
Iliyan Malchev | a169e31 | 2010-08-23 21:01:55 -0700 | [diff] [blame] | 46 | |
Iliyan Malchev | fff0c58 | 2010-10-04 22:54:47 -0700 | [diff] [blame] | 47 | #define TEGRA_AUDIO_IN_GET_ERROR_COUNT _IOR(TEGRA_AUDIO_MAGIC, 8, struct tegra_audio_error_counts *) |
| 48 | |
| 49 | #define TEGRA_AUDIO_OUT_GET_ERROR_COUNT _IOR(TEGRA_AUDIO_MAGIC, 9, struct tegra_audio_error_counts *) |
Iliyan Malchev | a169e31 | 2010-08-23 21:01:55 -0700 | [diff] [blame] | 50 | |
Iliyan Malchev | 9883f39 | 2010-10-19 15:23:42 -0700 | [diff] [blame^] | 51 | #define TEGRA_AUDIO_OUT_FLUSH _IO(TEGRA_AUDIO_MAGIC, 10) |
Iliyan Malchev | a169e31 | 2010-08-23 21:01:55 -0700 | [diff] [blame] | 52 | |
Iliyan Malchev | 9883f39 | 2010-10-19 15:23:42 -0700 | [diff] [blame^] | 53 | #define TEGRA_AUDIO_BIT_FORMAT_DEFAULT 0 |
| 54 | #define TEGRA_AUDIO_BIT_FORMAT_DSP 1 |
| 55 | #define TEGRA_AUDIO_SET_BIT_FORMAT _IOW(TEGRA_AUDIO_MAGIC, 11, unsigned int *) |
| 56 | #define TEGRA_AUDIO_GET_BIT_FORMAT _IOR(TEGRA_AUDIO_MAGIC, 12, unsigned int *) |
Iliyan Malchev | a169e31 | 2010-08-23 21:01:55 -0700 | [diff] [blame] | 57 | |
| 58 | #endif |
| 59 | |