Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 342403
b: refs/heads/master
c: 7a28106
h: refs/heads/master
i:
  342401: 9db6306
  342399: 40c8d4b
v: v3
  • Loading branch information
Stephen Warren committed Nov 16, 2012
1 parent 3dbb5b2 commit 8b2d926
Show file tree
Hide file tree
Showing 3 changed files with 21 additions and 6 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 1a6d3da8bc45502940efb19604d4c94c470ef6be
refs/heads/master: 7a28106509463529d7b0408d3f5a0ab99f6810ee
24 changes: 19 additions & 5 deletions trunk/arch/arm/mach-tegra/include/mach/debug-macro.S
Original file line number Diff line number Diff line change
Expand Up @@ -26,10 +26,18 @@

#include <linux/serial_reg.h>

#include "../../iomap.h"

#define UART_SHIFT 2

/* Physical addresses */
#define TEGRA_CLK_RESET_BASE 0x60006000
#define TEGRA_APB_MISC_BASE 0x70000000
#define TEGRA_UARTA_BASE 0x70006000
#define TEGRA_UARTB_BASE 0x70006040
#define TEGRA_UARTC_BASE 0x70006200
#define TEGRA_UARTD_BASE 0x70006300
#define TEGRA_UARTE_BASE 0x70006400
#define TEGRA_PMC_BASE 0x7000e400

#define TEGRA_CLK_RST_DEVICES_L (TEGRA_CLK_RESET_BASE + 0x04)
#define TEGRA_CLK_RST_DEVICES_H (TEGRA_CLK_RESET_BASE + 0x08)
#define TEGRA_CLK_RST_DEVICES_U (TEGRA_CLK_RESET_BASE + 0x0c)
Expand All @@ -39,6 +47,12 @@
#define TEGRA_PMC_SCRATCH20 (TEGRA_PMC_BASE + 0xa0)
#define TEGRA_APB_MISC_GP_HIDREV (TEGRA_APB_MISC_BASE + 0x804)

/*
* Must be 1MB-aligned since a 1MB mapping is used early on.
* Must not overlap with regions in mach-tegra/io.c:tegra_io_desc[].
*/
#define UART_VIRTUAL_BASE 0xfe100000

#define checkuart(rp, rv, lhu, bit, uart) \
/* Load address of CLK_RST register */ \
movw rp, #TEGRA_CLK_RST_DEVICES_##lhu & 0xffff ; \
Expand Down Expand Up @@ -139,10 +153,10 @@
91: str \rp, [\tmp, #4] @ Store in tegra_uart_phys
cmp \rp, #0 @ Valid UART address?
bne 92f @ Yes, go process it
str \rp, [\tmp, #8] @ Store 0 in tegra_uart_phys
str \rp, [\tmp, #8] @ Store 0 in tegra_uart_virt
b 100f @ Done
92: sub \rv, \rp, #IO_APB_PHYS @ Calculate virt address
add \rv, \rv, #IO_APB_VIRT
92: and \rv, \rp, #0xffffff @ offset within 1MB section
add \rv, \rv, #UART_VIRTUAL_BASE
str \rv, [\tmp, #8] @ Store in tegra_uart_virt
movw \rv, #TEGRA_APB_MISC_GP_HIDREV & 0xffff
movt \rv, #TEGRA_APB_MISC_GP_HIDREV >> 16
Expand Down
1 change: 1 addition & 0 deletions trunk/arch/arm/mach-tegra/io.c
Original file line number Diff line number Diff line change
Expand Up @@ -59,5 +59,6 @@ static struct map_desc tegra_io_desc[] __initdata = {

void __init tegra_map_common_io(void)
{
debug_ll_io_init();
iotable_init(tegra_io_desc, ARRAY_SIZE(tegra_io_desc));
}

0 comments on commit 8b2d926

Please sign in to comment.