[PATCH] mpc83xx/usb.c: fix usb mux setup for mpc834x

Kumar Gala galak at kernel.crashing.org
Thu Jun 11 13:32:39 EST 2009


On Jun 9, 2009, at 6:43 AM, Peter Korsgaard wrote:

> usb0 and usb1 mux settings in the sicrl register were swapped (twice!)
> in mpc834x_usb_cfg(), leading to various strange issues with fsl-ehci
> and full speed devices.
>
> The USB port config on mpc834x is done using 2 muxes: Port 0 is always
> used for MPH port 0, and port 1 can either be used for MPH port 1 or  
> DR
> (unless DR uses TMDI phy or OTG, then it uses both ports) - See 8349  
> RM
> figure 1-4..
>
> mpc8349_usb_cfg() had this inverted for the DR, and it also had the  
> bit
> positions of the usb0 / usb1 mux settings swapped. It would basically
> work if you specified port1 instead of port0 for the MPH controller  
> (and
> happened to use ULPI phys), which is what all the 834x dts have done,
> even though that configuration is physically invalid.
>
> Instead fix mpc8349_usb_cfg() and adjust the dts files to match  
> reality.
>
> Signed-off-by: Peter Korsgaard <jacmet at sunsite.dk>
> ---
> arch/powerpc/boot/dts/asp834x-redboot.dts |    2 +-
> arch/powerpc/boot/dts/mpc8349emitx.dts    |    2 +-
> arch/powerpc/boot/dts/mpc834x_mds.dts     |    2 +-
> arch/powerpc/boot/dts/sbc8349.dts         |    2 +-
> arch/powerpc/platforms/83xx/mpc83xx.h     |    4 ++--
> arch/powerpc/platforms/83xx/usb.c         |   10 +++++-----
> 6 files changed, 11 insertions(+), 11 deletions(-)

applied.. Please remind me to send this linux-stable for .30 and .29

- k


More information about the Linuxppc-dev mailing list