]> git.baikalelectronics.ru Git - kernel.git/commit
powerpc/5200: add mpc5200_psc_ac97_gpio_reset
authorEric Millbrandt <emillbrandt@dekaresearch.com>
Sat, 7 Aug 2010 02:49:18 +0000 (20:49 -0600)
committerGrant Likely <grant.likely@secretlab.ca>
Sat, 7 Aug 2010 02:49:18 +0000 (20:49 -0600)
commitd47ca5711856ff27ad6eea36f91915faeaf0b033
tree4ca244d40929bac84b30f1c684253d9b5eb06630
parented3e4fa06d5511c156591a53650801dd1baa59ca
powerpc/5200: add mpc5200_psc_ac97_gpio_reset

Work around a silicon bug in the ac97 reset functionality of the
mpc5200(b).  The implementation of the ac97 "cold" reset is flawed.
If the sync and output lines are high when reset is asserted the
attached ac97 device may go into test mode.  Avoid this by
reconfiguring the psc to gpio mode and generating the reset manually.

From MPC5200B User's Manual:
"Some AC97 devices goes to a test mode, if the Sync line is high
during the Res line is low (reset phase). To avoid this behavior the
Sync line must be also forced to zero during the reset phase. To do
that, the pin muxing should switch to GPIO mode and the GPIO control
register should be used to control the output lines."

Signed-off-by: Eric Millbrandt <emillbrandt@dekaresearch.com>
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
arch/powerpc/include/asm/mpc52xx.h
arch/powerpc/include/asm/mpc52xx_psc.h
arch/powerpc/platforms/52xx/mpc52xx_common.c