From 68cbc8660b4297fd72f81db33619796c36e8b0f4 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 5888ed7c7178f2ca3ee90749a09fefa6755d3b0d 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 621958b100624afba4044e9384ba330f15277037 Mon Sep 17 00:00:00 2001 From: Jignesh Mehta Date: Fri, 22 May 2009 15:47:00 -0700 Subject: camera: Add MSM_CAM_IOCTL_AF_CTRL and MSM_CAM_IOCTL_AF_CTRL_DONE For AF control command, add the above two ITCTLs. CRs-Fixed: 183633 Signed-off-by: Jignesh Mehta --- libc/kernel/common/media/msm_camera.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/libc/kernel/common/media/msm_camera.h b/libc/kernel/common/media/msm_camera.h index 56507ed..e793586 100644 --- a/libc/kernel/common/media/msm_camera.h +++ b/libc/kernel/common/media/msm_camera.h @@ -63,6 +63,8 @@ #define MSM_CAM_IOCTL_FLASH_LED_CFG _IOW(MSM_CAM_IOCTL_MAGIC, 22, enum msm_camera_led_state_t *) +#define MSM_CAM_IOCTL_AF_CTRL _IOR(MSM_CAM_IOCTL_MAGIC, 23, struct msm_ctrl_cmt_t *) +#define MSM_CAM_IOCTL_AF_CTRL_DONE _IOW(MSM_CAM_IOCTL_MAGIC, 24, struct msm_ctrl_cmt_t *) #define MAX_SENSOR_NUM 3 #define MAX_SENSOR_NAME 32 -- cgit v1.1 From 6c63823e6da74a60a174369b3456a056ae6161e0 Mon Sep 17 00:00:00 2001 From: Jignesh Mehta Date: Fri, 5 Jun 2009 11:03:01 -0700 Subject: camera: Add defines for post processing. Add defines for preview, snapshot and raw snapshot post processing. Signed-off-by: Jignesh Mehta --- libc/kernel/common/media/msm_camera.h | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/libc/kernel/common/media/msm_camera.h b/libc/kernel/common/media/msm_camera.h index e793586..355522a 100644 --- a/libc/kernel/common/media/msm_camera.h +++ b/libc/kernel/common/media/msm_camera.h @@ -240,6 +240,10 @@ enum msm_v4l2_ctrl_t { MSM_V4L2_MAX }; +#define PP_SNAP 0x01 +#define PP_RAW_SNAP ((0x01)<<1) +#define PP_PREV ((0x01)<<2) + struct crop_info_t { void *info; int len; -- cgit v1.1 From 996b0d3a80ccb0933a9d84554920db79adef589c Mon Sep 17 00:00:00 2001 From: Joon Rhee Date: Wed, 17 Jun 2009 14:47:34 -0700 Subject: bionic: msm framebuffer header merge Add mdp histogram and lut operation. Signed-off-by: Joon Rhee --- libc/kernel/common/linux/msm_mdp.h | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/libc/kernel/common/linux/msm_mdp.h b/libc/kernel/common/linux/msm_mdp.h index 03128be..723caf4 100644 --- a/libc/kernel/common/linux/msm_mdp.h +++ b/libc/kernel/common/linux/msm_mdp.h @@ -21,6 +21,8 @@ #define MSMFB_SUSPEND_SW_REFRESHER _IOW(MSMFB_IOCTL_MAGIC, 128, unsigned int) #define MSMFB_RESUME_SW_REFRESHER _IOW(MSMFB_IOCTL_MAGIC, 129, unsigned int) #define MSMFB_CURSOR _IOW(MSMFB_IOCTL_MAGIC, 130, struct fb_cursor) +#define MSMFB_SET_LUT _IOW(MSMFB_IOCTL_MAGIC, 131, struct fb_cmap) +#define MSMFB_HISTOGRAM _IOWR(MSMFB_IOCTL_MAGIC, 132, struct mdp_histogram) #define MDP_IMGTYPE2_START 0x10000 enum { @@ -91,5 +93,12 @@ struct mdp_blit_req_list { struct mdp_blit_req req[]; }; -#endif +struct mdp_histogram { + uint32_t frame_cnt; + uint32_t bin_cnt; + uint32_t *r; + uint32_t *g; + uint32_t *b; +}; +#endif -- cgit v1.1 From d4defef73ddb83eb93c212235abeccf227b024c8 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 de544ce3268a6947324352e244f63d8729ac7032 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 6be573a9f3f7e646587778296af44590ce900860 Mon Sep 17 00:00:00 2001 From: Chandan Uddaraju Date: Mon, 22 Jun 2009 16:34:18 -0700 Subject: bionic: Update virtual memory support 2G/2G split Add the virtual address change for 1. Thread stack 2. linker 3. Non-prelinked libraries --- libc/bionic/pthread.c | 2 +- linker/Android.mk | 2 +- linker/linker.h | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/libc/bionic/pthread.c b/libc/bionic/pthread.c index ec3c459..017466c 100644 --- a/libc/bionic/pthread.c +++ b/libc/bionic/pthread.c @@ -55,7 +55,7 @@ void _thread_created_hook(pid_t thread_id) __attribute__((noinline)); #define PTHREAD_ATTR_FLAG_USER_STACK 0x00000002 #define DEFAULT_STACKSIZE (1024 * 1024) -#define STACKBASE 0x10000000 +#define STACKBASE 0x60000000 static uint8_t * gStackBase = (uint8_t *)STACKBASE; diff --git a/linker/Android.mk b/linker/Android.mk index 48141be..cc97690 100644 --- a/linker/Android.mk +++ b/linker/Android.mk @@ -9,7 +9,7 @@ LOCAL_SRC_FILES:= \ debugger.c \ ba.c -LINKER_TEXT_BASE := 0xB0000100 +LINKER_TEXT_BASE := 0x70000100 # The maximum size set aside for the linker, from # LINKER_TEXT_BASE rounded down to a megabyte. diff --git a/linker/linker.h b/linker/linker.h index d80c761..bb41075 100644 --- a/linker/linker.h +++ b/linker/linker.h @@ -147,8 +147,8 @@ struct soinfo extern soinfo libdl_info; /* these must all be powers of two */ -#define LIBBASE 0x80000000 -#define LIBLAST 0x90000000 +#define LIBBASE 0x10000000 +#define LIBLAST 0x20000000 #define LIBINC 0x00100000 -- cgit v1.1