1 // SPDX-License-Identifier: GPL-2.0 2 /* 3 * MIPS-specific debug support for pre-boot environment 4 * 5 * NOTE: putc() is board specific, if your board have a 16550 compatible uart, 6 * please select SYS_SUPPORTS_ZBOOT_UART16550 for your machine. othewise, you 7 * need to implement your own putc(). 8 */ 9 #include <linux/compiler.h> 10 #include <linux/types.h> 11 12 void __weak putc(char c) 13 { 14 } 15 16 void puts(const char *s) 17 { 18 char c; 19 while ((c = *s++) != '\0') { 20 putc(c); 21 if (c == '\n') 22 putc('\r'); 23 } 24 } 25 26 void puthex(unsigned long long val) 27 { 28 29 unsigned char buf[10]; 30 int i; 31 for (i = 7; i >= 0; i--) { 32 buf[i] = "0123456789ABCDEF"[val & 0x0F]; 33 val >>= 4; 34 } 35 buf[8] = '\0'; 36 puts(buf); 37 } 38