Skip to content
Snippets Groups Projects
  1. Mar 21, 2016
  2. Mar 20, 2016
    • Tom Rini's avatar
      83d95b67
    • Stefan Roese's avatar
      arm: socfpga: sr1500: Misc updates (SPI speed, env location) · 93d9fc26
      Stefan Roese authored
      
      This patch makes the following changes to the SR1500 board port:
      
      - Update defconfig to support SPI NOR (use make savedefconfig).
      - Increase SPI speed to a maximum of 100MHz for faster system
        bootup.
      - Change environment location, so that its not between SPL and
        main U-Boot. This way the combined SPL / U-Boot image can
        be used for updates.
      
      Signed-off-by: default avatarStefan Roese <sr@denx.de>
      Cc: Marek Vasut <marex@denx.de>
      93d9fc26
    • Stefan Roese's avatar
      arm: socfpga: Allow boards to define a custom environment size · ead2fb29
      Stefan Roese authored
      
      This patch makes it possible that boards can define a board-specific env
      size. This is used by the SR1500 SoCFPGA board port.
      
      Signed-off-by: default avatarStefan Roese <sr@denx.de>
      Cc: Chin Liang See <clsee@altera.com>
      Cc: Dinh Nguyen <dinguyen@opensource.altera.com>
      Cc: Marek Vasut <marex@denx.de>
      ead2fb29
    • Marek Vasut's avatar
      arm: socfpga: Fix SR1500 env position · b72041cc
      Marek Vasut authored
      
      Move the inclusion of the common socfpga configuration file further
      down in the sr1500 configuration, so that the socfpga_common.h can
      check if environment is in SPI NOR and it's location is defined and
      if it is not, define default location.
      
      This fixes "arm: socfpga: Enabling U-Boot environment support in QSPI"
      which introduced a minor warning.
      
      Signed-off-by: default avatarMarek Vasut <marex@denx.de>
      Cc: Chin Liang See <clsee@altera.com>
      Cc: Dinh Nguyen <dinguyen@opensource.altera.com>
      Cc: Dinh Nguyen <dinh.linux@gmail.com>
      Cc: Pavel Machek <pavel@denx.de>
      Cc: Marek Vasut <marex@denx.de>
      Cc: Stefan Roese <sr@denx.de>
      b72041cc
    • Chin Liang See's avatar
      arm: socfpga: Enabling U-Boot environment support in QSPI · ec8b7528
      Chin Liang See authored
      
      Enabling the support of storing U-Boot environment
      within serial NOR flash. By default, its still
      store into SDMMC
      
      Signed-off-by: default avatarChin Liang See <clsee@altera.com>
      Cc: Dinh Nguyen <dinguyen@opensource.altera.com>
      Cc: Dinh Nguyen <dinh.linux@gmail.com>
      Cc: Pavel Machek <pavel@denx.de>
      Cc: Marek Vasut <marex@denx.de>
      Cc: Stefan Roese <sr@denx.de>
      ec8b7528
    • Ted Chen's avatar
      usb: xhci: Fix vendor command error if the request type is USB_REQ_SET_ADDRESS... · 1b108880
      Ted Chen authored
      usb: xhci: Fix vendor command error if the request type is USB_REQ_SET_ADDRESS or USB_REQ_SET_CONFIGURATION.
      
      Add test into xhci_submit_control_message for usb requesttype in USB
      vendor request being of standardized type. This fixes detection of
      certain USB fixes, for example Ethernet, USB 3.0 port. Non standardized
      requesttype in USB vendor request will be ignored.
      
      Signed-off-by: default avatarTed Chen <tedchen@realtek.com>
      Tested-by: default avatarAnand Moon <linux.amoon@gmail.com>
      1b108880
    • Stefan Roese's avatar
      usb: Change power-on / scanning timeout handling · c998da0d
      Stefan Roese authored
      
      This patch changes the USB port scanning procedure and timeout
      handling in the following ways:
      
      a)
      The power-on delay in usb_hub_power_on() is now reduced to a value of
      max(100ms, "hub->desc.bPwrOn2PwrGood * 2"). The code does not wait
      using mdelay, instead usb_hub_power_on() will wait before querying
      the device in the scanning loop later. The total timeout for this
      hub, which is 1 second + "hub->desc.bPwrOn2PwrGood * 2" is calculated
      and will be used in the following per-port scanning loop as the timeout
      to detect active USB devices on this hub.
      
      b)
      Don't delay the minimum delay (for power to stabilize) in
      usb_hub_power_on(). Instead skip querying these devices in the scannig
      loop until the delay time is reached.
      
      c)
      The ports are now scanned in a quasi parallel way. The current code did
      wait for each (unconnected) port to reach its timeout and only then
      continue with the next port. This patch now changes this to scan all
      ports of all USB hubs quasi simultaneously. For this, all ports are added
      to a scanning list. This list is scanned until all ports are ready
      by either a) reaching the connection timeout (calculated earlier), or
      by b) detecting a USB device. This results in a faster USB scan time as
      the recursive scanning of USB hubs connected to the hub that's currently
      being scanned will start earlier.
      
      One small functional change to the original code is, that ports with
      overcurrent detection will now get rescanned multiple times
      (PORT_OVERCURRENT_MAX_SCAN_COUNT).
      
      Without this patch:
      starting USB...
      USB0:   USB EHCI 1.00
      scanning bus 0 for devices... 9 USB Device(s) found
      
      time: 20.163 seconds
      
      With this patch:
      starting USB...
      USB0:   USB EHCI 1.00
      scanning bus 0 for devices... 9 USB Device(s) found
      
      time: 1.822 seconds
      
      So ~18.3 seconds of USB scanning time reduction.
      
      Signed-off-by: default avatarStefan Roese <sr@denx.de>
      Acked-by: default avatarHans de Goede <hdegoede@redhat.com>
      Tested-by: default avatarStephen Warren <swarren@nvidia.com>
      c998da0d
    • Stefan Roese's avatar
      usb: Don't reset the USB hub a 2nd time · 3ed9eb93
      Stefan Roese authored
      
      Debugging has shown, that all USB hubs are being reset twice while
      USB scanning. This introduces additional delays and makes USB scanning
      even more slow. Testing has shown that this 2nd USB hub reset doesn't
      seem to be necessary.
      
      This patch now removes this 2nd USB hub reset. Resulting in faster USB
      scan time. Here the current numbers:
      
      Without this patch:
      => time usb start
      starting USB...
      USB0:   USB EHCI 1.00
      scanning bus 0 for devices... 9 USB Device(s) found
      
      time: 24.003 seconds
      
      With this patch:
      => time usb start
      starting USB...
      USB0:   USB EHCI 1.00
      scanning bus 0 for devices... 9 USB Device(s) found
      
      time: 20.392 seconds
      
      So ~3.6 seconds of USB scanning time reduction.
      
      Signed-off-by: default avatarStefan Roese <sr@denx.de>
      Cc: Simon Glass <sjg@chromium.org>
      Acked-by: default avatarHans de Goede <hdegoede@redhat.com>
      Tested-by: default avatarStephen Warren <swarren@nvidia.com>
      Cc: Marek Vasut <marex@denx.de>
      3ed9eb93
    • Stefan Roese's avatar
      usb: Remove 200 ms delay in usb_hub_port_connect_change() · 2ef117fe
      Stefan Roese authored
      
      This patch removes 2 mdelay(200) calls from usb_hub_port_connect_change().
      These delays don't seem to be necessary. At least not in my tests. Here
      the number for a custom x86 Bay Trail board (not in mainline yet) with
      a quite large and complex USB hub infrastructure.
      
      Without this patch:
      starting USB...
      USB0:   USB EHCI 1.00
      scanning bus 0 for devices... 9 USB Device(s) found
      
      time: 28.415 seconds
      
      With this patch:
      starting USB...
      USB0:   USB EHCI 1.00
      scanning bus 0 for devices... 9 USB Device(s) found
      
      time: 24.003 seconds
      
      So ~4.5 seconds of USB scanning time reduction.
      
      Signed-off-by: default avatarStefan Roese <sr@denx.de>
      Cc: Simon Glass <sjg@chromium.org>
      Acked-by: default avatarHans de Goede <hdegoede@redhat.com>
      Tested-by: default avatarStephen Warren <swarren@nvidia.com>
      Cc: Marek Vasut <marex@denx.de>
      2ef117fe
    • Stefan Roese's avatar
      usb: legacy_hub_port_reset(): Speedup hub reset handling · f7f60100
      Stefan Roese authored
      
      Start with a short USB hub reset delay of 20ms. This can be enough for
      some configurations.
      
      The 2nd delay at the end of the loop is completely removed. Since the
      delay hasn't been long enough, a longer delay time of 200ms is assigned
      and will be used in the next loop round.
      
      This hub reset handling is also used in the v4.4 Linux USB driver,
      hub_port_reset().
      
      Signed-off-by: default avatarStefan Roese <sr@denx.de>
      Cc: Simon Glass <sjg@chromium.org>
      Acked-by: default avatarHans de Goede <hdegoede@redhat.com>
      Tested-by: default avatarStephen Warren <swarren@nvidia.com>
      Cc: Marek Vasut <marex@denx.de>
      f7f60100
  3. Mar 18, 2016
  4. Mar 17, 2016
Loading