diff options
| author | Arnd Bergmann <arnd@arndb.de> | 2013-03-28 07:25:51 -0400 |
|---|---|---|
| committer | Arnd Bergmann <arnd@arndb.de> | 2013-03-28 07:25:51 -0400 |
| commit | 063ab6daeb2ba5ef8f47c3fc04a749936c62d5bb (patch) | |
| tree | 43532e85397b7105999851a2875db9bbf043080e /arch/arm/include/debug | |
| parent | cde35bd027023b052316c14ae3fc01e2f487a6ab (diff) | |
| parent | dbaf6a8d5de7b63f85eea10a47681f920cbf7385 (diff) | |
Merge branch 'prima2/multiplatform' into next/multiplatform
This series enables multiplatform support on the SIRF prima2/marco/atlas6
platform. The code was already quite tidy, so this is a relatively simple
change, and it follows similar changes we made to other ARMv7 based
platforms recently.
* prima2/multiplatform:
ARM: sirf: enable support in multi_v7_defconfig
ARM: sirf: enable multiplatform support
ARM: sirf: use clocksource_of infrastructure
ARM: sirf: move debug-macro.S to include/debug/sirf.S
ARM: sirf: enable sparse IRQ
ARM: sirf: move irq driver to drivers/irqchip
ARM: sirf: fix prima2 interrupt lookup
pinctrl: sirf: convert to linear irq domain
clocksource: make CLOCKSOURCE_OF_DECLARE type safe
ARM/dts: prima2: add .dtsi for atlas6 and .dts for atla6-evb board
arm: prima2: add new SiRFatlas6 machine in common board
ARM: smp_twd: convert to use CLKSRC_OF init
clocksource: tegra20: use the device_node pointer passed to init
clocksource: pass DT node pointer to init functions
clocksource: add empty version of clocksource_of_init
Conflicts:
arch/arm/configs/multi_v7_defconfig
arch/arm/mach-spear/spear13xx.c
Tested-by: Barry Song <Barry.Song@csr.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Diffstat (limited to 'arch/arm/include/debug')
| -rw-r--r-- | arch/arm/include/debug/sirf.S | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/arch/arm/include/debug/sirf.S b/arch/arm/include/debug/sirf.S new file mode 100644 index 000000000000..dbf250cf18e6 --- /dev/null +++ b/arch/arm/include/debug/sirf.S | |||
| @@ -0,0 +1,42 @@ | |||
| 1 | /* | ||
| 2 | * arch/arm/mach-prima2/include/mach/debug-macro.S | ||
| 3 | * | ||
| 4 | * Copyright (c) 2011 Cambridge Silicon Radio Limited, a CSR plc group company. | ||
| 5 | * | ||
| 6 | * Licensed under GPLv2 or later. | ||
| 7 | */ | ||
| 8 | |||
| 9 | #if defined(CONFIG_DEBUG_SIRFPRIMA2_UART1) | ||
| 10 | #define SIRFSOC_UART1_PA_BASE 0xb0060000 | ||
| 11 | #elif defined(CONFIG_DEBUG_SIRFMARCO_UART1) | ||
| 12 | #define SIRFSOC_UART1_PA_BASE 0xcc060000 | ||
| 13 | #else | ||
| 14 | #define SIRFSOC_UART1_PA_BASE 0 | ||
| 15 | #endif | ||
| 16 | |||
| 17 | #define SIRFSOC_UART1_VA_BASE 0xFEC60000 | ||
| 18 | |||
| 19 | #define SIRFSOC_UART_TXFIFO_STATUS 0x0114 | ||
| 20 | #define SIRFSOC_UART_TXFIFO_DATA 0x0118 | ||
| 21 | |||
| 22 | #define SIRFSOC_UART1_TXFIFO_FULL (1 << 5) | ||
| 23 | #define SIRFSOC_UART1_TXFIFO_EMPTY (1 << 6) | ||
| 24 | |||
| 25 | .macro addruart, rp, rv, tmp | ||
| 26 | ldr \rp, =SIRFSOC_UART1_PA_BASE @ physical | ||
| 27 | ldr \rv, =SIRFSOC_UART1_VA_BASE @ virtual | ||
| 28 | .endm | ||
| 29 | |||
| 30 | .macro senduart,rd,rx | ||
| 31 | str \rd, [\rx, #SIRFSOC_UART_TXFIFO_DATA] | ||
| 32 | .endm | ||
| 33 | |||
| 34 | .macro busyuart,rd,rx | ||
| 35 | .endm | ||
| 36 | |||
| 37 | .macro waituart,rd,rx | ||
| 38 | 1001: ldr \rd, [\rx, #SIRFSOC_UART_TXFIFO_STATUS] | ||
| 39 | tst \rd, #SIRFSOC_UART1_TXFIFO_EMPTY | ||
| 40 | beq 1001b | ||
| 41 | .endm | ||
| 42 | |||
