diff mbox

ARM: pxa27x: fix ac97 controller warm reset code

Message ID 1356706349-3189-1-git-send-email-mikedunn@newsguy.com (mailing list archive)
State New, archived
Headers show

Commit Message

Mike Dunn Dec. 28, 2012, 2:52 p.m. UTC
This patch fixes some code that implements a work-around to a hardware bug in
the ac97 controller on the pxa27x.  A bug in the controller's warm reset
functionality requires that the mfp used by the controller as the AC97_RESET_n
line be temporarily reconfigured as a generic output gpio (AF0) and manually
held high for the duration of the warm reset cycle.  This is what was done in
the original code, but it was broken long ago by commit
fb1bf8cd13bfa7ed0364ab0d82f717fc020d35f6, which changed the mfp to a GPIO input
instead of a high output.

Signed-off-by: Mike Dunn <mikedunn@newsguy.com>
---
 arch/arm/mach-pxa/pxa27x.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

--
1.7.8.6

Comments

Robert Jarzmik Dec. 28, 2012, 6:28 p.m. UTC | #1
Mike Dunn <mikedunn@newsguy.com> writes:

> This patch fixes some code that implements a work-around to a hardware bug in
> the ac97 controller on the pxa27x.  A bug in the controller's warm reset
> functionality requires that the mfp used by the controller as the AC97_RESET_n
> line be temporarily reconfigured as a generic output gpio (AF0) and manually
> held high for the duration of the warm reset cycle.  This is what was done in
> the original code, but it was broken long ago by commit
> fb1bf8cd13bfa7ed0364ab0d82f717fc020d35f6, which changed the mfp to a GPIO input
> instead of a high output.
>
> Signed-off-by: Mike Dunn <mikedunn@newsguy.com>

Acked-by: Robert Jarzmik <robert.jarzmik@free.fr>

As a side note, shouldn't this patch (as the other one on ALSA), once reviewed,
be submitted to stable kernel ?

Cheers.
Sergei Shtylyov Dec. 28, 2012, 7:49 p.m. UTC | #2
Hello.

On 12/28/2012 05:52 PM, Mike Dunn wrote:

> This patch fixes some code that implements a work-around to a hardware bug in
> the ac97 controller on the pxa27x.  A bug in the controller's warm reset
> functionality requires that the mfp used by the controller as the AC97_RESET_n
> line be temporarily reconfigured as a generic output gpio (AF0) and manually
> held high for the duration of the warm reset cycle.  This is what was done in
> the original code, but it was broken long ago by commit
> fb1bf8cd13bfa7ed0364ab0d82f717fc020d35f6, which changed the mfp to a GPIO input

   Please also specify the summary of that commit in parens.

> instead of a high output.

> Signed-off-by: Mike Dunn <mikedunn@newsguy.com>

WBR, Sergei
Mike Dunn Dec. 28, 2012, 9:04 p.m. UTC | #3
On 12/28/2012 11:49 AM, Sergei Shtylyov wrote:
> Hello.
> 
> On 12/28/2012 05:52 PM, Mike Dunn wrote:
> 
>> This patch fixes some code that implements a work-around to a hardware bug in
>> the ac97 controller on the pxa27x.  A bug in the controller's warm reset
>> functionality requires that the mfp used by the controller as the AC97_RESET_n
>> line be temporarily reconfigured as a generic output gpio (AF0) and manually
>> held high for the duration of the warm reset cycle.  This is what was done in
>> the original code, but it was broken long ago by commit
>> fb1bf8cd13bfa7ed0364ab0d82f717fc020d35f6, which changed the mfp to a GPIO input
> 
>    Please also specify the summary of that commit in parens.


OK, will resend patch.

Thanks,
Mike
Mike Dunn Dec. 28, 2012, 9:07 p.m. UTC | #4
Hi Roert, thanks again.

On 12/28/2012 10:28 AM, Robert Jarzmik wrote:
> Mike Dunn <mikedunn@newsguy.com> writes:
> 
>> This patch fixes some code that implements a work-around to a hardware bug in
>> the ac97 controller on the pxa27x.  A bug in the controller's warm reset
>> functionality requires that the mfp used by the controller as the AC97_RESET_n
>> line be temporarily reconfigured as a generic output gpio (AF0) and manually
>> held high for the duration of the warm reset cycle.  This is what was done in
>> the original code, but it was broken long ago by commit
>> fb1bf8cd13bfa7ed0364ab0d82f717fc020d35f6, which changed the mfp to a GPIO input
>> instead of a high output.
>>
>> Signed-off-by: Mike Dunn <mikedunn@newsguy.com>
> 
> Acked-by: Robert Jarzmik <robert.jarzmik@free.fr>
> 
> As a side note, shouldn't this patch (as the other one on ALSA), once reviewed,
> be submitted to stable kernel ?


Dunno.  I'm kind of a newbie.  If the stable tree is for urgent fixes, well,
these have been broken for a long time.

Happy New Year!

Mike
diff mbox

Patch

diff --git a/arch/arm/mach-pxa/pxa27x.c b/arch/arm/mach-pxa/pxa27x.c
index 8047ee0..76221e4 100644
--- a/arch/arm/mach-pxa/pxa27x.c
+++ b/arch/arm/mach-pxa/pxa27x.c
@@ -47,9 +47,9 @@  void pxa27x_clear_otgph(void)
 EXPORT_SYMBOL(pxa27x_clear_otgph);

 static unsigned long ac97_reset_config[] = {
-	GPIO113_GPIO,
+	MFP_CFG_OUT(GPIO113, AF0, DRIVE_HIGH),
 	GPIO113_AC97_nRESET,
-	GPIO95_GPIO,
+	MFP_CFG_OUT(GPIO95, AF0, DRIVE_HIGH),
 	GPIO95_AC97_nRESET,
 };