• Home
  • History
  • Annotate
  • only in /hardware/qcom/audio/hal/
History log of /hardware/qcom/audio/hal/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
c4ba743cc4e48b9feabccf03959642d63cf7076e 05-Jun-2013 Ravi Kumar Alamanda <ralama@codeaurora.org> hal: Fix Hangout and Voice call concurrency issue

- While a hangout is in progress, if the user accepts an incoming
voice call, there is no audio heard on the far-end.
- The tx path for hangout is using voice-speaker-mic device and
the voice call tx path tries to enable the voice-dmic-ef device.
But both these device use same physical mic and same codec backend.
When the Hangout is terminated it tries to disable the speaker-mic
which disables mixer controls that are common with voice-dmic-ef.
- Fix the issue by making sure all the capture usecases are routed
to same input sound device always.

Bug: 9228503
Change-Id: Iaf1b0e61d10437e2d9deeeffd7ca67770b6e00f6
udio_hw.c
c56336bfad4661796b749fc4db7de3a1e6aba06f 25-May-2013 Jean-Michel Trivi <jmtrivi@google.com> QC audio HAL handles device rotation

Use the "speaker-reverse" configuration when the device rotation
requires it. Device rotation is received through a parameter to
parse.

Bug 9095903

Change-Id: Ie24a625a18e1fc1093f6f564ba0ff0f5cbb5cce0
udio_hw.c
udio_hw.h
f70ffb40ca0c4e8cce15c77fd9edff7f2b6980de 17-Apr-2013 Ravi Kumar Alamanda <ralama@codeaurora.org> hal: Add support for pre-processing effects

- Add support for AEC audio effect for voice communication.

Bug: 7241490
Bug: 8325112
Change-Id: Ic33d2f1f7be86484f748627d9afabbe10c369c21
Signed-off-by: Eric Laurent <elaurent@google.com>
Signed-off-by: Iliyan Malchev <malchev@google.com>
ndroid.mk
udio_hw.c
udio_hw.h
59d296d800f7bacd9c2b07a84b2db55489be9a09 02-May-2013 Ravi Kumar Alamanda <ralama@codeaurora.org> hal: select speaker mic for voice communication

- Current implementation selects handset mic for voice
communication in speaker mode
- Check if the primary output (rx path) is active on
speaker and select speaker mic during input device
selection
- If the tx path is started first, ensure that tx device
is updated while starting the rx path.

Bug: 8325112
Change-Id: I1c556c0c9c92e599c8a1f68575b26ecdad155e7e
Signed-off-by: Iliyan Malchev <malchev@google.com>
udio_hw.c
6336b0d02f1d8f136e2ab35d6222263ff54334bd 11-Apr-2013 Sungmin Choi <sungmin.choi@lge.com> audio: enable recording

Update audio-record config, align with kernel hw parameter

Change-Id: I428d98f5d28edc26de335be1ac4667dcc4ffa4ea
Signed-off-by: Cong Zhou <cong.zhou@lge.com>
Signed-off-by: Sungmin Choi <sungmin.choi@lge.com>
udio_hw.h
5195a4b2f95ad704d2408b7cdcbb537c362a748b 04-Apr-2013 Sungmin Choi <sungmin.choi@lge.com> audio: enable audio using tinyalsa on MSM8974

Change-Id: I003dedd9f29de5aec1b620442aa8b3c3c7b7a816
ndroid.mk
udio_hw.c
udio_hw.h
0819f6a5f2bd682eced906ba54499a640d394fb8 04-Apr-2013 Iliyan Malchev <malchev@google.com> Merge "qcom/audio: use TARGET_BOARD_PLATFORM to name audio.primary.xxx.so" into jb-mr2-dev
323fb9e55e0aafc213bd578c87469bed9caded30 04-Apr-2013 Iliyan Malchev <malchev@google.com> qcom/audio: use TARGET_BOARD_PLATFORM to name audio.primary.xxx.so

Change-Id: I945a37cdb11fe10e0d1c7a4b8d9e2f31b62ae521
Signed-off-by: Iliyan Malchev <malchev@google.com>
ndroid.mk
a9024defa11f6502ca55425a4803cd00441d51e7 04-Apr-2013 Eric Laurent <elaurent@google.com> audio: implement mute on hdmi multichannel

