audio: enable audio using tinyalsa on MSM8974
Change-Id: I003dedd9f29de5aec1b620442aa8b3c3c7b7a816
diff --git a/hal/Android.mk b/hal/Android.mk
index 148e66c..79685e3 100644
--- a/hal/Android.mk
+++ b/hal/Android.mk
@@ -17,6 +17,10 @@
libaudioroute \
libdl
+ifeq ($(TARGET_BOARD_PLATFORM), msm8974)
+LOCAL_CFLAGS += -DMSM8974
+endif
+
LOCAL_C_INCLUDES += \
external/tinyalsa/include \
$(call include-path-for, audio-route)
diff --git a/hal/audio_hw.c b/hal/audio_hw.c
index 55ab055..c5acd17 100644
--- a/hal/audio_hw.c
+++ b/hal/audio_hw.c
@@ -70,7 +70,11 @@
static const int pcm_device_table[AUDIO_USECASE_MAX][2] = {
[USECASE_AUDIO_PLAYBACK_DEEP_BUFFER] = {0, 0},
+#ifdef MSM8974
+ [USECASE_AUDIO_PLAYBACK_LOW_LATENCY] = {15, 15},
+#else
[USECASE_AUDIO_PLAYBACK_LOW_LATENCY] = {14, 14},
+#endif
[USECASE_AUDIO_PLAYBACK_MULTI_CH] = {1, 1},
[USECASE_AUDIO_RECORD] = {0, 0},
[USECASE_AUDIO_RECORD_LOW_LATENCY] = {14, 14},
diff --git a/hal/audio_hw.h b/hal/audio_hw.h
index 0ac03fa..0733e71 100644
--- a/hal/audio_hw.h
+++ b/hal/audio_hw.h
@@ -129,10 +129,18 @@
* We should take care of returning proper size when AudioFlinger queries for
* the buffer size of an input/output stream
*/
+#ifdef MSM8974
+#define DEEP_BUFFER_OUTPUT_PERIOD_SIZE 1024
+#else
#define DEEP_BUFFER_OUTPUT_PERIOD_SIZE 960
+#endif
#define DEEP_BUFFER_OUTPUT_PERIOD_COUNT 8
+#ifdef MSM8974
+#define LOW_LATENCY_OUTPUT_PERIOD_SIZE 256
+#else
#define LOW_LATENCY_OUTPUT_PERIOD_SIZE 240
+#endif
#define LOW_LATENCY_OUTPUT_PERIOD_COUNT 2
#define HDMI_MULTI_PERIOD_SIZE 336