Commit Graph

295 Commits

Author SHA1 Message Date
Eric Laurent
837588691e am 956f7ba5: Workaround for issue 2229040: [Passion] Audio driver stuck when changing input routing while recording is active.
Merge commit '956f7ba5ee0f087c91b5fefd2718dae30f8c1e29' into eclair-plus-aosp

* commit '956f7ba5ee0f087c91b5fefd2718dae30f8c1e29':
  Workaround for issue 2229040: 	[Passion] Audio driver stuck when changing input routing while recording is active.
2009-11-11 16:47:41 -08:00
Eric Laurent
e210a8ccce Workaround for issue 2229040: [Passion] Audio driver stuck when changing input routing while recording is active.
This change avoids the audio driver lockup when changing audio input path configuration. It does not solve the root cause in audio driver or dsp.
When applied lockups observed in the folling use cases are eliminated:
- use back mic for camcorder recording (issue 2194140)
- switch input device when headset is plugged in or out during record (issue 2226658).

Also removes warnings.

	Submitted on behalf of H.K Chen <hk_chen@htc.com>
2009-11-11 10:49:32 -08:00
Iliyan Malchev
77e99e9010 am d74adff0: Merge change I08516fe5 into eclair
Merge commit 'd74adff01615816857b075325ffa01eb8a58e854' into eclair-plus-aosp

* commit 'd74adff01615816857b075325ffa01eb8a58e854':
  libaudio-qsd8k: update a1026.h header and improve firmware-loading code
2009-11-10 15:25:17 -08:00
Android (Google) Code Review
a6675bb910 Merge change I08516fe5 into eclair
* changes:
  libaudio-qsd8k: update a1026.h header and improve firmware-loading code
2009-11-10 15:20:02 -08:00
Eric Laurent
3efd016543 am f06a9889: Merge change I108ada59 into eclair
Merge commit 'f06a9889288034e9bd3e54fbae3bb48ad7bd3f89' into eclair-plus-aosp

* commit 'f06a9889288034e9bd3e54fbae3bb48ad7bd3f89':
  Fix issue 2226658: Audio path not updated when a headset is plugged or unplugged while recording.
2009-11-09 22:41:56 -08:00
Android (Google) Code Review
05a1ef9930 Merge change I108ada59 into eclair
* changes:
  Fix issue 2226658: Audio path not updated when a headset is plugged or unplugged while recording.
2009-11-09 22:39:39 -08:00
Mathias Agopian
020fdef9fb am b7f7f038: enable mdp debugging on error, also check for invalid inputs
Merge commit 'b7f7f038529135a5c21234ae89e4b87a1c56854a' into eclair-plus-aosp

* commit 'b7f7f038529135a5c21234ae89e4b87a1c56854a':
  enable mdp debugging on error, also check for invalid inputs
2009-11-09 20:19:40 -08:00
Mathias Agopian
9e8b8a119d enable mdp debugging on error, also check for invalid inputs 2009-11-09 20:15:50 -08:00
Iliyan Malchev
84abafaf65 libaudio-qsd8k: update a1026.h header and improve firmware-loading code
-- new a1026.h kernel header that contains just the user-space API and is
   sanitized through bionic/libc/kernel/tools/clean_header.py
-- AudioHardware.cpp:
	-- replace vr_mode with vr_mode_enabled, and use 0 and 1 instead of
	   A1026_VR_MODE_DISABLED/ENABLED, which is not defined in the kernel
	   header;
	-- in doA1026_init(), replace a fread() of 1 byte with a read that as
	   much as possible from the firmware file in as few as possible passes
	   before we call into the kernel
	-- Replace the size of the on-stack f/w buffer with A1026_MAX_FW_SIZE,
	   which now comes from the kernel header
	-- Fix up some signed-unsigned comparison warnings on mBluetoothIdTx

