[alsa-devel] [PATCH] ALSA: pxa2xx: fix ac97 cold reset for pxa27x
Robert Jarzmik
robert.jarzmik at free.fr
Sun Dec 30 14:12:43 CET 2012
Mike Dunn <mikedunn at newsguy.com> writes:
> On 12/28/2012 10:22 AM, Robert Jarzmik wrote:
>> Mike Dunn <mikedunn at newsguy.com> writes:
>>
>>> Currently, ac97 reset is broken on PXA27x. Through trial-and-error (the pxa270
>>> developer's manual is mostly incoherent on the topic of ac97 reset), I fixed it
>>> by setting the WARM_RST bit in the GCR register at the end of the cold reset,
>>> and then skipping the warm reset if the link is already up and running.
>>>
>>> It appears that setting the WARM_RST bit is a necessary final step during cold
>>> reset. I think that the PXA25x and PXA3xx may currently be working correctly
>>> because WARM_RST is set within the warm reset routine, and the codec drivers
>>> always follow a cold reset with a warm reset during their initialization. so
>>> this combination effectively completes a cold reset. This doesn't work on the
>>> PXA27x because its warm reset routine contains additional code for working
>>> around a hardware bug in the warm reset sequence, which causes the reset
>>> sequence to fail. I only have a PXA27x platform for testing, so this patch only
>>> affects the PXA27x.
>> If you've tested that and if it work, that's great news. I'll test it also to
>> crosscheck.
>
>
> Thanks. I'd really appreciate that. Yes, it works for me.
Ok, I tested it, through a suspend/resume cycle with a music played, and it
works, and the patch looks correct to me. So :
Tested-by: Robert Jarzmik <robert.jarzmik at free.fr>
Reviewed-by: Robert Jarzmik <robert.jarzmik at free.fr>
Cheers.
--
Robert
More information about the Alsa-devel
mailing list