[alsa-devel] [PATCH 5/7] ASoC: tegra: add ac97 host driver

Stephen Warren swarren at wwwdotorg.org
Thu Dec 20 21:19:43 CET 2012


On 12/20/2012 01:10 PM, Lucas Stach wrote:
> Am Donnerstag, den 20.12.2012, 12:44 -0700 schrieb Stephen Warren:
>> On 12/19/2012 04:17 PM, Lucas Stach wrote:
>>> This adds the driver for the Tegra 2x AC97 host controller.

>>> +static void tegra20_ac97_codec_warm_reset(struct snd_ac97 *ac97)
>>> +{
>>> +	u32 readback;
>>> +	unsigned long timeout;
>>> +
>>> +	/*
>>> +	 * although sync line is driven by the DAC pad group warm reset using
>>> +	 * the controller cmd is not working, have to toggle sync line
>>> +	 * manually.
>>> +	 */
>>> +	gpio_request(workdata->sync_gpio, "codec-sync");
>>
>> Hmm. There's an AC'97 command to reset the CODEC and we don't implement
>> it? Uggh.
>
> As far as I could figure from the downstream register doc there is a
> command implemented in the host controller that's supposed to do the
> warm reset, but in my testing it didn't work. Sadly I have not received
> any documentation about the host controller from NVIDIA up until now, so
> I don't now if we could make this work somehow. Bug Submission ID#:
> 196075

What system was that bug submitted into? It's not a regular NVIDIA
internal bug number. I'll see who I can ask about this feature...

>>> +	ac97->sync_gpio = of_get_named_gpio(pdev->dev.of_node,
>>> +					    "nvidia,codec-sync-gpio", 0);
>>> +	if (!gpio_is_valid(ac97->sync_gpio)) {
>>> +		dev_err(&pdev->dev, "no codec-sync GPIO supplied\n");
>>> +		goto err_clk_put;
>>> +	}
>>
>> I don't know what this is, so I'll ask if it's strictly required too.
>
> Until we manage to get the host controller warm reset command working
> this is fixed to be the _FS line of the DAP connected to the codec, so
> strictly required.

I'd like to investigate whether the warm reset command can be made to
work before actually committing to a DT binding that requires this GPIO
to be specified; the DT binding is supposed to be basically static.


More information about the Alsa-devel mailing list