android_kernel_google_msm/arch/arm/mach-tegra/include/mach
Stephen Warren 48f2eceefb arm/tegra: pinmux: ioremap registers
Use ioremap to obtain access to registers instead of using static
mappings. This reduces the number of users of the static mappings, which
will eventually allow them to be removed.

Note that on Tegra30, the number of register "banks" will decrease to 2,
and the packing of specific bits into registers will change significantly.
That's why this change adds the "*_bank" fields to the pingroup tables,
rather than implementing some more hard-coded scheme.

Also, completely remove the implementation of suspend/resume; Tegra doesn't
yet support suspend/resume, and the implementation is complex for the
general pinmux driver:

* Not all registers are used within each bank, so we probably shouldn't
  just iterate over every register in the bank, and save/restore it,
  since that would mean touching undefined registers.

* Registers are shared between pingroups, so we can't simply iterate over
  each pingroup, and save/restore the registers it uses.

It'd probably be best have probe() calculate a bitmask of actually-used
registers for each bank, and have suspend/resume iterate over those
bitmaps.

Oh, and Real Soon Now, I should be looking into converting this driver to
the new pinmux/pinctrl subsystem, so I didn't want to put too much work
into the current incarnation.

v2: s/space/bank/ to match comments on reg_* fields in pinmux.h.
    Re-order bank/reg parameters to pg_readl/pg_writel.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
2011-10-13 15:04:53 -07:00
..
clk.h ARM: tegra: clock: Add function to set SDMMC tap delay 2011-02-21 00:16:47 -08:00
debug-macro.S ARM: tegra: Centralize macros to define debug uart base 2011-02-09 21:56:59 -08:00
dma.h Fix common misspellings 2011-03-31 11:26:23 -03:00
entry-macro.S ARM: GIC: private a standard get_irqnr_preamble assembler macro 2010-12-14 19:21:47 +00:00
gpio.h ARM: tegra: add tegra_gpio_table and tegra_gpio_config 2011-02-22 17:27:11 -08:00
io.h ARM: io: make iounmap() a simple macro 2010-12-08 13:57:04 +00:00
iomap.h ARM: tegra: add devices.c entries for audio 2011-03-07 15:34:24 -08:00
irqs.h ARM: tegra: irqs: Update irq list 2011-02-09 21:57:01 -08:00
kbc.h Input: tegra-kbc - change wakeup logic to be all or nothing 2011-05-11 14:31:09 -07:00
memory.h ARM: P2V: separate PHYS_OFFSET from platform definitions 2011-02-17 23:26:55 +00:00
pinmux-t2.h ARM: tegra: pinmux: Add missing drive pingroups and fix suspend 2011-02-09 21:57:02 -08:00
pinmux.h arm/tegra: pinmux: ioremap registers 2011-10-13 15:04:53 -07:00
powergate.h ARM: tegra: Add api to control internal powergating 2011-02-09 21:57:00 -08:00
sdhci.h mmc: tegra: add pm_flags 2011-05-24 20:59:30 -04:00
suspend.h ARM: tegra: Add prototypes for subsystem suspend functions 2011-02-09 21:57:01 -08:00
system.h ARM: remove unnecessary mach/hardware.h includes 2011-07-12 11:19:27 -05:00
tegra_wm8903_pdata.h ARM: Tegra: Add to tegra_wm8903_platform_data 2011-04-18 17:55:58 +01:00
timex.h
uncompress.h ARM: tegra: Centralize macros to define debug uart base 2011-02-09 21:56:59 -08:00
usb_phy.h ARM: tegra: Add support for Tegra USB PHYs 2011-03-11 14:22:11 -08:00
vmalloc.h arm: tegra: VMALLOC_END should be unsigned long 2010-08-22 12:54:23 -07:00