On direct output streams the audio HAL must implement
the volume function. In the case of HDMI the only function
required is to mute audio when volume is 0 as volume
is defined as fixed on digital output streams.

Bug 8541062

Change-Id: Ia1342f6ffb7b7c95c7c386e3e2ee5243fe65051b
udio_hw.c
udio_hw.h
c301186b49201c8ebf1dc05b336ba0a5e3877408 20-Mar-2013 Ravi Kumar Alamanda <ralama@codeaurora.org> audio/hal: Set playback buffer sizes to integral multiple msec

- The call to pcm_write was taking varying time to complete.
This was because DSP always expects the buffer duration to
be an integral multiple msec. When this is not the case,
DSP waits for the rest of the data to be filled too.
This accumalates the delay and causes the variation
in timing.
- Change the deep buffer playback buffer size to 960 samples(20msec)
and low latency to 240 samples (5msec) to fix the issue.

Change-Id: I9448920e89595a65cf92a5abd9187e02043b699a
udio_hw.h
b199506991c9a93103ed149c6e1ab42c47bb8fc3 22-Mar-2013 Ravi Kumar Alamanda <ralama@codeaurora.org> qcom/audio/hal: Fix ringtone playback issue on Speaker

- Start music playback on HDMI, go to settings-->sound-->ringtone
and select a ringtone for playback. The ringtone audio playback
starts only after 15sec.
- When ringtone is selected, the low latency path is switched from
HDMI to Speaker device. The low latency path uses only 2 buffers
of 10.3msec each. If the device switch takes more time, the data
filled kernel buffers meet the stop threshold and the ALSA
framework triggers auto stop on the stream. This results PCM
stream to be blocked for more than 10sec and hence no audio
heard until the write is unblocked.
- Fix the issue by setting the stop threshold to INT_MAX to avoid
auto stop.
- This change also ensures that open_output_stream fails if the
HDMI sink does not support 5.1 or 7.1 playback.

Bug: 8401042
Change-Id: I4c1e04be2c47d67087b1cdda87e2dce77bde58f1
udio_hw.c
udio_hw.h
71c84b70ff7c428e35ac187ca4a234acac558240 11-Mar-2013 Ravi Kumar Alamanda <ralama@codeaurora.org> qcom/audio/hal: Fix the routing logic to route streams independently

- Current implementation assumes that the output devices for all
the output streams and voice call will be same. So it updates
the devices on all the output streams when out_set_parameters()
is called on any stream.
- Update the routing logic to support all the streams independently
based on the devices set by audio policy manager on each stream.
- However, on this target there is a limitation that earpiece,
speaker, and headset devices cannot be enabled concurrently as
they share the same backend. Updated routing logic takes care of
this limitation.

Bug: 8239898
Change-Id: I3091be6894210c77c479b872cec39d821d10bd90
udio_hw.c
udio_hw.h
02317798dec329868318e75a83c7c654cf5200b3 05-Mar-2013 Ravi Kumar Alamanda <ralama@codeaurora.org> qcom/audio/hal: Do not enable Fluence in speaker mode by default

- Speaker volume is low during voice call.
- Fluence is enabled by default even in speaker mode during voice
call. Mako does not meet the spec for Fluence due to mics
placement issue.
- Fix the issue by not enabling Fluence in speaker mode.
- If the device supports it, set the property to enable fluence.

Bug: 8272345
Change-Id: I9c4726409c4eb8d39dfbbb2f47e3075a6f6d5cc3
udio_hw.c
udio_hw.h
096c87f83ccc1439acb639dbab00faf5a393afa7 01-Mar-2013 Ravi Kumar Alamanda <ralama@codeaurora.org> qcom/audio/hal: Fix audio routing to wired headset

- Start music playback and plug in headset within 3sec. The
audio is heard on both headset and speaker whereas it is
expected to play on headset.
- Fix the output device updation and selection logic to resolve
the issue.

Bug: 8239898