Signed-off-by: Iliyan Malchev <malchev@google.com>
2009-11-09 16:06:57 -08:00
Eric Laurent
920fea9258 Fix issue 2226658: Audio path not updated when a headset is plugged or unplugged while recording.
Modified AudioPolicyManager::setDeviceConnectionState() so that the device on active audio input is updated when a device is connected or disconnected.
2009-11-09 11:57:59 -08:00
Jean-Michel Trivi
7e8a14316c am ba36d4fa: When configuring the A10026 for microphone input outside of a call, always use the A1026_xx_RECEIVER paths. This prevents the use of the A1026_xx_SPEAKER paths for voice reco modes for which the gain is too high.
Merge commit 'ba36d4fa33072ef14183365fffd289762c26905e' into eclair-plus-aosp

* commit 'ba36d4fa33072ef14183365fffd289762c26905e':
  When configuring the A10026 for microphone input outside of a call,
2009-11-09 11:57:14 -08:00
Jean-Michel Trivi
8df3ae0299 am 63af0f3c: Use new acoustic parameters when recording in voice recognition mode or for camcorder mode.
Merge commit '63af0f3cbd387e97bcaca82d1e22787c224d6430' into eclair-plus-aosp

* commit '63af0f3cbd387e97bcaca82d1e22787c224d6430':
  Use new acoustic parameters when recording in voice recognition mode
2009-11-09 11:57:11 -08:00
Jean-Michel Trivi
af1701fa98 When configuring the A10026 for microphone input outside of a call,
always use the A1026_xx_RECEIVER paths.
This prevents the use of the A1026_xx_SPEAKER paths for voice reco
modes for which the gain is too high.
2009-11-08 18:50:57 -08:00
Jean-Michel Trivi
2cf344031b Use new acoustic parameters when recording in voice recognition mode
or for camcorder mode.
2009-11-08 14:03:59 -08:00
Eric Laurent
a1ce12597f am 255bdedb: Fix issue 2243808: Audio input routing broken.
Merge commit '255bdedb2d7ebf4b14690776ff652df1de97fe95' into eclair-plus-aosp

* commit '255bdedb2d7ebf4b14690776ff652df1de97fe95':
  Fix issue 2243808: Audio input routing broken.
2009-11-06 08:24:55 -08:00
Eric Laurent
420a78df14 Fix issue 2243808: Audio input routing broken.
The wrong key was used when removing the voice recognition mode from parameters list after handling it in AudioStreamInMSM72xx::setParameters() causing the set routing parameter to be removed and ignored.
2009-11-06 03:02:05 -08:00
Jean-Michel Trivi
05802acf76 am ee9fa1a5: Fix typo in AudioPolicyManager log for voice recognition mode. This fixes a build error when the log for AudioPolicyManager for QSD8K is enabled.
Merge commit 'ee9fa1a5e85cb4a4bffea3bca901fa828f7012fb' into eclair-plus-aosp

* commit 'ee9fa1a5e85cb4a4bffea3bca901fa828f7012fb':
  Fix typo in AudioPolicyManager log for voice recognition mode.
2009-11-05 18:22:38 -08:00
Jean-Michel Trivi
8ea88d0389 Fix typo in AudioPolicyManager log for voice recognition mode.
This fixes a build error when the log for AudioPolicyManager for
QSD8K is enabled.
2009-11-05 17:58:40 -08:00
Eric Olsen
b1b9d91a4e am dbef679f: Merge change Id27d9e35 into eclair
Merge commit 'dbef679fccd8d44881642564c54baafa41da6c55' into eclair-plus-aosp

* commit 'dbef679fccd8d44881642564c54baafa41da6c55':
  Update lights to support the change in parameters passed by the framework
2009-11-05 16:28:54 -08:00
Android (Google) Code Review
9059d84a60 Merge change Id27d9e35 into eclair
* changes:
  Update lights to support the change in parameters passed by the framework
2009-11-05 19:23:58 -05:00
Eric Olsen
1220be4e5e Update lights to support the change in parameters passed by the framework
Signed-off-by: Eric Olsen <eolsen@android.com>
2009-11-05 15:32:32 -08:00
Jean-Michel Trivi
a96f9ab35d am 4bcd5b16: Use new A1026 header to us 1026 presets that match the driver. Update record configuration to use those presets.
Merge commit '4bcd5b16c66bc5c2bffe232f15f5cb83aea18318' into eclair-plus-aosp

* commit '4bcd5b16c66bc5c2bffe232f15f5cb83aea18318':
  Use new A1026 header to us 1026 presets that match the driver.
