Merge tag 'keystone-soc-for-arm-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/ssantosh/linux-keystone into next/soc
From Santosh Shilimkar: SOC support for Keystone II devices: - Minimal machine and device-tree support with arch_timers and console UART - Reboot hook using PLL reset - Low level debug support using UART - SMP boot support * tag 'keystone-soc-for-arm-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/ssantosh/linux-keystone: ARM: keystone: Enable SMP support on Keystone machines ARM: keystone: Add minimal TI Keystone platform support ARM: dts: keystone: Add minimal Keystone SOC device tree data Signed-off-by: Olof Johansson <olof@lixom.net>
This commit is contained in:
43
arch/arm/include/debug/keystone.S
Normal file
43
arch/arm/include/debug/keystone.S
Normal file
@@ -0,0 +1,43 @@
|
||||
/*
|
||||
* Early serial debug output macro for Keystone SOCs
|
||||
*
|
||||
* Copyright 2013 Texas Instruments, Inc.
|
||||
* Santosh Shilimkar <santosh.shilimkar@ti.com>
|
||||
*
|
||||
* Based on RMKs low level debug code.
|
||||
* Copyright (C) 1994-1999 Russell King
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 as
|
||||
* published by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
#include <linux/serial_reg.h>
|
||||
|
||||
#define UART_SHIFT 2
|
||||
#if defined(CONFIG_DEBUG_KEYSTONE_UART0)
|
||||
#define UART_PHYS 0x02530c00
|
||||
#define UART_VIRT 0xfeb30c00
|
||||
#elif defined(CONFIG_DEBUG_KEYSTONE_UART1)
|
||||
#define UART_PHYS 0x02531000
|
||||
#define UART_VIRT 0xfeb31000
|
||||
#endif
|
||||
|
||||
.macro addruart, rp, rv, tmp
|
||||
ldr \rv, =UART_VIRT @ physical base address
|
||||
ldr \rp, =UART_PHYS @ virtual base address
|
||||
.endm
|
||||
|
||||
.macro senduart,rd,rx
|
||||
str \rd, [\rx, #UART_TX << UART_SHIFT]
|
||||
.endm
|
||||
|
||||
.macro busyuart,rd,rx
|
||||
1002: ldr \rd, [\rx, #UART_LSR << UART_SHIFT]
|
||||
and \rd, \rd, #UART_LSR_TEMT | UART_LSR_THRE
|
||||
teq \rd, #UART_LSR_TEMT | UART_LSR_THRE
|
||||
bne 1002b
|
||||
.endm
|
||||
|
||||
.macro waituart,rd,rx
|
||||
.endm
|
مرجع در شماره جدید
Block a user