From 5d63776a24cb3de9f5ddbfbfb13ce03e50264c03 Mon Sep 17 00:00:00 2001 From: Michael Sevakis Date: Sun, 11 Mar 2007 05:04:48 +0000 Subject: Reenable aynchronous audio init stage. Really just single stage with aynchronous enabling of outputs. Keeps audio_init last so prior init steps can use the audiobuffer in any desired way. Audio will be fully initialized by the time the UI is entered. Playback of voice or audio will be delayed properly until audio hardware is ready. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12714 a1c6a512-1295-4272-9138-f99709370657 --- firmware/drivers/tlv320.c | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'firmware/drivers/tlv320.c') diff --git a/firmware/drivers/tlv320.c b/firmware/drivers/tlv320.c index a88eae5f26..c0f28d31d9 100644 --- a/firmware/drivers/tlv320.c +++ b/firmware/drivers/tlv320.c @@ -99,8 +99,18 @@ void audiohw_init(void) tlv320_write_reg(REG_DAIF, DAIF_IWL_16 | DAIF_FOR_I2S); tlv320_write_reg(REG_DIA, DIA_ACT); audiohw_set_frequency(-1); /* default */ +} + +/** + * Switch outputs ON + */ +void audiohw_postinit(void) +{ /* All ON except ADC, MIC and LINE */ + sleep(HZ); tlv320_write_reg(REG_PC, PC_ADC | PC_MIC | PC_LINE); + sleep(HZ/4); + audiohw_mute(false); } /** -- cgit v1.2.3