1 /* include/linux/tegra_audio.h 2 * 3 * Copyright (C) 2010 Google, Inc. 4 * 5 * Author: 6 * Iliyan Malchev <malchev@google.com> 7 * 8 * This software is licensed under the terms of the GNU General Public 9 * License version 2, as published by the Free Software Foundation, and 10 * may be copied, distributed, and modified under those terms. 11 * 12 * This program is distributed in the hope that it will be useful, 13 * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 * GNU General Public License for more details. 16 * 17 */ 18 19 #ifndef _TEGRA_AUDIO_H 20 #define _TEGRA_AUDIO_H 21 22 #include <linux/ioctl.h> 23 24 #define TEGRA_AUDIO_MAGIC 't' 25 26 #define TEGRA_AUDIO_IN_START _IO(TEGRA_AUDIO_MAGIC, 0) 27 #define TEGRA_AUDIO_IN_STOP _IO(TEGRA_AUDIO_MAGIC, 1) 28 29 struct tegra_audio_in_config { 30 int rate; 31 int stereo; 32 }; 33 34 #define TEGRA_AUDIO_IN_SET_CONFIG _IOW(TEGRA_AUDIO_MAGIC, 2, \ 35 const struct tegra_audio_in_config *) 36 #define TEGRA_AUDIO_IN_GET_CONFIG _IOR(TEGRA_AUDIO_MAGIC, 3, \ 37 struct tegra_audio_in_config *) 38 39 #define TEGRA_AUDIO_IN_SET_NUM_BUFS _IOW(TEGRA_AUDIO_MAGIC, 4, \ 40 const unsigned int *) 41 #define TEGRA_AUDIO_IN_GET_NUM_BUFS _IOW(TEGRA_AUDIO_MAGIC, 5, \ 42 unsigned int *) 43 #define TEGRA_AUDIO_OUT_SET_NUM_BUFS _IOW(TEGRA_AUDIO_MAGIC, 6, \ 44 const unsigned int *) 45 #define TEGRA_AUDIO_OUT_GET_NUM_BUFS _IOW(TEGRA_AUDIO_MAGIC, 7, \ 46 unsigned int *) 47 48 #define TEGRA_AUDIO_OUT_FLUSH _IO(TEGRA_AUDIO_MAGIC, 10) 49 50 #define TEGRA_AUDIO_BIT_FORMAT_DEFAULT 0 51 #define TEGRA_AUDIO_BIT_FORMAT_DSP 1 52 #define TEGRA_AUDIO_SET_BIT_FORMAT _IOW(TEGRA_AUDIO_MAGIC, 11, \ 53 const unsigned int *) 54 #define TEGRA_AUDIO_GET_BIT_FORMAT _IOR(TEGRA_AUDIO_MAGIC, 12, \ 55 unsigned int *) 56 57 #endif/*_CPCAP_AUDIO_H*/ 58