Added WORKING gprimeltecan device tree.
diff --git a/audio/audio_effects.conf b/audio/audio_effects.conf
new file mode 100644
index 0000000..8f7d40c
--- /dev/null
+++ b/audio/audio_effects.conf
@@ -0,0 +1,242 @@
+# List of effect libraries to load. Each library element must contain a "path" element
+# giving the full path of the library .so file.
+# libraries {
+# <lib name> {
+# path <lib path>
+# }
+# }
+libraries {
+# This is a proxy library that will be an abstraction for
+# the HW and SW effects
+ proxy {
+ path /system/lib/soundfx/libeffectproxy.so
+ }
+# This is the HW implementation library for the effect
+ offload {
+ path /system/lib/soundfx/libaudioeffectoffload.so
+ }
+ bundle {
+ path /system/lib/soundfx/libbundlewrapper.so
+ }
+ reverb {
+ path /system/lib/soundfx/libreverbwrapper.so
+ }
+ qcbassboost {
+ path /vendor/lib/soundfx/libqcbassboost.so
+ }
+ qcvirt {
+ path /vendor/lib/soundfx/libqcvirt.so
+ }
+ qcreverb {
+ path /vendor/lib/soundfx/libqcreverb.so
+ }
+ visualizer_sw {
+ path /system/lib/soundfx/libvisualizer.so
+ }
+ visualizer_hw {
+ path /system/lib/soundfx/libqcomvisualizer.so
+ }
+ downmix {
+ path /system/lib/soundfx/libdownmix.so
+ }
+ soundalive {
+ path /system/lib/libaudiosa.so
+ }
+ soundalive_sec {
+ path /system/lib/soundfx/libaudiosa_sec.so
+ }
+ loudness_enhancer {
+ path /system/lib/soundfx/libldnhncr.so
+ }
+ pre_processing {
+ path /system/lib/soundfx/libqcomvoiceprocessing.so
+ }
+ offload_bundle {
+ path /system/lib/soundfx/libqcompostprocbundle.so
+ }
+ audio_pre_processing {
+ path /system/lib/soundfx/libqcomvoiceprocessing.so
+ }
+}
+
+# Default pre-processing library. Add to audio_effect.conf "libraries" section if
+# audio HAL implements support for default software audio pre-processing effects
+#
+# pre_processing {
+# path /system/lib/soundfx/libaudiopreprocessing.so
+# }
+
+# list of effects to load. Each effect element must contain a "library" and a "uuid" element.
+# The value of the "library" element must correspond to the name of one library element in the
+# "libraries" element.
+# The name of the effect element is indicative, only the value of the "uuid" element
+# designates the effect.
+# The uuid is the implementation specific UUID as specified by the effect vendor. This is not the
+# generic effect type UUID.
+# effects {
+# <fx name> {
+# library <lib name>
+# uuid <effect uuid>
+# }
+# ...
+# }
+
+effects {
+ soundalive {
+ library proxy
+ uuid 05227ea0-50bb-11e3-ac69-0002a5d5c51b
+ libsw {
+ library soundalive_sec
+ uuid cf65eb39-ce2f-48a8-a903-ceb818c06745
+ }
+ libhw {
+ library offload
+ uuid 0b2dbc60-50bb-11e3-988b-0002a5d5c51b
+ }
+ }
+ bassboost {
+ library proxy
+ uuid 10e50dc0-50bb-11e3-a9b0-0002a5d5c51b
+ libsw {
+ library soundalive
+ uuid a926a540-418a-11e1-b2f1-0002a5d5c51b
+ }
+ libhw {
+ library offload
+ uuid 16a70d80-50bb-11e3-8959-0002a5d5c51b
+ }
+ }
+ virtualizer {
+ library proxy
+ uuid 1db5b180-50bb-11e3-888e-0002a5d5c51b
+ libsw {
+ library soundalive
+ uuid c747f6a0-418a-11e1-a621-0002a5d5c51b
+ }
+ libhw {
+ library offload
+ uuid 23318080-50bb-11e3-9101-0002a5d5c51b
+ }
+ }
+ equalizer {
+ library proxy
+ uuid 295b42c0-50bb-11e3-a6ed-0002a5d5c51b
+ libsw {
+ library soundalive
+ uuid c117b70-f97f-11e0-be50-0002a5d5c51b
+ }
+ libhw {
+ library offload
+ uuid 2f2afe20-50bb-11e3-bc97-0002a5d5c51b
+ }
+ }
+ volume {
+ library bundle
+ uuid 119341a0-8469-11df-81f9-0002a5d5c51b
+ }
+ reverb_env_aux {
+ library reverb
+ uuid 4a387fc0-8ab3-11df-8bad-0002a5d5c51b
+ }
+ reverb_env_ins {
+ library reverb
+ uuid c7a511a0-a3bb-11df-860e-0002a5d5c51b
+ }
+ reverb_pre_aux {
+ library reverb
+ uuid f29a1400-a3bb-11df-8ddc-0002a5d5c51b
+ }
+ reverb_pre_ins {
+ library reverb
+ uuid 172cdf00-a3bc-11df-a72f-0002a5d5c51b
+ }
+ visualizer {
+ library proxy
+ uuid 1d0a1a53-7d5d-48f2-8e71-27fbd10d842c
+ libsw {
+ library visualizer_sw
+ uuid d069d9e0-8329-11df-9168-0002a5d5c51b
+ }
+ libhw {
+ library visualizer_hw
+ uuid 7a8044a0-1a71-11e3-a184-0002a5d5c51b
+ }
+ }
+ downmix {
+ library downmix
+ uuid 93f04452-e4fe-41cc-91f9-e475b6d1d69f
+ }
+ loudness_enhancer {
+ library loudness_enhancer
+ uuid fa415329-2034-4bea-b5dc-5b381c8d1e2c
+ }
+ aec {
+ library pre_processing
+ uuid 0f8d0d2a-59e5-45fe-b6e4-248c8a799109
+ }
+ ns {
+ library pre_processing
+ uuid 1d97bb0b-9e2f-4403-9ae3-58c2554306
+ }
+}
+
+# Default pre-processing effects. Add to audio_effect.conf "effects" section if
+# audio HAL implements support for them.
+#
+# agc {
+# library pre_processing
+# uuid aa8130e0-66fc-11e0-bad0-0002a5d5c51b
+# }
+# aec {
+# library pre_processing
+# uuid 0f8d0d2a-59e5-45fe-b6e4-248c8a799109
+# }
+# ns {
+# library pre_processing
+# uuid c06c8400-8e06-11e0-9cb6-0002a5d5c51b
+# }
+
+# Audio preprocessor configurations.
+# The pre processor configuration consists in a list of elements each describing
+# pre processor settings for a given input source. Valid input source names are:
+# "mic", "camcorder", "voice_recognition", "voice_communication"
+# Each input source element contains a list of effects elements. The name of the effect
+# element must be the name of one of the effects in the "effects" list of the file.
+# Each effect element may optionally contain a list of parameters and their
+# default value to apply when the pre processor effect is created.
+# A parameter is defined by a "param" element and a "value" element. Each of these elements
+# consists in one or more elements specifying a type followed by a value.
+# The types defined are: "int", "short", "float", "bool" and "string"
+# When both "param" and "value" are a single int, a simple form is allowed where just
+# the param and value pair is present in the parameter description
+# pre_processing {
+# <input source name> {
+# <fx name> {
+# <param 1 name> {
+# param {
+# int|short|float|bool|string <value>
+# [ int|short|float|bool|string <value> ]
+# ...
+# }
+# value {
+# int|short|float|bool|string <value>
+# [ int|short|float|bool|string <value> ]
+# ...
+# }
+# }
+# <param 2 name > {<param> <value>}
+# ...
+# }
+# ...
+# }
+# ...
+# }
+
+#
+# TODO: add default audio pre processor configurations after debug and tuning phase
+#
+ pre_processing {
+ voice_communication {
+ aec {}
+ }
+ }