From 7a1e4b743bc45dbd869eeb19eb262654225a090a Mon Sep 17 00:00:00 2001 From: Ian Moffett Date: Sat, 15 Nov 2025 18:31:54 -0500 Subject: kern/amd64: io: Add uart_puts() helper for strings Signed-off-by: Ian Moffett --- sys/arch/amd64/io/uart.S | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) (limited to 'sys/arch/amd64/io') diff --git a/sys/arch/amd64/io/uart.S b/sys/arch/amd64/io/uart.S index 8e190ed..b67527a 100644 --- a/sys/arch/amd64/io/uart.S +++ b/sys/arch/amd64/io/uart.S @@ -95,5 +95,36 @@ uart_write: .done: retq + .globl uart_puts +uart_puts: + /* + * void uart_puts(const char *s); + */ + + push %r12 + push %r13 + push %r14 + push %r15 + push %rbx + push %rbp + + mov %rsi, %rcx + mov %rdi, %rsi +.putsloop: + lodsb + or %al, %al + jz .putsdone + mov $UART_COM1, %dx + out %al, %dx + jmp .putsloop +.putsdone: + + pop %rbp + pop %rbx + pop %r15 + pop %r14 + pop %r13 + pop %r12 + /* vim: ft=gas : */ -- cgit v1.2.3