Change-Id: I476c9ede241e319c90cb960dd302384f41a6b52c
udio_hw.c
udio_hw.h
3b1816cd594eba53a9869d7b23af36daacf58fa1 28-Feb-2013 Ravi Kumar Alamanda <ralama@codeaurora.org> qcom/audio/hal: Use linked list APIs from libcutils

- Replace the linked list implementation with relevant APIs
available in libcutils

Bug: 8292602
Change-Id: I2db173b845cbf4f35e53738b272f7f4a79279f3b
udio_hw.c
udio_hw.h
150dbfe8b5b3ab634604d2a309d4ef9fb7602f4a 27-Feb-2013 Eric Laurent <elaurent@google.com> audio: fix audio glitch when closing pcm stream

Holding the audio device mutex while calling pcm_close() is not necessary
and will cause writes on other output streams to be blocked until close
completes which can take several hundred milliseconds.

Not holding the audio device mutex during the whole standby sequence
forces to change the lock order between audio device and output stream mutex.

The result is that we do not acquire the audio device mutex systematically before
the stream mutex in out_write(). This is not a problem with this audio HAL
as set_mode() does not acquire the stream mutex and out_set_parameters() is always
called in the same thread (same priority) as out_write().

Same change done for input threads.

Bug 8267567.

Change-Id: I17bb187c0564200f6362586885e61500d52d5bc2
udio_hw.c
udio_hw.h
3771884b983f69b43b3000647cb436feb41dd92b 23-Feb-2013 Ravi Kumar Alamanda <ralama@codeaurora.org> qcom/audio/hal: Move the check for network opeartor to proper place

- Check for the network operator at boot up does not return correct
value always
- For the T-Mobile, US the HANDSET and MIC devices need different
gain settings
- Do the check before enabling those devices

Bug: 8255423
Change-Id: I58011f9c239dce87507b581a62e0dcc09164d15a
Signed-off-by: Iliyan Malchev <malchev@google.com>
udio_hw.c
udio_hw.h
a995a357b5da94ad30f155a53325810138dcd718 22-Feb-2013 Ravi Kumar Alamanda <ralama@codeaurora.org> qcom/audio/hal: Fix the issue audio not routed to headset

- Boot the phone without headset plugged in, plug in headset and
play music. Audio is heard on speaker instead of headset.
- The devices of output stream corresponding to music playback
is not being updated correctly.
- Fix by correcting the output device uption logic in
out_set_parameters()

Bug: 8239898
Change-Id: Ie24de09847533660d2280744d33cba7d7fb7d535
udio_hw.c
75d924d06336949440090c214af199fd05d5bb06 21-Feb-2013 Ravi Kumar Alamanda <ralama@codeaurora.org> qcom/audio/hal: Enable debug logs

- Enable few debug logs to track audio use cases and
sound device activities
- Clean up some ToDos.
- Rename SND_DEVICE_INVALID to SND_DEVICE_NONE.

Bug: 8242117
Change-Id: I0510288334d6a1e71c0846f6d10ac8ba283965a6
udio_hw.c
udio_hw.h
0e4949903cb6655211a95d3070f0951756fa05d1 23-Feb-2013 Glenn Kasten <gkasten@google.com> Merge "Revert "Fix routing for wired headset""
4b731445015b1be90ee280d5b2c4901e19589561 23-Feb-2013 Glenn Kasten <gkasten@google.com> Revert "Fix routing for wired headset"

This reverts commit 8637747fab82a99325aae69755646e96fe2e62a5

Change-Id: I59073d3e47548a5697b61a5691b2506bf5876e5e
udio_hw.c
8b9c5c8c26b4acce5870c48ed8aa76decd823a1e 21-Feb-2013 Ravi Kumar Alamanda <ralama@codeaurora.org> qcom/audio/hal: Fix no voice call audio on bt-sco device

- No audio observed in the first voice call if the device is
booted with the BT-SCO device connected.
- csd_client_enable_device is not being called when the voice
call is enabled which results no audio.
- Fix the issue by making sure that API is called with proper
acdb ids while starting a voice call.

Bug: 8236957
Change-Id: I83a4c00e950b8311162b33087ed73a390c39ca7d
Signed-off-by: Iliyan Malchev <malchev@google.com>
udio_hw.c
8637747fab82a99325aae69755646e96fe2e62a5 21-Feb-2013 Glenn Kasten <gkasten@google.com> Fix routing for wired headset

