1. 29 7月, 2015 1 次提交
  2. 11 3月, 2015 1 次提交
  3. 31 1月, 2015 3 次提交
    • F
      usb: phy: phy-generic: Fix USB PHY gpio reset · 74379991
      Fabio Estevam 提交于
      Since commit e9f2cefb ("usb: phy: generic: migrate to gpio_desc") a
      kernel hang is observed on imx51-babbage board:
      
      [    1.392824] ci_hdrc ci_hdrc.1: doesn't support gadget
      [    1.397975] ci_hdrc ci_hdrc.1: EHCI Host Controller
      [    1.403205] ci_hdrc ci_hdrc.1: new USB bus registered, assigned bus number 1
      [    1.422335] ci_hdrc ci_hdrc.1: USB 2.0 started, EHCI 1.00
      [    1.432962] hub 1-0:1.0: USB hub found
      [    1.437119] hub 1-0:1.0: 1 port detected
      
      This hang happens because the reset GPIO stays at logic level 0.
      
      The USB PHY reset gpio is defined in the dts file as:
      
      reset-gpios = <&gpio2 5 GPIO_ACTIVE_LOW>;
      
      , which means it is active low, so what the gpio reset pin needs to do in this
      case is the following:
      
      - Go to logic level 0 to reset the USB PHY
      - Stay at 0 for a bit
      - Go back to logic level 1
      
      When switching to gpiod API we need to following according to
      Documentation/gpio/consumer.txt:
      
      "The first thing a driver must do with a GPIO is setting its direction. If no
      direction-setting flags have been given to gpiod_get*(), this is done by
      invoking one of the gpiod_direction_*() functions:
      
      	int gpiod_direction_input(struct gpio_desc *desc)
      	int gpiod_direction_output(struct gpio_desc *desc, int value)"
      
      Since no direction-setting flags have been given to devm_gpiod_get_optional()
      in our case, we need to use gpiod_direction_output to comply with the gpiod API.
      
      With this change the USB PHY reset performs a proper reset, the kernel boots
      fine and USB host is functional.
      Signed-off-by: NFabio Estevam <fabio.estevam@freescale.com>
      Signed-off-by: NFelipe Balbi <balbi@ti.com>
      74379991
    • R
      usb: phy: generic: fix the vbus interrupt request · 0f4ff5f1
      Robert Jarzmik 提交于
      Declare the interrupt as "one shot" so that it is masked until the end
      of the threaded handler. This prevents the irq core from spitting out an
      error :
        "Threaded irq requested with handler=NULL and !ONESHOT for irq 63"
      
      This was introduced by commit "usb: phy: generic: add vbus support".
      Signed-off-by: NRobert Jarzmik <robert.jarzmik@free.fr>
      Signed-off-by: NFelipe Balbi <balbi@ti.com>
      0f4ff5f1
    • R
      usb: phy: generic: fix the gpios to be optional · 9eb07977
      Robert Jarzmik 提交于
      All the gpios, ie. reset-gpios and vbus-detect-gpio, should be optional
      and not prevent the driver from working. Fix the regression in the
      behavior introduced by commit "usb: phy: generic: migrate to gpio_desc".
      Signed-off-by: NRobert Jarzmik <robert.jarzmik@free.fr>
      Tested-by: NFabio Estevam <fabio.estevam@freescale.com>
      Signed-off-by: NFelipe Balbi <balbi@ti.com>
      9eb07977
  4. 20 1月, 2015 1 次提交
  5. 13 1月, 2015 2 次提交
  6. 06 11月, 2014 1 次提交
  7. 04 11月, 2014 2 次提交
  8. 20 10月, 2014 1 次提交
  9. 22 4月, 2014 4 次提交
  10. 13 12月, 2013 1 次提交
  11. 26 11月, 2013 5 次提交
  12. 04 10月, 2013 1 次提交
  13. 01 10月, 2013 1 次提交
  14. 09 8月, 2013 2 次提交
  15. 30 7月, 2013 1 次提交
  16. 29 5月, 2013 1 次提交
  17. 22 5月, 2013 1 次提交
  18. 15 5月, 2013 1 次提交
  19. 18 3月, 2013 9 次提交
  20. 22 11月, 2012 1 次提交