5 Replies Latest reply on Apr 7, 2016 8:14 AM by dacac_1376886

    CY7C65632-28LTXC downstream power control

      We are using the CY7C65632-28LTXC in a new design. Power control for downstream ports is managed by AP2161DM8G-13 from Diodes Inc. The CY7C65632 is perminently connected to the USB host which is an Arm processor running a Linux 3.0.35 kernel.


      We are seeing a strange behaviour where power to the downstream ports is being disabled when no devices are connected to the CY7C65632.


      During boot, if at least one device is connected it will enumerate and power will remain active on all ports. If we remove the device after boot, power to the ports is disabled shortly after.


      If we run lsusb -v from the Linux command line, power will appear on the ports again for a short period of time. If a device is connected when power is present, the device will enumerate and power will remain active. If we then remove the device, power disappears again and no enumeration of devices occur until we run lsusb -v again.


      Running lsusb without the -v (verbose) switch does not activate power on the USB ports.


      Our theory is that when there is no power at the downstream USB ports, newly connected devices cannot be detected as the slave device doesn't see power and can't pull the D+ or D- lines up to initiate enumeration. lsusb -v must somehow wake the CY7C65632 chip up (perhaps to re-read device descriptors?), and during this process any connected slave devices are able to pull up the D+ / D- lines and trigger enumeration.


      It is interesting to note that as long as at least one device is connected and enumerated, all ports appear to continueworking until the last device is removed.


      We have monitored all of the over current pins and do not see them being asserted at any time during testing. This is confirmed by no over current messages appearing in the Linux logs.


      It seems unlikely that there is would be something wrong with the CY7C65632 chip, but also equally unlikely that Linux is advising the hub to power down the ports when no devices are connected, preventing detection of newly connected devices.

        • 1. Re: CY7C65632-28LTXC downstream power control





          1. Please make sure that the HUB is not disconnected inbetween the operation.




          2. Can you please share the schematics?







          • 2. Re: CY7C65632-28LTXC downstream power control

            It has been some time, but we are still seeing this issue.


            The hub is hardwired to the host, thus can't be disconnected.


            See attached for the schematic.

            • 3. Re: CY7C65632-28LTXC downstream power control





              As the HUB is directly connected to the processor it may be a bit difficult to debug.




              !)The power to the downstream ports will be lost only when the over current condition happens, host sends a clearfeature( port power) command or the power to the hub is lost when it is self power device.Please check the power source to the HUB whether it is available or not when there is no downstream port.




              When there is no downstream port the HUB will go to suspend mode and there won't be any clock at the crystal pins.


              Please check whether the hub is going to suspend mode or not when there is no downstream port.


              The voltage on the D+ would be around 3.2V and the voltage on D- would be 0V in suspend mode.Measure the voltage on the upstream data lines and check whether those are matching with the above values or not.







              • 4. Re: CY7C65632-28LTXC downstream power control



                We are using the CY7C65632-TQFP48 (4-port hub), In this hub data sheet given as each down stream port power controlled by PWR#(port power pins) When the hub is configured, the ports are not driven and the host may power the ports by sending a SetPortPower command for each port. how to send the SetPortPower command to hub.







                • 5. Re: CY7C65632-28LTXC downstream power control

                  I know this is an old thread but I had a look at your schematic as I am planning to use the CY7C65632-28LTXC on a new board. I have previously used the CY7C65640A-LFXC but it is now not recommended for new designs.


                  Did you manage to get to the root of your problems?


                  The only issue that I can see is a lack of pull-ups on the OVR signals.