1. 13 8月, 2013 1 次提交
    • J
      ARM: tegra: add LP1 suspend support for Tegra30 · e7a932b1
      Joseph Lo 提交于
      The LP1 suspend mode will power off the CPU, clock gated the PLLs and put
      SDRAM to self-refresh mode. Any interrupt can wake up device from LP1. The
      sequence when LP1 suspending:
      
      * tunning off L1 data cache and the MMU
      * storing some EMC registers, DPD (deep power down) status, clk source of
        mselect and SCLK burst policy
      * putting SDRAM into self-refresh
      * switching CPU to CLK_M (12MHz OSC)
      * tunning off PLLM, PLLP, PLLA, PLLC and PLLX
      * switching SCLK to CLK_S (32KHz OSC)
      * shutting off the CPU rail
      
      The sequence of LP1 resuming:
      
      * re-enabling PLLM, PLLP, PLLA, PLLC and PLLX
      * restoring the clk source of mselect and SCLK burst policy
      * setting up CCLK burst policy to PLLX
      * restoring DPD status and some EMC registers
      * resuming SDRAM to normal mode
      * jumping to the "tegra_resume" from PMC_SCRATCH41
      
      Due to the SDRAM will be put into self-refresh mode, the low level
      procedures of LP1 suspending and resuming should be copied to
      TEGRA_IRAM_CODE_AREA (TEGRA_IRAM_BASE + SZ_4K) when suspending. Before
      restoring the CPU context when resuming, the SDRAM needs to be switched
      back to normal mode. And the PLLs need to be re-enabled, SCLK burst policy
      be restored, CCLK burst policy be set in PLLX. Then jumping to
      "tegra_resume" that was expected to be stored in PMC_SCRATCH41 to restore
      CPU context and back to kernel.
      
      Based on the work by: Scott Williams <scwilliams@nvidia.com>
      Signed-off-by: NJoseph Lo <josephl@nvidia.com>
      Signed-off-by: NStephen Warren <swarren@nvidia.com>
      e7a932b1
  2. 23 5月, 2013 1 次提交
  3. 10 4月, 2013 1 次提交
  4. 08 4月, 2013 1 次提交
  5. 20 3月, 2013 1 次提交
  6. 12 3月, 2013 2 次提交
  7. 30 1月, 2013 1 次提交
  8. 29 1月, 2013 5 次提交
  9. 16 11月, 2012 5 次提交
  10. 17 9月, 2012 1 次提交
  11. 15 9月, 2012 5 次提交
    • S
      ARM: tegra: remove dead code · bab53ce3
      Stephen Warren 提交于
      Now that all boards are converted to device tree, devices.[ch] and
      board-pinmux.[ch] are no longer used. So, remove them.
      
      The only exception is the EHCI platform data in devices.h. Move that
      data to board-dt-tegra20.c - the only places it's used.
      Signed-off-by: NStephen Warren <swarren@nvidia.com>
      bab53ce3
    • L
      ARM: dt: tegra: harmony: add regulators · 3cc404de
      Laxman Dewangan 提交于
      Harmony uses a TPS6586x regulator. Instantiate this, and hook up a
      couple of fixed GPIO-controlled regulators too.
      
      Based on Ventana regulator patch by Stephen Warren <swarren@nvidia.com>
      and converted to Harmony.
      
      swarren made the following changes:
      * Added ldo0 regulator configuration to device tree, and updated
        board-harmony-pcie.c for the new regulator name.
      * Fixed vdd_1v05's voltage from 10.5V to 1.05V.
      * Modified board-harmony-pcie.c to obtain the en_vdd_1v05 GPIO number at
        run-time from device tree instead of hard-coding it.
      * Removed board-harmony{-power.c,.h} now that they're unused.
      * Disabled vdd_1v05 regulator; the code in board-harmony-pcie.c hijacks
        this GPIO for now. This will be fixed when the PCIe driver is re-
        written as a driver. The code can't regulator_get("vdd_1v05") right
        now, because the vdd_1v05 regulator's probe gets deferred due to its
        supply being the PMIC, which gets probed after the regulator the first
        time around, and this dependency is only resolved by repeated probing,
        which happens when deferred_probe_initcall() is called, which happens
        in a late initcall, whose runtime order relative to harmony_pcie_init()
        is undefined, since that's also called from a late initcall.
      * Removed unused harmony_pcie_initcall().
      Signed-off-by: NLaxman Dewangan <ldewangan@nvidia.com>
      Signed-off-by: NStephen Warren <swarren@nvidia.com>
      3cc404de
    • S
      ARM: tegra: remove board (but not DT) support for Harmony · bb25af81
      Stephen Warren 提交于
      Harmony can be booted using device tree with equal functionality as when
      booted using a board file. Remove as much of the board file as is
      possible, since it's no longer needed.
      
      Two special-cases are still left in board-dt-tegra20.c, since the Tegra
      PCIe driver doesn't support device tree yet, and the Harmony .dts file
      doesn't yet describe regulators which are needed for PCIe. This logic is
      now enabled unconditionally rather than via CONFIG_MACH_HARMONY. While
      this is more code than other boards, it's still unlikely to be much of a
      problem, and both regulators and PCIe should be supported via device tree
      in the near future, allowing the remaining code to be removed.
      Signed-off-by: NStephen Warren <swarren@nvidia.com>
      bb25af81
    • S
      ARM: tegra: remove board (but not DT) support for Paz00 · cff1dfbf
      Stephen Warren 提交于
      Paz00 (Toshiba AC100) can be booted using device tree with equal
      functionality as when booted using a board file. Remove as much of the
      board file as is possible, since it's no longer needed.
      
      One special-case is still left in board-dt-tegra20.c, since there is no
      way to create a WiFi rfkill device from device tree yet. This logic is
      now enabled unconditionally rather than via CONFIG_MACH_PAZ00. The extra
      cases where it's enabled (.configs which did not enable Paz00 support)
      shouldn't impact much since the amount of code is tiny.
      Signed-off-by: NStephen Warren <swarren@nvidia.com>
      Acked-By: NMarc Dietrich <marvin24@gmx.de>
      cff1dfbf
    • S
      ARM: tegra: remove board (but not DT) support for TrimSlice · be6a9194
      Stephen Warren 提交于
      TrimSlice can be booted using device tree with equal functionality as
      when booted using a board file. Remove the board file since it's no
      longer needed.
      
      One special-case is still left in board-dt-tegra20.c, since the Tegra
      PCIe driver doesn't support device tree yet. This logic is now enabled
      by CONFIG_TEGRA_PCI rather than via CONFIG_MACH_TRIMSLICE. The extra
      cases where it's enabled (.configs which did not enable TrimSlice
      support) shouldn't impact much since the amount of code is tiny.
      Signed-off-by: NStephen Warren <swarren@nvidia.com>
      be6a9194
  12. 14 9月, 2012 2 次提交
  13. 07 9月, 2012 3 次提交
  14. 05 9月, 2012 1 次提交
  15. 07 7月, 2012 1 次提交
  16. 21 6月, 2012 3 次提交
    • S
      ARM: tegra: remove Seaboard board files · 98a1405e
      Stephen Warren 提交于
      The Seaboard device tree supports all the features that the Seaboard
      board files support. Hence, there's no need to keep the board files
      around any more; all users should convert to device tree.
      
      MACH_KAEN and MACH_WARIO are also removed. While tegra-seaboard.dts
      doesn't support those explicitly, it would be trivial to create device
      trees for those boards if anyone cares.
      
      The Seaboard device tree is now compiled if Tegra2 support is enabled,
      rather than when Seaboard support is enabled.
      Signed-off-by: NStephen Warren <swarren@nvidia.com>
      98a1405e
    • S
      ARM: tegra: remove CONFIG_MACH_TEGRA_DT · 2c95b7e0
      Stephen Warren 提交于
      * Make ARCH_TEGRA select USE_OF; DT is the way forward.
      * Build board-dt-tegra*.c when the relevant Tegra SoC support is enabled,
        rather than requiring a specific config option for this.
      * The board-specific config options already build board-*-pinmux.o, and
        when booting from device tree these files are no longer needed, so we
        can remove some Makefile commands related to those files.
      Signed-off-by: NStephen Warren <swarren@nvidia.com>
      2c95b7e0
    • W
      ARM: tegra: build powergate unconditionally · 95ef9958
      Wolfram Sang 提交于
      powergate functions are needed for tegra30 as well (see common.c), so
      build it always. Fixes:
      
      arch/arm/mach-tegra/built-in.o: In function `tegra30_init_early':
      apbio.c:(.init.text+0x78): undefined reference to `tegra_powergate_init'
      
      (using "allnoconfig" with tegra30 enabled)
      Signed-off-by: NWolfram Sang <w.sang@pengutronix.de>
      Signed-off-by: NStephen Warren <swarren@nvidia.com>
      95ef9958
  17. 19 4月, 2012 1 次提交
  18. 13 3月, 2012 1 次提交
  19. 05 3月, 2012 1 次提交
  20. 27 2月, 2012 3 次提交