1. 22 8月, 2013 1 次提交
    • S
      ARM: tegra: always enable USB VBUS regulators · 30ca2226
      Stephen Warren 提交于
      This fixes a regression exposed during the merge window by commit
      9f310ded "ARM: tegra: fix VBUS regulator GPIO polarity in DT"; namely that
      USB VBUS doesn't get turned on, so USB devices are not detected. This
      affects the internal USB port on TrimSlice (i.e. the USB->SATA bridge, to
      which the SSD is connected) and the external port(s) on Seaboard/
      Springbank and Whistler.
      
      The Tegra DT as written in v3.11 allows two paths to enable USB VBUS:
      
      1) Via the legacy DT binding for the USB controller; it can directly
         acquire a VBUS GPIO and activate it.
      
      2) Via a regulator for VBUS, which is referenced by the new DT binding
         for the USB controller.
      
      Those two methods both use the same GPIO, and hence whichever of the
      USB controller and regulator gets probed first ends up owning the GPIO.
      In practice, the USB driver only supports path (1) above, since the
      patches to support the new USB binding are not present until v3.12:-(
      
      In practice, the regulator ends up being probed first and owning the
      GPIO. Since nothing enables the regulator (the USB driver code is not
      yet present), the regulator ends up being turned off. This originally
      caused no problem, because the polarity in the regulator definition was
      incorrect, so attempting to turn off the regulator actually turned it
      on, and everything worked:-(
      
      However, when testing the new USB driver code in v3.12, I noticed the
      incorrect polarity and fixed it in commit 9f310ded "ARM: tegra: fix VBUS
      regulator GPIO polarity in DT". In the context of v3.11, this patch then
      caused the USB VBUS to actually turn off, which broke USB ports with VBUS
      control. I got this patch included in v3.11-rc1 since it fixed a bug in
      device tree (incorrect polarity specification), and hence was suitable to
      be included early in the rc series. I evidently did not test the patch at
      all, or correctly, in the context of v3.11, and hence did not notice the
      issue that I have explained above:-(
      
      Fix this by making the USB VBUS regulators always enabled. This way, if
      the regulator owns the GPIO, it will always be turned on, even if there
      is no USB driver code to request the regulator be turned on. Even
      ignoring this bug, this is a reasonable way to configure the HW anyway.
      
      If this patch is applied to v3.11, it will cause a couple pretty trivial
      conflicts in tegra20-{trimslice,seaboard}.dts when creating v3.12, since
      the context right above the added lines changed in patches destined for
      v3.12.
      Reported-by: NKyle McMartin <kmcmarti@redhat.com>
      Signed-off-by: NStephen Warren <swarren@nvidia.com>
      Signed-off-by: NOlof Johansson <olof@lixom.net>
      30ca2226
  2. 03 7月, 2013 1 次提交
  3. 29 5月, 2013 4 次提交
  4. 18 5月, 2013 1 次提交
    • V
      ARM: tegra: update device trees for USB binding rework · 4c94c8b5
      Venu Byravarasu 提交于
      This patch updates all Tegra board files so that they contain all the
      properties required by the updated USB DT binding. Note that this patch
      only adds the new properties and does not yet remove the old properties,
      in order to maintain bisectability. The old properties will be removed
      once the driver has been updated to assume the new bindings.
      Signed-off-by: NVenu Byravarasu <vbyravarasu@nvidia.com>
      [swarren: fixed some newly added regulator-name properties to better
      match schematic, avoided duplicate regulator-name on Whistler.]
      Signed-off-by: NStephen Warren <swarren@nvidia.com>
      4c94c8b5
  5. 05 4月, 2013 5 次提交
  6. 04 4月, 2013 1 次提交
  7. 12 3月, 2013 1 次提交
  8. 29 1月, 2013 3 次提交
  9. 17 11月, 2012 1 次提交
  10. 06 11月, 2012 1 次提交
  11. 20 9月, 2012 1 次提交
  12. 07 9月, 2012 1 次提交
    • S
      ARM: dt: tegra: whistler: add regulators · e7765b37
      Stephen Warren 提交于
      Whistler uses a Maxim 8907 regulator. Instantiate this.
      
      The voltage settings were derived from the schematic. The only exception
      is the BBAT voltage; the schematic says 1.2v, but the HW can't go that
      low, so use the HW default of 2.4v instead.
      
      Almost all regulators list all driven supply signal names in their
      regulator-names property. The exception is nvvdd_sv3, which is in turn
      named 12 more different names on the schematic, so these were omitted
      for brevity.
      Signed-off-by: NStephen Warren <swarren@nvidia.com>
      e7765b37
  13. 07 7月, 2012 1 次提交
    • S
      ARM: dt: tegra: add Whistler device tree file · c80efbae
      Stephen Warren 提交于
      Whistler is a highly configurable Tegra evaluation and development board.
      This change adds support for the following specific configuration:
      
      E1120 motherboard
      E1108 CPU board
      E1116 PMU board
      
      The motherboard configuration switches are set as follows:
      SW1=0 SW2=0 SW3=5
      S1/S2/S3/S4 all on, except S3 7/8 are off.
      
      Other combinations of daugher boards may work to varying degrees, but will
      likely require some SW adjustment.
      Signed-off-by: NStephen Warren <swarren@nvidia.com>
      c80efbae
  14. 21 6月, 2012 1 次提交
    • S
      ARM: dt: tegra: rename board files to match SoC · 702b0e4f
      Stephen Warren 提交于
      Most ARM ${board}.dts files are already named ${soc}-${board}.dts. This
      change modifies the Tegra board files to be named the same way for
      consistency.
      
      Once a related change is made in U-Boot, this will cause both U-Boot and
      the kernel to use the same names for the .dts files and SoC identifiers,
      thus allowing U-Boot's recently added "soc" and "board" environment
      variables to be used to construct the name of Tegra .dtb files, and hence
      allow board-generic U-Boot bootcmd scripts to be written.
      Signed-off-by: NStephen Warren <swarren@nvidia.com>
      702b0e4f
  15. 15 5月, 2012 5 次提交
  16. 04 5月, 2012 3 次提交
  17. 26 4月, 2012 2 次提交
    • S
      ARM: dt: tegra: pinmux changes for USB ULPI · 563da21b
      Stephen Warren 提交于
      Ensure that the USB ULPI signals are not tri-stated, and have no pull-
      up or pull-down.
      
      Ensure that the pingroup hosting the USB ULPI reset signal (GPIO PV0 or
      PV1 depending on the board, so UAC) is not tri-stated, and has no pull-
      up or pull-down.
      
      This change appears larger than it is due to the grouping and sorting of
      the pin configuration data.
      Signed-off-by: NStephen Warren <swarren@nvidia.com>
      563da21b
    • S
      ARM: tegra: add USB ULPI PHY reset GPIO to device tree · aa607ebf
      Stephen Warren 提交于
      ULPI PHYs have a reset signal, and different boards use a different GPIO
      for this task. Add a property to device tree to represent this.
      
      I'm not sure if adding this property to the EHCI controller node is
      entirely correct; perhaps eventually we should have explicit separate
      nodes for the various PHYs. However, we don't have that right now, so this
      binding seems like a reasonable choice.
      
      Cc: <devicetree-discuss@lists.ozlabs.org>
      Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
      Cc: <linux-usb@vger.kernel.org>
      Signed-off-by: NStephen Warren <swarren@nvidia.com>
      aa607ebf
  18. 19 4月, 2012 1 次提交
  19. 07 2月, 2012 1 次提交
  20. 08 12月, 2011 5 次提交
    • S
      arm/dt: tegra: Fix SDHCI nodes to match board files · 1292c129
      Stephen Warren 提交于
      Mark any SDHCI controllers that aren't registered by the board files as
      disabled in the device-tree files.
      
      In practice, these controllers:
      
      * Have nothing hooked up to them at all, or
      * For ports intended for SDIO usage, the drivers for anything that might
        be attached are not in the device-tree yet. If/when drivers appear, the
        SD/MMC port can be re-enabled.
      
      The only possible exception is TrimSlice's mico SD slot, but that wasn't
      enabled in the board files before anyway, and doesn't work when all the
      SDHCI controllers are enabled anyway.
      Signed-off-by: NStephen Warren <swarren@nvidia.com>
      Signed-off-by: NOlof Johansson <olof@lixom.net>
      1292c129
    • S
      arm/dt: tegra: Fix serial nodes to match board files · 31c1ec92
      Stephen Warren 提交于
      Mark any serial ports that aren't registered by the board files as disabled
      in the device-tree files.
      
      In practice, none of the now-disabled ports ended up succeeding device
      probing because of the missing clock-frequency property. However,
      explicitly marking the devices disabled has the advantage of squashing
      the dev_warn() the failed probe causes, and documenting that we intend
      the port not to be used, rather than accidentally left out the property.
      Signed-off-by: NStephen Warren <swarren@nvidia.com>
      Signed-off-by: NOlof Johansson <olof@lixom.net>
      31c1ec92
    • S
      arm/dt: tegra: Fix I2C nodes to match board files · 88950f3b
      Stephen Warren 提交于
      With board files, all I2C busses run at 400KHz. Fix the device-tree
      to be consistent with this. It's possible this is incorrect, but at
      least it keeps the board files and device-tree consistent.
      
      Also, disable any I2C controllers that the board files don't register,
      also for consistency.
      Signed-off-by: NStephen Warren <swarren@nvidia.com>
      Signed-off-by: NOlof Johansson <olof@lixom.net>
      88950f3b
    • S
      arm/dt: tegra: Remove /chosen node · 492f204d
      Stephen Warren 提交于
      The command-lines present in the existing /chosen node are not necessarily
      correct for all users. Ideally, we should simply use the command-line
      supplied by the boot-loader.
      
      In fact, using the boot-loader's cmdline is quite easy; either the
      bootloader fully supports DT, in which case it can modify the DT passed
      to the kernel to include its command-line, or CONFIG_APPENDED_DTB can
      be used in conjunction with CONFIG_ARM_ATAG_DTB_COMPAT, and the kernel
      will substitute the bootloader's command-line into the DT.
      Signed-off-by: NStephen Warren <swarren@nvidia.com>
      Signed-off-by: NOlof Johansson <olof@lixom.net>
      492f204d
    • S
      arm/dt: tegra: Remove /memreserve/ from device-tree files · 5a854265
      Stephen Warren 提交于
      There are no drivers in the kernel at present which can make use of the
      memory reserved by /memreserve/, so there is no point reserving it. Remove
      /memreserve/ to allow the user more memory. It's also unclear whether any
      future driver would actually require /memreserve/, or allocate memory
      through some other mechanism.
      Signed-off-by: NStephen Warren <swarren@nvidia.com>
      Signed-off-by: NOlof Johansson <olof@lixom.net>
      5a854265