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. otherwise, you 7 * need to implement your own putc(). 8 */ 9 #include <linux/compiler.h> 10 #include <linux/types.h> 11 12 #include "decompress.h" 13 14 void __weak putc(char c) 15 { 16 } 17 18 void puts(const char *s) 19 { 20 char c; 21 while ((c = *s++) != '\0') { 22 putc(c); 23 if (c == '\n') 24 putc('\r'); 25 } 26 } 27 28 void puthex(unsigned long long val) 29 { 30 31 unsigned char buf[10]; 32 int i; 33 for (i = 7; i >= 0; i--) { 34 buf[i] = "0123456789ABCDEF"[val & 0x0F]; 35 val >>= 4; 36 } 37 buf[8] = '\0'; 38 puts(buf); 39 } 40