serial: omap: Add code for early debugging
PATCH 1/1 serial: omap: Add code for early debugging
This patch adds code missing when CONFIG_DEBUG_UART_OMAP is enabled as early debugging UART. The code is basically copied from the ns16550 driver.
Signed-off-by Felix Brack <[email protected]>
---
drivers/serial/serial_omap.c | 42 +++++++++++++++++++++++++++++++++++- 1 file changed, 41 insertions(+), 1 deletion(-)
drivers/serial/serial_omap.c +41 -1
@@ -7,7 +7,6 @@*/ #include <common.h> -#include <debug_uart.h> #include <dm.h> #include <dt-structs.h> #include <ns16550.h>
@@ -20,6 +19,47 @@#ifdef CONFIG_DEBUG_UART_OMAP +#ifndef CONFIG_SYS_NS16550_IER +#define CONFIG_SYS_NS16550_IER 0x00 +#endif + +#define UART_MCRVAL 0x00 +#define UART_LCRVAL UART_LCR_8N1 + +static inline void serial_out_shift (void *addr,int shift,int value) +{ +#ifdef CONFIG_SYS_NS16550_PORT_MAPPED +outb (value, (ulong )addr); +#elif defined(CONFIG_SYS_NS16550_MEM32 ) && defined(CONFIG_SYS_LITTLE_ENDIAN ) +out_le32 (addr, value); +#elif defined(CONFIG_SYS_NS16550_MEM32 ) && defined(CONFIG_SYS_BIG_ENDIAN ) +out_be32 (addr, value); +#elif defined(CONFIG_SYS_NS16550_MEM32 ) +writel (value, addr); +#elif defined(CONFIG_SYS_BIG_ENDIAN ) +writeb (value, addr + (1 << shift) -1 ); +#else +writeb (value, addr); +#endif +} + +static inline int serial_in_shift (void *addr,int shift) +{ +#ifdef CONFIG_SYS_NS16550_PORT_MAPPED +return inb ((ulong )addr); +#elif defined(CONFIG_SYS_NS16550_MEM32 ) && defined(CONFIG_SYS_LITTLE_ENDIAN ) +return in_le32 (addr); +#elif defined(CONFIG_SYS_NS16550_MEM32 ) && defined(CONFIG_SYS_BIG_ENDIAN ) +return in_be32 (addr); +#elif defined(CONFIG_SYS_NS16550_MEM32 ) +return readl (addr); +#elif defined(CONFIG_SYS_BIG_ENDIAN ) +return readb (addr + (1 << shift) -1 ); +#else +return readb (addr); +#endif +} +#include <debug_uart.h> static inline void _debug_uart_init (void )
Signature · 1 line
2.17.1
Quoted 5 lines · Felix Brack
This patch adds code missing when
CONFIG_DEBUG_UART_OMAPis enabled as early debugging UART. The code is basically copied from the ns16550 driver.Signed-off-by Felix Brack <[email protected]>
Applied to u-boot/master, thanks!
Signature · 8 lines
Tom -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 819 bytes Desc: not available URL: <http://lists.denx.de/pipermail/u-boot/attachments/20181207/1f54cd50/attachment.sig>