[PATCH] ARM: Zynqmp: define cdns_serial_putc for use with pbl_set_putc

Ahmad Fatoum a.fatoum at pengutronix.de
Wed Sep 13 05:01:57 PDT 2023


Unlike other debug_ll headers, such as i.MX's or AT91, the ZynqMP header
only defined PUTC_LL, but no function suitable for use with
pbl_set_putc.

Remedy that, so PBL entry points can benefit from CONFIG_PBL_CONSOLE.

Signed-off-by: Ahmad Fatoum <a.fatoum at pengutronix.de>
---
 include/mach/zynqmp/debug_ll.h | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/include/mach/zynqmp/debug_ll.h b/include/mach/zynqmp/debug_ll.h
index 7642e37a4ed5..cc94d3ce54b4 100644
--- a/include/mach/zynqmp/debug_ll.h
+++ b/include/mach/zynqmp/debug_ll.h
@@ -15,9 +15,9 @@
 #define ZYNQMP_UART_STS_TFUL	(1 << 4)
 #define ZYNQMP_UART_TXDIS		(1 << 5)
 
-static inline void PUTC_LL(int c)
+static inline void cdns_serial_putc(void *ctx, int c)
 {
-	void __iomem *base = (void __iomem *)ZYNQMP_DEBUG_LL_UART_BASE;
+	void __iomem *base = ctx;
 
 	if (readl(base) & ZYNQMP_UART_TXDIS)
 		return;
@@ -28,4 +28,9 @@ static inline void PUTC_LL(int c)
 	writel(c, base + 0x30);
 }
 
+static inline void PUTC_LL(int c)
+{
+	cdns_serial_putc(IOMEM(ZYNQMP_DEBUG_LL_UART_BASE), c);
+}
+
 #endif /* __MACH_ZYNQMP_DEBUG_LL_H__ */
-- 
2.39.2




More information about the barebox mailing list