Linux Audio

Check our new training course

Embedded Linux training

Mar 31-Apr 8, 2025
Register
Loading...
Note: File does not exist in v6.13.7.
 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
381001:	ldr	\rd, [\rx, #SIRFSOC_UART_TXFIFO_STATUS]
39	tst	\rd, #SIRFSOC_UART1_TXFIFO_EMPTY
40	beq	1001b
41	.endm
42