From 3c0ff1a1375100df87c74c5614ab5e3c41454be7 Mon Sep 17 00:00:00 2001 From: "Lai, Patrick" Date: Tue, 19 May 2009 21:27:56 -0700 Subject: bionic: msm: audio: Add asynchronous I/O interface definition Add asynchronous I/O interface definition so user-space application can pass input/output buffer and get buffer_done message asynchronously Signed-off-by: Patrick Lai --- libc/kernel/common/linux/msm_audio.h | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/libc/kernel/common/linux/msm_audio.h b/libc/kernel/common/linux/msm_audio.h index a632cb4..a5b29d8 100644 --- a/libc/kernel/common/linux/msm_audio.h +++ b/libc/kernel/common/linux/msm_audio.h @@ -33,6 +33,10 @@ #define AUDIO_PLAY_DTMF _IOW(AUDIO_IOCTL_MAGIC, 12, unsigned) #define AUDIO_GET_EVENT _IOR(AUDIO_IOCTL_MAGIC, 13, unsigned) #define AUDIO_ABORT_GET_EVENT _IOW(AUDIO_IOCTL_MAGIC, 14, unsigned) +#define AUDIO_REGISTER_PMEM _IOW(AUDIO_IOCTL_MAGIC, 15, unsigned) +#define AUDIO_DEREGISTER_PMEM _IOW(AUDIO_IOCTL_MAGIC, 16, unsigned) +#define AUDIO_ASYNC_WRITE _IOW(AUDIO_IOCTL_MAGIC, 17, unsigned) +#define AUDIO_ASYNC_READ _IOW(AUDIO_IOCTL_MAGIC, 18, unsigned) #define AUDIO_GET_PCM_CONFIG _IOR(AUDIO_IOCTL_MAGIC, 30, unsigned) #define AUDIO_SET_PCM_CONFIG _IOW(AUDIO_IOCTL_MAGIC, 31, unsigned) #define AUDIO_SWITCH_DEVICE _IOW(AUDIO_IOCTL_MAGIC, 32, unsigned) @@ -82,6 +86,18 @@ struct msm_audio_stats { uint32_t unused[2]; }; +struct msm_audio_pmem_info { + int fd; + void *vaddr; +}; + +struct msm_audio_aio_buf { + void *buf_addr; + uint32_t buf_len; + uint32_t data_len; + void *private_data; +}; + #define SND_IOCTL_MAGIC 's' #define SND_MUTE_UNMUTED 0 @@ -130,8 +146,11 @@ struct msm_audio_pcm_config { #define AUDIO_EVENT_SUSPEND 0 #define AUDIO_EVENT_RESUME 1 +#define AUDIO_EVENT_WRITE_DONE 2 +#define AUDIO_EVENT_READ_DONE 3 union msm_audio_event_payload { + struct msm_audio_aio_buf aio_buf; int reserved; }; -- cgit v1.1 From c83cf4229cec58e0bf2665f3b040bc2998b20471 Mon Sep 17 00:00:00 2001 From: "Zeng, Helen" Date: Fri, 12 Jun 2009 17:40:49 -0700 Subject: Bionic: Updating msm_audio.h to support NT2 Stream Info This corresponds to kernel gerrit ID: 2230 This patch should be merged to mainline after 2544 (Gerrit ID) is merged first. --- libc/kernel/common/linux/msm_audio.h | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/libc/kernel/common/linux/msm_audio.h b/libc/kernel/common/linux/msm_audio.h index a5b29d8..14e4a8b 100644 --- a/libc/kernel/common/linux/msm_audio.h +++ b/libc/kernel/common/linux/msm_audio.h @@ -41,6 +41,7 @@ #define AUDIO_SET_PCM_CONFIG _IOW(AUDIO_IOCTL_MAGIC, 31, unsigned) #define AUDIO_SWITCH_DEVICE _IOW(AUDIO_IOCTL_MAGIC, 32, unsigned) #define AUDIO_SET_MUTE _IOW(AUDIO_IOCTL_MAGIC, 33, unsigned) +#define AUDIO_GET_STREAM_INFO _IOR(AUDIO_IOCTL_MAGIC, 34, struct msm_audio_bitstream_info) #define AUDIO_MAX_COMMON_IOCTL_NUM 100 @@ -147,10 +148,24 @@ struct msm_audio_pcm_config { #define AUDIO_EVENT_SUSPEND 0 #define AUDIO_EVENT_RESUME 1 #define AUDIO_EVENT_WRITE_DONE 2 -#define AUDIO_EVENT_READ_DONE 3 +#define AUDIO_EVENT_READ_DONE 3 +#define AUDIO_EVENT_STREAM_INFO 4 + +#define AUDIO_CODEC_TYPE_MP3 0 +#define AUDIO_CODEC_TYPE_AAC 1 + +struct msm_audio_bitstream_info { + uint32_t codec_type; + uint32_t chan_info; + uint32_t sample_rate; + uint32_t bit_stream_info; + uint32_t bit_rate; + uint32_t unused[3]; +}; union msm_audio_event_payload { struct msm_audio_aio_buf aio_buf; + struct msm_audio_bitstream_info stream_info; int reserved; }; -- cgit v1.1 From 698640969d734ef3c90e19beb79a1343b1bbd241 Mon Sep 17 00:00:00 2001 From: Larry Bassel Date: Wed, 17 Jun 2009 14:27:39 -0700 Subject: Bionic: sync kernel changes in android_pmem.h to bionic Signed-off-by: Larry Bassel --- libc/kernel/common/linux/android_pmem.h | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/libc/kernel/common/linux/android_pmem.h b/libc/kernel/common/linux/android_pmem.h index 858857e..230310e 100644 --- a/libc/kernel/common/linux/android_pmem.h +++ b/libc/kernel/common/linux/android_pmem.h @@ -23,6 +23,12 @@ struct pmem_region { unsigned long len; }; +struct pmem_addr { + unsigned long vaddr; + unsigned long offset; + unsigned long length; +}; + #define PMEM_IOCTL_MAGIC 'p' #define PMEM_GET_PHYS _IOW(PMEM_IOCTL_MAGIC, 1, struct pmem_region *) #define PMEM_MAP _IOW(PMEM_IOCTL_MAGIC, 2, struct pmem_region *) @@ -39,6 +45,10 @@ struct pmem_region { #define HW3D_GRANT_GPU _IOW(PMEM_IOCTL_MAGIC, 9, unsigned int) #define HW3D_WAIT_IRQ _IOW(PMEM_IOCTL_MAGIC,10, unsigned int) +#define PMEM_CLEAN_INV_CACHES _IOW(PMEM_IOCTL_MAGIC, 11, unsigned int) +#define PMEM_CLEAN_CACHES _IOW(PMEM_IOCTL_MAGIC, 12, unsigned int) +#define PMEM_INV_CACHES _IOW(PMEM_IOCTL_MAGIC, 13, unsigned int) + struct android_pmem_platform_data; struct pmem_file_operations { int (*mmap) (struct file *, struct vm_area_struct *); -- cgit v1.1 From 99b4135a1ba5d6f50d8862cd55c2f183dd1b4884 Mon Sep 17 00:00:00 2001 From: Suresh Vankadara Date: Tue, 23 Jun 2009 09:38:41 +0530 Subject: Bionic: Update msm_audio.h to support volume, pan and QConcertPlus Signed-off-by: Suresh Vankadara --- libc/kernel/common/linux/msm_audio.h | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/libc/kernel/common/linux/msm_audio.h b/libc/kernel/common/linux/msm_audio.h index 14e4a8b..1989ced 100644 --- a/libc/kernel/common/linux/msm_audio.h +++ b/libc/kernel/common/linux/msm_audio.h @@ -42,6 +42,8 @@ #define AUDIO_SWITCH_DEVICE _IOW(AUDIO_IOCTL_MAGIC, 32, unsigned) #define AUDIO_SET_MUTE _IOW(AUDIO_IOCTL_MAGIC, 33, unsigned) #define AUDIO_GET_STREAM_INFO _IOR(AUDIO_IOCTL_MAGIC, 34, struct msm_audio_bitstream_info) +#define AUDIO_SET_PAN _IOW(AUDIO_IOCTL_MAGIC, 35, unsigned) +#define AUDIO_SET_QCONCERT_PLUS _IOW(AUDIO_IOCTL_MAGIC, 36, unsigned) #define AUDIO_MAX_COMMON_IOCTL_NUM 100 @@ -71,6 +73,11 @@ #define I2S_RX 0x20 #define I2S_TX 0x21 +#define ADRC_ENABLE 0x0001 +#define EQ_ENABLE 0x0002 +#define IIR_ENABLE 0x0004 +#define QCONCERT_PLUS_ENABLE 0x0008 + struct msm_audio_config { uint32_t buffer_size; uint32_t buffer_count; -- cgit v1.1 From afde42f6ab11397e7f4e497053a2bb1b9222500a Mon Sep 17 00:00:00 2001 From: Susan Brownhill Date: Tue, 7 Jul 2009 16:14:42 -0700 Subject: bionic: add dvs fields and change intra_refresh field name Signed-off-by: Susan Brownhill --- libc/kernel/common/linux/msm_q6venc.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/libc/kernel/common/linux/msm_q6venc.h b/libc/kernel/common/linux/msm_q6venc.h index e458a39..95c52c6 100644 --- a/libc/kernel/common/linux/msm_q6venc.h +++ b/libc/kernel/common/linux/msm_q6venc.h @@ -36,6 +36,8 @@ struct q6_init_config { unsigned short max_mvy; unsigned short enc_frame_height_inmb; unsigned short enc_frame_width_inmb; + unsigned short dvs_frame_height; + unsigned short dvs_frame_width; unsigned int ref_frame_buf1_phy; unsigned int ref_frame_buf2_phy; unsigned int rlc_buf1_phy; @@ -69,7 +71,7 @@ struct encode_param { struct intra_refresh { unsigned int intra_refresh_enable; - unsigned int bit_error_rate; + unsigned int intra_mb_num; }; struct rc_config { -- cgit v1.1