Bug: 8239898
Change-Id: Id001206b2e5aa441340b38d62fbcee7449cf5cba
udio_hw.c
8455fa7d7e51680e45b6a88d28cf48074280e2f9 19-Feb-2013 Ravi Kumar Alamanda <ralama@codeaurora.org> qcom/audio/hal: Fix no audio issue after A2DP disconnect

- No audio heard after A2DP headset is disconnected.

- During A2DP disconnect, the audio HAL receives routing
with device as 0. So the subsequence playback buffers are
dropped as there is no valid output device.

- Fix this issue by ignoring the routing to device 0.

- Update to use speaker mic for voice communication when
using speaker as output device.

Bug: 8214360
Bug: 8219514
Bug: 8230266
Change-Id: Ic19e8e512ae3c5e493014a1ba3c17bf0ddf35e36
Signed-off-by: Iliyan Malchev <malchev@google.com>
udio_hw.c
f99670408844a07cdfabf9a01078ed7ef4c71bbf 15-Feb-2013 Ravi Kumar Alamanda <ralama@codeaurora.org> qcom/audio/hal: add support for TTY feature

Bug: 8227215
Change-Id: I4617916b2b9830e7fae3675915939715eab3b9f8
Signed-off-by: Ravi Kumar Alamanda <ralama@codeaurora.org>
Signed-off-by: Iliyan Malchev <malchev@google.com>
udio_hw.c
udio_hw.h
c8400637beb896d2f5d7ae980682cd2d072a9da3 15-Feb-2013 Eric Laurent <elaurent@google.com> audio: restored front and back mic capture

Restored support for simultaneous capture of front and back mics
for voice recognition lost when switching to new audio HAL.

Also fixed problem in get_input_snd_device():
AUDIO_DEVICE_BIT_IN must be cleared in input_device before comparison
otherwise anding it with any input device value would return true.

Replaced adev->input_source and adev->in_device by adev->active_input:
this gives access to all info on the active input stream.

Change-Id: I03f02ffc120d6f69669618b4ab63cdcbd7b65877
udio_hw.c
udio_hw.h
72c411f8ef451934ababc209eef482b9cc7005a8 12-Feb-2013 Ravi Kumar Alamanda <ralama@codeaurora.org> qcom/audio/hal: Add support for Dual MIC feature

- Added support to select Dual mic devices for voice call and
voice recognition use cases.

Bug: 8175884
Change-Id: I7f8cb9e7bd614cfc6010b4cf1baa20ad234c4ddc
Signed-off-by: Ravi Kumar Alamanda <ralama@codeaurora.org>
Signed-off-by: Iliyan Malchev <malchev@google.com>
udio_hw.c
udio_hw.h
610e8cc467a8aa21a3fe25f730793d6c6413d3e7 12-Feb-2013 Ravi Kumar Alamanda <ralama@codeaurora.org> qcom/audio/hal: Fix the device switch delay issue during voice call

- Device switch from earpiece to speaker during voice call takes
around 3.5sec which is not acceptable
- Disabling the voice call mixer path consumes 3.5 sec
- Fixed by making sure that device path is deactivated on MDM through
CSD client before disabling voice call mixer path on APQ.
- Also remove incorrect calls to dlerror() and make the dlsym-error messages
more consistent.

Change-Id: Ib23c0a3c0341f41904ca06524bf9d2f4214ad92e
Signed-off-by: Iliyan Malchev <malchev@google.com>
udio_hw.c
2dfba2b9264a43951889e591260162a67894c0d0 18-Jan-2013 Ravi Kumar Alamanda <ralama@codeaurora.org> add new audio HAL (disabled)

-- build when BOARD_USES_LEGACY_ALSA_AUDIO is not defined
-- under hal/
-- uses audio_route library

Change-Id: Ibf2706ba55e5a2dbd69b5f4cfac8a5cc68220b86
Signed-off-by: Iliyan Malchev <malchev@google.com>
ndroid.mk
udio_hw.c
udio_hw.h
did.c