xref: /linux/arch/mips/boot/compressed/dbg.c (revision 4f77c3462308c62ffe7129cc18b9ac937f44b5a5)
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