From 520bef6caf4186e8530c79a7ae206805f7fd063e Mon Sep 17 00:00:00 2001 From: tytung Date: Wed, 23 Mar 2011 01:37:38 +0800 Subject: [PATCH] msm: audio: 8k: Send ACDB configuration during device switch In the current code, for a device switch command, ACDB configuration is sent to Q6 only if there is any active tx/rx session. As per Q6 API, changing the code to send ACDB configuration after the PREPARE stage of the device switch even if there's no active tx/rx session. Change-Id: I895f5da5d23f586ae829c4856a5b39b4399422ee CRs-Fixed: 267703 Signed-off-by: Phani Kumar Allada --- arch/arm/mach-msm/qdsp6_1550/q6audio.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/arch/arm/mach-msm/qdsp6_1550/q6audio.c b/arch/arm/mach-msm/qdsp6_1550/q6audio.c index bd0d7e0e..d2016bac 100644 --- a/arch/arm/mach-msm/qdsp6_1550/q6audio.c +++ b/arch/arm/mach-msm/qdsp6_1550/q6audio.c @@ -2068,6 +2068,10 @@ static void do_rx_routing(uint32_t device_id, uint32_t acdb_id) _audio_rx_clk_reinit(device_id); _audio_rx_path_enable(1, acdb_id); } else { + qdsp6_devchg_notify(ac_control, ADSP_AUDIO_RX_DEVICE, device_id); + audio_update_acdb(device_id, acdb_id); + qdsp6_standby(ac_control); + qdsp6_start(ac_control); audio_rx_device_id = device_id; audio_rx_path_id = q6_device_to_path(device_id); } @@ -2092,6 +2096,10 @@ static void do_tx_routing(uint32_t device_id, uint32_t acdb_id) _audio_tx_clk_reinit(device_id); _audio_tx_path_enable(1, acdb_id); } else { + qdsp6_devchg_notify(ac_control, ADSP_AUDIO_TX_DEVICE, device_id); + audio_update_acdb(device_id, acdb_id); + qdsp6_standby(ac_control); + qdsp6_start(ac_control); audio_tx_device_id = device_id; audio_tx_path_id = q6_device_to_path(device_id); }