fixes TGCP environment
This commit is contained in:
7
env/TGCP/init.c
vendored
7
env/TGCP/init.c
vendored
@ -110,12 +110,13 @@ void _fini()
|
||||
}
|
||||
|
||||
int is_uart_ready(int uart_id){
|
||||
return 1;
|
||||
return !UART0_REG(UART_REG_TXFIFO) & 0x80000000;
|
||||
}
|
||||
int try_write_uart_char(int uart_id, char c){
|
||||
*((char*)0x10000000) = c;
|
||||
if(UART0_REG(UART_REG_TXFIFO) & 0x80000000) return 0;
|
||||
UART0_REG(UART_REG_TXFIFO) = c;
|
||||
return 1;
|
||||
}
|
||||
void write_uart_char(int uart_id, char c){
|
||||
*((char*)0x10000000) = c;
|
||||
UART0_REG(UART_REG_TXFIFO) = c;
|
||||
}
|
||||
|
13
env/TGCP/platform.h
vendored
13
env/TGCP/platform.h
vendored
@ -7,7 +7,18 @@
|
||||
#define MCAUSE_INT 0x80000000
|
||||
#define MCAUSE_CAUSE 0x7FFFFFFF
|
||||
|
||||
#include "bits.h"
|
||||
#define UART0_BASE_ADDR 0xffff0000ULL
|
||||
|
||||
#define UART_REG_TXFIFO 0x00
|
||||
#define UART_REG_RXFIFO 0x04
|
||||
#define UART_REG_TXCTRL 0x08
|
||||
#define UART_REG_RXCTRL 0x0c
|
||||
#define UART_REG_IE 0x10
|
||||
#define UART_REG_IP 0x14
|
||||
#define UART_REG_DIV 0x18
|
||||
#define UART_TXEN 0x1
|
||||
|
||||
#define UART0_REG(ADDR) *((volatile uint32_t*) (UART0_BASE_ADDR + ADDR))
|
||||
/****************************************************************************
|
||||
* Platform definitions
|
||||
*****************************************************************************/
|
||||
|
Reference in New Issue
Block a user