mirror of
https://github.com/FEX-Emu/linux.git
synced 2024-12-29 13:00:35 +00:00
ARM: OMAP2+: am33xx: Add low level debugging support
Add support for low level debugging on AM335X EVM (AM33XX family). Currently only support for UART1 console, which is used on AM335X EVM is added. Signed-off-by: Afzal Mohammed <afzal@ti.com> Signed-off-by: Vaibhav Hiremath <hvaibhav@ti.com> Reviewed-by: Kevin Hilman <khilman@ti.com> Cc: Paul Walmsley <paul@pwsan.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
This commit is contained in:
parent
f8f5701bda
commit
d0a9001dce
@ -72,6 +72,8 @@ omap_uart_lsr: .word 0
|
||||
beq 82f @ configure UART2
|
||||
cmp \rp, #TI81XXUART3 @ ti81Xx UART offsets different
|
||||
beq 83f @ configure UART3
|
||||
cmp \rp, #AM33XXUART1 @ AM33XX UART offsets different
|
||||
beq 84f @ configure UART1
|
||||
cmp \rp, #ZOOM_UART @ only on zoom2/3
|
||||
beq 95f @ configure ZOOM_UART
|
||||
|
||||
@ -100,7 +102,9 @@ omap_uart_lsr: .word 0
|
||||
b 98f
|
||||
83: mov \rp, #UART_OFFSET(TI81XX_UART3_BASE)
|
||||
b 98f
|
||||
|
||||
84: ldr \rp, =AM33XX_UART1_BASE
|
||||
and \rp, \rp, #0x00ffffff
|
||||
b 97f
|
||||
95: ldr \rp, =ZOOM_UART_BASE
|
||||
str \rp, [\tmp, #0] @ omap_uart_phys
|
||||
ldr \rp, =ZOOM_UART_VIRT
|
||||
@ -109,6 +113,17 @@ omap_uart_lsr: .word 0
|
||||
str \rp, [\tmp, #8] @ omap_uart_lsr
|
||||
b 10b
|
||||
|
||||
/* AM33XX: Store both phys and virt address for the uart */
|
||||
97: add \rp, \rp, #0x44000000 @ phys base
|
||||
str \rp, [\tmp, #0] @ omap_uart_phys
|
||||
sub \rp, \rp, #0x44000000 @ phys base
|
||||
add \rp, \rp, #0xf9000000 @ virt base
|
||||
str \rp, [\tmp, #4] @ omap_uart_virt
|
||||
mov \rp, #(UART_LSR << OMAP_PORT_SHIFT)
|
||||
str \rp, [\tmp, #8] @ omap_uart_lsr
|
||||
|
||||
b 10b
|
||||
|
||||
/* Store both phys and virt address for the uart */
|
||||
98: add \rp, \rp, #0x48000000 @ phys base
|
||||
str \rp, [\tmp, #0] @ omap_uart_phys
|
||||
|
@ -60,6 +60,9 @@
|
||||
/* AM3505/3517 UART4 */
|
||||
#define AM35XX_UART4_BASE 0x4809E000 /* Only on AM3505/3517 */
|
||||
|
||||
/* AM33XX serial port */
|
||||
#define AM33XX_UART1_BASE 0x44E09000
|
||||
|
||||
/* External port on Zoom2/3 */
|
||||
#define ZOOM_UART_BASE 0x10000000
|
||||
#define ZOOM_UART_VIRT 0xfa400000
|
||||
@ -93,6 +96,7 @@
|
||||
#define TI81XXUART1 81
|
||||
#define TI81XXUART2 82
|
||||
#define TI81XXUART3 83
|
||||
#define AM33XXUART1 84
|
||||
#define ZOOM_UART 95 /* Only on zoom2/3 */
|
||||
|
||||
/* This is only used by 8250.c for omap1510 */
|
||||
|
@ -103,6 +103,10 @@ static inline void flush(void)
|
||||
_DEBUG_LL_ENTRY(mach, TI81XX_UART##p##_BASE, OMAP_PORT_SHIFT, \
|
||||
TI81XXUART##p)
|
||||
|
||||
#define DEBUG_LL_AM33XX(p, mach) \
|
||||
_DEBUG_LL_ENTRY(mach, AM33XX_UART##p##_BASE, OMAP_PORT_SHIFT, \
|
||||
AM33XXUART##p)
|
||||
|
||||
static inline void __arch_decomp_setup(unsigned long arch_id)
|
||||
{
|
||||
int port = 0;
|
||||
@ -183,6 +187,8 @@ static inline void __arch_decomp_setup(unsigned long arch_id)
|
||||
/* TI8148 base boards using UART1 */
|
||||
DEBUG_LL_TI81XX(1, ti8148evm);
|
||||
|
||||
/* AM33XX base boards using UART1 */
|
||||
DEBUG_LL_AM33XX(1, am335xevm);
|
||||
} while (0);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user