2009-11-05 12:54:32 -08:00
Jean-Michel Trivi
c932adcc2c Use new A1026 header to us 1026 presets that match the driver.
Update record configuration to use those presets.
2009-11-05 12:44:31 -08:00
Jean-Michel Trivi
969ee5df65 am 739de5f3: Fix bug 2194140 Add support for the voice recognition mode. The voice recognition mode is enabled when using the AUDIO_SOURCE_VOICE_RECOGNITION audio recording source. The intended behavior is to use the same microphone input as the default input, but to
Merge commit '739de5f36523862a7caa15590bd6b680b6cd2854' into eclair-plus-aosp

* commit '739de5f36523862a7caa15590bd6b680b6cd2854':
  Fix bug 2194140 Add support for the voice recognition mode.
2009-11-05 10:52:01 -08:00
Jean-Michel Trivi
f49a990555 Fix bug 2194140 Add support for the voice recognition mode.
The voice recognition mode is enabled when using the
AUDIO_SOURCE_VOICE_RECOGNITION audio recording source. The intended
behavior is to use the same microphone input as the default input,
but to configure the A1026 chip in the special mode tuned for
voice recognition, for the matching input. For testing purposes,
two settings will be available for each input, the choice of which
one is used will be dependent on the vr_uses_ns property.
The availability of the voice rec mode is dependent on the enable1026
system property.
Note that the final A1026 configuration modes are not used yet
(not available) but the ones to use are specified in the comments
of the AudioHardware::doAudience_A1026_Control() function at line
952 of AudioHardware.cpp for instance.
Upon availability of other presets, the enable1026 property could
be used to disable or enable even more of the 1026 features.
2009-11-05 10:32:48 -08:00
Eric Laurent
aa5c23e6e5 am d1dc8c30: Fix issue: no audio after media_server process crash while in call.
Merge commit 'd1dc8c30a969ec3539fc21b940789b2f23197756' into eclair-plus-aosp

* commit 'd1dc8c30a969ec3539fc21b940789b2f23197756':
  Fix issue: no audio after media_server process crash while in call.
2009-11-05 01:27:30 -08:00
Eric Laurent
850c6e0214 Fix issue: no audio after media_server process crash while in call.
Reset audio ctl driver voice mode when AudioHardware is initialized in case media_server process crashed while in call.
2009-11-05 00:56:21 -08:00
Eric Laurent
c072d1b099 am 63e2c0ab: Log for issue 2203561.
Merge commit '63e2c0ab3b3cfac68ed3832adfbf4e5a0b32ed8f' into eclair-plus-aosp

* commit '63e2c0ab3b3cfac68ed3832adfbf4e5a0b32ed8f':
  Log for issue 2203561.
2009-11-03 10:33:02 -08:00
Eric Laurent
3262f5a8b3 Log for issue 2203561.
Added detailed dump for AudioPolicyManager when AudioPolicyService is dumped.
2009-11-03 09:18:39 -08:00
Jean-Michel Trivi
83655b8325 am 10254cc3: HTC update: add attenuation to avoid distortion, and compensate in acoustic parameters.
Merge commit '10254cc35f5cb7ebe2c7ef452815486cb8e92a33' into eclair-plus-aosp

* commit '10254cc35f5cb7ebe2c7ef452815486cb8e92a33':
  HTC update: add attenuation to avoid distortion, and compensate in
2009-11-02 19:10:33 -08:00
Jean-Michel Trivi
541bf8c3ad HTC update: add attenuation to avoid distortion, and compensate in
acoustic parameters.
2009-11-02 15:01:45 -08:00
Eric Laurent
4e5029a3e1 am da9d5ab1: Fix issue 2194140: [Passion] Support Audience chip.
Merge commit 'da9d5ab10524c32d7949363a10fde1bec5fdf9fa' into eclair-plus-aosp

* commit 'da9d5ab10524c32d7949363a10fde1bec5fdf9fa':
  Fix issue 2194140: [Passion] Support Audience chip.
2009-11-02 12:40:33 -08:00
Eric Laurent
98ca4ba21d am 0f2f4d0a: Fix issue 2194140, Part 1.
Merge commit '0f2f4d0a60cf93a7a281e217408a4249715f5748' into eclair-plus-aosp

