From: Alexander Shiyan <eagle.alexander923@gmail.com> To: barebox@lists.infradead.org Cc: Alexander Shiyan <eagle.alexander923@gmail.com> Subject: [RFC] ARM: OMAP: debug_ll: Add support for PBL console Date: Thu, 5 May 2022 12:42:54 +0300 [thread overview] Message-ID: <20220505094254.23759-1-eagle.alexander923@gmail.com> (raw) Signed-off-by: Alexander Shiyan <eagle.alexander923@gmail.com> --- arch/arm/boards/myirtech-x335x/lowlevel.c | 10 ++++------ arch/arm/mach-omap/include/mach/debug_ll.h | 20 ++++++++++++++------ 2 files changed, 18 insertions(+), 12 deletions(-) diff --git a/arch/arm/boards/myirtech-x335x/lowlevel.c b/arch/arm/boards/myirtech-x335x/lowlevel.c index 1a883da203..f9f3ec4ddf 100644 --- a/arch/arm/boards/myirtech-x335x/lowlevel.c +++ b/arch/arm/boards/myirtech-x335x/lowlevel.c @@ -95,12 +95,10 @@ ENTRY_FUNCTION(start_am33xx_myirtech_sram, bootinfo, r1, r2) am335x_sdram_init(0x18b, &ddr3_cmd_ctrl, &ddr3_regs, &ddr3_data); } - if (IS_ENABLED(CONFIG_DEBUG_LL)) { - am33xx_uart_soft_reset(IOMEM(AM33XX_UART0_BASE)); - am33xx_enable_uart0_pin_mux(); - omap_uart_lowlevel_init(IOMEM(AM33XX_UART0_BASE)); - putc_ll('>'); - } + am33xx_uart_soft_reset(IOMEM(AM33XX_UART0_BASE)); + am33xx_enable_uart0_pin_mux(); + omap_uart_lowlevel_init(IOMEM(AM33XX_UART0_BASE)); + pr_debug("MYIR MYC-AM335X\n"); am335x_barebox_entry(fdt); } diff --git a/arch/arm/mach-omap/include/mach/debug_ll.h b/arch/arm/mach-omap/include/mach/debug_ll.h index 25ddd485be..018171d112 100644 --- a/arch/arm/mach-omap/include/mach/debug_ll.h +++ b/arch/arm/mach-omap/include/mach/debug_ll.h @@ -17,6 +17,7 @@ #ifndef __MACH_DEBUG_LL_H__ #define __MACH_DEBUG_LL_H__ +#include <console.h> #include <io.h> #include <mach/omap3-silicon.h> #include <mach/omap4-silicon.h> @@ -34,6 +35,16 @@ #define MCR (4 << 2) #define MDR (8 << 2) +static inline void omap_uart_putc(void *base, int c) +{ + /* Wait until there is space in the FIFO */ + while ((readb(base + LSR) & LSR_THRE) == 0); + /* Send the character */ + writeb(c, base + THR); + /* Wait to make sure it hits the line, in case we die too soon. */ + while ((readb(base + LSR) & LSR_THRE) == 0); +} + static inline void omap_uart_lowlevel_init(void __iomem *base) { writeb(0x00, base + LCR); @@ -46,6 +57,8 @@ static inline void omap_uart_lowlevel_init(void __iomem *base) writeb(0x03, base + MCR); writeb(0x07, base + FCR); writeb(0x00, base + MDR); + + pbl_set_putc(omap_uart_putc, base); } #ifdef CONFIG_DEBUG_LL @@ -68,12 +81,7 @@ static inline void PUTC_LL(char c) void __iomem *base = (void *)OMAP_UART_BASE(OMAP_DEBUG_SOC, CONFIG_DEBUG_OMAP_UART_PORT); - /* Wait until there is space in the FIFO */ - while ((readb(base + LSR) & LSR_THRE) == 0); - /* Send the character */ - writeb(c, base + THR); - /* Wait to make sure it hits the line, in case we die too soon. */ - while ((readb(base + LSR) & LSR_THRE) == 0); + omap_uart_putc(base, c); } #endif -- 2.32.0 _______________________________________________ barebox mailing list barebox@lists.infradead.org http://lists.infradead.org/mailman/listinfo/barebox
next reply other threads:[~2022-05-05 9:44 UTC|newest] Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top 2022-05-05 9:42 Alexander Shiyan [this message] 2022-05-05 9:59 ` Sascha Hauer
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20220505094254.23759-1-eagle.alexander923@gmail.com \ --to=eagle.alexander923@gmail.com \ --cc=barebox@lists.infradead.org \ --subject='Re: [RFC] ARM: OMAP: debug_ll: Add support for PBL console' \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox