[PATCH] ohci-pxa27x: Allow NOCP and OCPM to be cleared

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I had a bit of trouble getting USB host working on a PXA320 platform,
and the patch below fixes it for me.  The trouble is that OCPM is set
after a reset, and the existing code didn't clear it since it only ORs
in bits it wants.  The PXA3xx docs say that OCPM must be cleared.  I put
in the code to clear NOCP when necessary while I was at it.

Without this fix, I got oodles of these messages:

hub 1-0:1.0: over-current change on port 1



diff --git a/drivers/usb/host/ohci-pxa27x.c b/drivers/usb/host/ohci-pxa27x.c
index e294d43..6b182be 100644
--- a/drivers/usb/host/ohci-pxa27x.c
+++ b/drivers/usb/host/ohci-pxa27x.c
@@ -177,9 +177,13 @@ static inline void pxa27x_setup_hc(struct
pxa27x_ohci *ohci,

        if (inf->flags & NO_OC_PROTECTION)
                uhcrhda |= UHCRHDA_NOCP;
+       else
+               uhcrhda &= ~UHCRHDA_NOCP;

        if (inf->flags & OC_MODE_PERPORT)
                uhcrhda |= UHCRHDA_OCPM;
+       else
+               uhcrhda &= ~UHCRHDA_OCPM;

        if (inf->power_on_delay) {
                uhcrhda &= ~UHCRHDA_POTPGT(0xff);


--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux