You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
38 lines
935 B
38 lines
935 B
/* |
|
* Copyright (C) 2014 Alexander Shiyan <shc_work@mail.ru> |
|
* |
|
* This program is free software; you can redistribute it and/or modify |
|
* it under the terms of the GNU General Public License as published by |
|
* the Free Software Foundation; either version 2 of the License, or |
|
* (at your option) any later version. |
|
*/ |
|
|
|
#ifndef CONFIG_DEBUG_CLPS711X_UART2 |
|
#define CLPS711X_UART_PADDR (0x80000000 + 0x0000) |
|
#define CLPS711X_UART_VADDR (0xfeff0000 + 0x0000) |
|
#else |
|
#define CLPS711X_UART_PADDR (0x80000000 + 0x1000) |
|
#define CLPS711X_UART_VADDR (0xfeff0000 + 0x1000) |
|
#endif |
|
|
|
#define SYSFLG (0x0140) |
|
#define SYSFLG_UBUSY (1 << 11) |
|
#define UARTDR (0x0480) |
|
|
|
.macro addruart, rp, rv, tmp |
|
ldr \rv, =CLPS711X_UART_VADDR |
|
ldr \rp, =CLPS711X_UART_PADDR |
|
.endm |
|
|
|
.macro waituart,rd,rx |
|
.endm |
|
|
|
.macro senduart,rd,rx |
|
str \rd, [\rx, #UARTDR] |
|
.endm |
|
|
|
.macro busyuart,rd,rx |
|
1001: ldr \rd, [\rx, #SYSFLG] |
|
tst \rd, #SYSFLG_UBUSY |
|
bne 1001b |
|
.endm
|
|
|