* commit '0f2f4d0a60cf93a7a281e217408a4249715f5748':
  Fix issue 2194140, Part 1.
2009-11-02 10:31:01 -08:00
Eric Laurent
d861f3a7a3 Fix issue 2194140: [Passion] Support Audience chip.
AudioHardware QSD8k:
- Add setParameters comment to control noise suppression states via new IOCTL A1026_SET_NS_STATE implemented in a1026 driver.
- Add support for new input device DEVICE_IN_BACK_MIC.
AudioPolicyManager:
- Add support for audio source AUDIO_SOURCE_CAMCORDER.
2009-11-02 05:26:06 -08:00
Eric Laurent
6bb9f88291 Fix issue 2194140, Part 1.
Submitted on behalf of HK Chen <hk_chen@htc.com>

1) implement ACDB dynamic update for 1) audio playback, 2) audio recording, 3) BT headsets.
2) implement A1026 hard reset recovery mechanism
2009-10-31 00:51:56 -07:00
Mathias Agopian
c369d93e95 am 87ea1dfa: fix[2222341] Soft reset while going back from camcorder settings
Merge commit '87ea1dfa60cf130fafdbab8e94cb2ce9ff8d0975' into eclair-plus-aosp

* commit '87ea1dfa60cf130fafdbab8e94cb2ce9ff8d0975':
  fix[2222341] Soft reset while going back from camcorder settings
2009-10-30 15:02:03 -07:00
Mathias Agopian
b73f40535f fix[2222341] Soft reset while going back from camcorder settings
add a way to convert a mapped "pushbuffer" buffer to a gralloc handle
which then can be safely used by surfaceflinger

also make sure to not send empty rectangles to the MDP.
2009-10-30 14:52:52 -07:00
Jean-Michel Trivi
d43526b1ba am e26fd757: Fix bug 2210203 where Music volume is reduced after reducing in-call volume. This is the combination of two issues: - on QSD8K, the voice volume affects all streams, even when not in call. This is fixed by setting the voice volume to unity gain whenever
Merge commit 'e26fd7576c0c0963ac7e11c249db8f56a8c08a92' into eclair-plus-aosp

* commit 'e26fd7576c0c0963ac7e11c249db8f56a8c08a92':
  Fix bug 2210203 where Music volume is reduced after reducing in-call volume.
2009-10-29 09:13:11 -07:00
Jean-Michel Trivi
b8dba8904e Fix bug 2210203 where Music volume is reduced after reducing in-call volume.
This is the combination of two issues:
- on QSD8K, the voice volume affects all streams, even when not in call.
 This is fixed by setting the voice volume to unity gain whenever
 exiting a call.
- another related issue was that when entering a call with no audio
 playing, the in-call volume would be at its max. This is due to
the audio driver resetting the gain to unity when creating a new
output. AudioPolicyManager::setPhoneState() would sometimes fail
to force the reset of the audio volumes when entering a call, causing
the driver to use the unity gain, not the in-call volume set by the
user. This is fixed by testing whether is call is starting or ending
independently from the logic to determine the new ouput device.
2009-10-28 17:24:53 -07:00
Dave Sparks
3c6102afd3 am 5d89308f: Add wakelock to audio HAL. Bug 2218158.
Merge commit '5d89308f2e1252eff2743bf823bf558dbb0de2fa' into eclair-plus-aosp

* commit '5d89308f2e1252eff2743bf823bf558dbb0de2fa':
  Add wakelock to audio HAL. Bug 2218158.
2009-10-27 17:14:12 -07:00
Dave Sparks
61e76b47a1 Add wakelock to audio HAL. Bug 2218158.
Applications are supposed to hold a wakelock. However, since 1.0,
the audio driver and/or HAL has held a partial wakelock. That means
that many apps will be broken if we don't hold a wakelock while
audio is playing. This patch holds a wakelock while the audio
driver is open and releases it when it goes to standby mode.
2009-10-27 16:27:04 -07:00
Eric Laurent
3f87274759 am 0bf3ac2c: do not merge - Fix for issue 2184627 cherry picked from eclair-mr2
Merge commit '0bf3ac2c797fc9e1a327f867d69bbb0b54a68ffa' into eclair-plus-aosp

