aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-davinci/include/mach/serial.h
diff options
context:
space:
mode:
authorCyril Chemparathy <cyril@ti.com>2010-05-18 12:51:17 -0400
committerKevin Hilman <khilman@deeprootsystems.com>2010-06-21 15:48:30 -0400
commitdc2eb76c40590a3c080294d1fbd000c8f70d88a9 (patch)
tree8c7bccdd0eb4dfba763cd19216d8c0a13dfb5d51 /arch/arm/mach-davinci/include/mach/serial.h
parent7e27d6e778cd87b6f2415515d7127eba53fe5d02 (diff)
Davinci: generalized debug macros
This patch adopts a debug uart selection similar to the OMAP model. During the boot process, the uncompress code determines the physical and virtual base addresses of the board-specific debug uart. These addresses are then passed on to the in-kernel debug macros through a small chunk of memory placed just below the page tables (@0x80003ff8). Signed-off-by: Cyril Chemparathy <cyril@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
Diffstat (limited to 'arch/arm/mach-davinci/include/mach/serial.h')
-rw-r--r--arch/arm/mach-davinci/include/mach/serial.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/arch/arm/mach-davinci/include/mach/serial.h b/arch/arm/mach-davinci/include/mach/serial.h
index f6c4f34909a2..b21ec224b11d 100644
--- a/arch/arm/mach-davinci/include/mach/serial.h
+++ b/arch/arm/mach-davinci/include/mach/serial.h
@@ -11,8 +11,19 @@
11#ifndef __ASM_ARCH_SERIAL_H 11#ifndef __ASM_ARCH_SERIAL_H
12#define __ASM_ARCH_SERIAL_H 12#define __ASM_ARCH_SERIAL_H
13 13
14#include <asm/memory.h>
15
14#include <mach/hardware.h> 16#include <mach/hardware.h>
15 17
18/*
19 * Stolen area that contains debug uart physical and virtual addresses. These
20 * addresses are filled in by the uncompress.h code, and are used by the debug
21 * macros in debug-macro.S.
22 *
23 * This area sits just below the page tables (see arch/arm/kernel/head.S).
24 */
25#define DAVINCI_UART_INFO (PHYS_OFFSET + 0x3ff8)
26
16#define DAVINCI_UART0_BASE (IO_PHYS + 0x20000) 27#define DAVINCI_UART0_BASE (IO_PHYS + 0x20000)
17#define DAVINCI_UART1_BASE (IO_PHYS + 0x20400) 28#define DAVINCI_UART1_BASE (IO_PHYS + 0x20400)
18#define DAVINCI_UART2_BASE (IO_PHYS + 0x20800) 29#define DAVINCI_UART2_BASE (IO_PHYS + 0x20800)
@@ -26,11 +37,13 @@
26#define UART_DM646X_SCR 0x10 37#define UART_DM646X_SCR 0x10
27#define UART_DM646X_SCR_TX_WATERMARK 0x08 38#define UART_DM646X_SCR_TX_WATERMARK 0x08
28 39
40#ifndef __ASSEMBLY__
29struct davinci_uart_config { 41struct davinci_uart_config {
30 /* Bit field of UARTs present; bit 0 --> UART1 */ 42 /* Bit field of UARTs present; bit 0 --> UART1 */
31 unsigned int enabled_uarts; 43 unsigned int enabled_uarts;
32}; 44};
33 45
34extern int davinci_serial_init(struct davinci_uart_config *); 46extern int davinci_serial_init(struct davinci_uart_config *);
47#endif
35 48
36#endif /* __ASM_ARCH_SERIAL_H */ 49#endif /* __ASM_ARCH_SERIAL_H */