Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754872AbbGYNRU (ORCPT ); Sat, 25 Jul 2015 09:17:20 -0400 Received: from smtp-out-144.synserver.de ([212.40.185.144]:1053 "EHLO smtp-out-144.synserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754331AbbGYNRT (ORCPT ); Sat, 25 Jul 2015 09:17:19 -0400 X-SynServer-TrustedSrc: 1 X-SynServer-AuthUser: lars@metafoo.de X-SynServer-PPID: 26033 Message-ID: <55B38C59.8060001@metafoo.de> Date: Sat, 25 Jul 2015 15:17:13 +0200 From: Lars-Peter Clausen User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Icedove/31.7.0 MIME-Version: 1.0 To: =?UTF-8?B?UGFsaSBSb2jDoXI=?= , Jarkko Nikula , Peter Ujfalusi CC: linux-kernel@vger.kernel.org, linux-omap@vger.kernel.org, Pavel Machek , Sebastian Reichel , Aaro Koskinen , Tony Lindgren , Nishanth Menon Subject: Re: Nokia N900 - audio TPA6130A2 problems References: <201507251228.27128@pali> In-Reply-To: <201507251228.27128@pali> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1442 Lines: 38 On 07/25/2015 12:28 PM, Pali Rohár wrote: > Hello, > > sometimes after rebooting Nokia N900 initializing alsa audio fails. > Here output from dmesg log when it happen: > > [ 6.925140] tpa6130a2 2-0060: Write failed > [ 6.929534] tpa6130a2 2-0060: Failed to initialize chip > [ 6.935272] tpa6130a2: probe of 2-0060 failed with error -121 > [ 7.624237] rx51-audio n900-audio: Failed to add TPA6130A2 controls > [ 7.635101] rx51-audio n900-audio: ASoC: failed to init TLV320AIC34: -19 > [ 7.645874] rx51-audio n900-audio: ASoC: failed to instantiate card -19 > [ 7.665740] rx51-audio n900-audio: snd_soc_register_card failed (-19) > [ 8.063049] ALSA device list: > [ 8.070343] No soundcards found. > > Any idea what to do? Looks like the chip is not responding. Try to add a small delay after powerup to give the device to be fully ready, something like the following: --- a/sound/soc/codecs/tpa6130a2.c +++ b/sound/soc/codecs/tpa6130a2.c @@ -152,6 +152,8 @@ static int tpa6130a2_power(u8 power) if (data->power_gpio >= 0) gpio_set_value(data->power_gpio, 1); + msleep(5); + data->power_state = 1; ret = tpa6130a2_initialize(); if (ret < 0) { -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/