* commit '0bf3ac2c797fc9e1a327f867d69bbb0b54a68ffa':
  do not merge - Fix for issue 2184627 cherry picked from eclair-mr2
2009-10-26 10:58:27 -07:00
Eric Laurent
52af604c93 do not merge - Fix for issue 2184627 cherry picked from eclair-mr2
Bluetooth A2DP suspend-resume improvements.

This change will reduce the occurence rate of A2DP sink suspend resume failures observed in issues 2184627, 2181005 and possibly 2189628.

Suspend A2DP output when phone state is not NORMAL and not only when it is RINGTONE.
Update A2DP suspend state when an A2DP or SCO device is connected or disconnected while phone state is not NORMAL.
2009-10-26 09:07:41 -07:00
Eric Laurent
faeabb29a5 am 7eda9410: Fix issue 2192181: AudioFlinger must provide separated methods to set VOICE_CALL stream volume and down link audio volume.
Merge commit '7eda9410e218b2f2ff3f776897fbc1b679b6132d' into eclair-plus-aosp

* commit '7eda9410e218b2f2ff3f776897fbc1b679b6132d':
  Fix issue 2192181: AudioFlinger must provide separated methods to set VOICE_CALL stream volume and down link audio volume.
2009-10-24 01:38:54 -07:00
Eric Laurent
7996f999be Fix issue 2192181: AudioFlinger must provide separated methods to set VOICE_CALL stream volume and down link audio volume.
Modified checkAndSetVolume() method to adjust VOICE_CALL, BLUETOOTH_SCO and DTMF stream volumes to match audio hardware behavior (never 0).
Also do the following adjustments on stream volumes:
- VOICE_CALL:
	if in call, force software volume to max to avoid applying the volume twice (software mixer + audio hardware)
	send setVoiceVolume() to set in call volume in audio hardware
- BLUETOOTH_SCO:
	send setVoiceVolume() with max value because volume is applied by BT headset and should not be also applied by audio hardware.
- DTMF:
	if in call and not using the BT SCO device, force software volume to max to avoid applying the volume twice (software mixer + audio hardware)
2009-10-21 08:19:36 -07:00
HK Chen
72278d4e00 am 3cb88645: qsd8k: fix set_mic_mute() in AudioHardware.
Merge commit '3cb8864598e72c04859f410bb03f242cf3965dbe' into eclair-plus-aosp

* commit '3cb8864598e72c04859f410bb03f242cf3965dbe':
  qsd8k: fix set_mic_mute() in AudioHardware.
2009-10-15 02:33:35 -07:00
HK Chen
b5075dd3df qsd8k: fix set_mic_mute() in AudioHardware.
Signed-off-by: Brian Swetland <swetland@google.com>
2009-10-15 01:23:48 -07:00
Eric Laurent
dd3deeed9d am ba8101e9: Merge change I34a989e8 into eclair
Merge commit 'ba8101e944ec0ffea2b89739667d3ce731d6e818' into eclair-plus-aosp

* commit 'ba8101e944ec0ffea2b89739667d3ce731d6e818':
  Fix issue 2172934: AudioHardware for msm7k: some file descriptor tests must be fixed.
2009-10-12 09:48:13 -07:00
Android (Google) Code Review
7c65dd73a3 Merge change I34a989e8 into eclair
* changes:
  Fix issue 2172934: AudioHardware for msm7k: some file descriptor tests must be fixed.
2009-10-12 12:42:51 -04:00
Jean-Michel Trivi
f91bd47a25 am 195d08b5: Fix bug 2172716. Align AudioPolicyManager code in msm7k/libaudio and msm7k/libaudio-qsd8k
Merge commit '195d08b5a1d93025464f7347280f182e5da7fda7' into eclair-plus-aosp

* commit '195d08b5a1d93025464f7347280f182e5da7fda7':
  Fix bug 2172716. Align AudioPolicyManager code in msm7k/libaudio and msm7k/libaudio-qsd8k
2009-10-12 09:03:37 -07:00