linux/arch/arm/mach-tegra
Stephen Warren e53b7d87cc ARM: tegra: Support Tegra30 in decompressor UART setup
On Tegra20, the UART clock runs at 216MHz, whereas on Tegra30 it runs at
408MHz. Modify arch_decomp_setup() to detect Tegra20-vs-Tegra30 at run-
time, and program the correct divisor.

This makes uncompressor messages work correctly on Tegra30. This also
fixes early printk, assuming zImage is used and this setup code runs.

v2: Use CHIPID register to differentiate between chips, rather than a
GIC register. This should be more future-proof. Volatile is required
to prevent the compiler transforming the 32-bit apb_misc register read
into an 8-bit read of address 1 higher, since the HW only supports 32-
bit accesses, and will hang on an 8-bit access.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
2012-02-06 18:24:59 -08:00
..
include/mach ARM: tegra: Support Tegra30 in decompressor UART setup 2012-02-06 18:24:59 -08:00
apbio.c ARM: tegra: use APB DMA for accessing APB devices 2012-02-06 18:24:58 -08:00
apbio.h ARM: tegra: use APB DMA for accessing APB devices 2012-02-06 18:24:58 -08:00
board-dt-tegra20.c Board-level changes 2012-01-09 14:37:41 -08:00
board-dt-tegra30.c arm/tegra: add support for tegra30 based board cardhu 2011-12-17 20:15:38 -08:00
board-harmony-pcie.c arm/tegra: Harmony PCIe: Don't touch pinmux 2011-12-19 18:03:10 -08:00
board-harmony-pinmux.c Merge branch 'tegra/soc' into next/boards 2012-01-06 23:09:14 +00:00
board-harmony-power.c arm/tegra: Harmony: Configure PMC for low-level interrupts 2011-10-13 15:04:55 -07:00
board-harmony.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound 2012-01-12 08:00:30 -08:00
board-harmony.h ARM: 7101/1: arm/tegra: Replace <mach/gpio.h> with <mach/gpio-tegra.h> 2011-09-27 00:20:53 +01:00
board-paz00-pinmux.c Merge branch 'tegra/soc' into next/boards 2012-01-06 23:09:14 +00:00
board-paz00.c Merge branch 'samsung/cleanup' into next/boards 2012-01-09 17:06:36 +00:00
board-paz00.h ARM: tegra: paz00: add support for wakeup gpio key 2011-12-07 21:13:47 -08:00
board-pinmux.c arm/tegra: Use bus notifiers to trigger pinmux setup 2011-12-19 18:03:11 -08:00
board-pinmux.h arm/tegra: Refactor board-*-pinmux.c to share code 2011-12-19 18:03:11 -08:00
board-seaboard-pinmux.c Merge branch 'tegra/soc' into next/boards 2012-01-06 23:09:14 +00:00
board-seaboard.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound 2012-01-12 08:00:30 -08:00
board-seaboard.h Merge branch 'depends/rmk/gpio' into next/board 2011-10-21 16:46:26 +02:00
board-trimslice-pinmux.c Merge branch 'tegra/soc' into next/boards 2012-01-06 23:09:14 +00:00
board-trimslice.c Merge branch 'samsung/cleanup' into next/boards 2012-01-09 17:06:36 +00:00
board-trimslice.h ARM: 7101/1: arm/tegra: Replace <mach/gpio.h> with <mach/gpio-tegra.h> 2011-09-27 00:20:53 +01:00
board.h arm/tegra: Delete tegra_init_clock() 2011-12-19 18:06:05 -08:00
clock.c arm/tegra: Delete tegra_init_clock() 2011-12-19 18:06:05 -08:00
clock.h arm/tegra: don't export clk_measure_input_freq 2011-12-17 20:15:08 -08:00
common.c Merge branch 'samsung/cleanup' into next/boards 2012-01-09 17:06:36 +00:00
cpu-tegra.c Merge branch 'next/cleanup' of git://git.linaro.org/people/arnd/arm-soc 2011-11-01 20:11:00 -07:00
devices.c Merge branch 'next/devel' of git://git.linaro.org/people/arnd/arm-soc 2011-11-01 20:31:25 -07:00
devices.h arm/tegra: Prep boards for gpio/pinmux conversion to pdevs 2011-10-11 17:19:56 -07:00
dma.c ARM: tegra: Pause DMA when reading transfer count 2012-02-06 18:24:59 -08:00
fuse.c ARM: tegra: fuse: add bct strapping reading 2012-02-06 18:24:59 -08:00
fuse.h ARM: tegra: fuse: add bct strapping reading 2012-02-06 18:24:59 -08:00
gpio-names.h [ARM] tegra: add GPIO support 2010-08-05 14:57:02 -07:00
headsmp.S [ARM] tegra: SMP support 2010-08-05 14:57:01 -07:00
hotplug.c ARM: fix wrongly patched constants 2011-01-14 12:06:26 +00:00
io.c ARM: mach-tegra: remove arch specific special handling for ioremap 2011-11-16 18:06:18 -05:00
irq.c Merge branch 'samsung/cleanup' into next/boards 2012-01-09 17:06:36 +00:00
Kconfig arm/tegra: Make MACH_TEGRA_DT depend on ARCH_TEGRA_2x_SOC 2011-12-19 18:06:27 -08:00
localtimer.c ARM: 6759/1: smp: Select local timers vs broadcast timer support runtime 2011-02-23 17:54:27 +00:00
Makefile ARM: tegra: use APB DMA for accessing APB devices 2012-02-06 18:24:58 -08:00
Makefile.boot arm/tegra: add support for tegra30 based board cardhu 2011-12-17 20:15:38 -08:00
pcie.c Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci 2012-01-11 18:50:26 -08:00
pinmux-tegra20-tables.c arm/tegra: Fix section mismatch errors in tegra20 pinmux 2011-12-19 18:04:41 -08:00
pinmux-tegra30-tables.c arm/tegra: Fix section mismatch errors in tegra30 pinmux 2011-12-19 18:04:41 -08:00
pinmux.c arm/tegra: pinmux tables and definitions for tegra30 2011-12-17 20:15:33 -08:00
platsmp.c ARM: smp: fix clipping of number of CPUs 2011-10-20 22:06:57 +01:00
powergate.c ARM: tegra: tegra_powergate_is_powered should be static 2011-10-13 14:08:28 -07:00
tegra2_clocks.c ARM: tegra: fuse: add functions to access chip revision 2012-02-06 18:24:59 -08:00
tegra2_emc.c ARM: tegra: emc: device tree support 2012-02-06 18:24:59 -08:00
tegra2_emc.h ARM: tegra: emc: convert tegra2_emc to a platform driver 2012-02-06 18:24:59 -08:00
timer.c Merge branch 'samsung/cleanup' into next/boards 2012-01-09 17:06:36 +00:00
usb_phy.c ARM: 7101/1: arm/tegra: Replace <mach/gpio.h> with <mach/gpio-tegra.h> 2011-09-27 00:20:53 +01:00