Commit 29bbb2a9 authored by Stafford Horne's avatar Stafford Horne
Browse files

openrisc: Add support for liteuart emergency printing



This patch adds support for sending emergency print output, such as
unhandled exception details, to a liteuart serial device.  This is the
default device available on litex platforms.

If a developer want to use this they should update UART_BASE_ADD
to the address of liteuart.

Signed-off-by: default avatarStafford Horne <shorne@gmail.com>
parent e449759c
Loading
Loading
Loading
Loading
+12 −1
Original line number Diff line number Diff line
@@ -1555,7 +1555,18 @@ ENTRY(_emergency_putc)
	l.movhi r4,hi(UART_BASE_ADD)
	l.ori	r4,r4,lo(UART_BASE_ADD)

#if defined(CONFIG_SERIAL_8250)
#if defined(CONFIG_SERIAL_LITEUART)
	/* Check OFF_TXFULL status */
1:      l.lwz	r5,4(r4)
	l.andi	r5,r5,0xff
	l.sfnei	r5,0
	l.bf	1b
	 l.nop

	/* Write character */
	l.andi	r7,r7,0xff
	l.sw	0(r4),r7
#elif defined(CONFIG_SERIAL_8250)
	/* Check UART LSR THRE (hold) bit */
	l.addi  r6,r0,0x20
1:      l.lbz   r5,5(r4)