| // SPDX-License-Identifier: GPL-2.0 | |
| /* | |
| * MIPS-specific debug support for pre-boot environment | |
| * | |
| * NOTE: putc() is board specific, if your board have a 16550 compatible uart, | |
| * please select SYS_SUPPORTS_ZBOOT_UART16550 for your machine. othewise, you | |
| * need to implement your own putc(). | |
| */ | |
| #include <linux/compiler.h> | |
| #include <linux/types.h> | |
| void __weak putc(char c) | |
| { | |
| } | |
| void puts(const char *s) | |
| { | |
| char c; | |
| while ((c = *s++) != '\0') { | |
| putc(c); | |
| if (c == '\n') | |
| putc('\r'); | |
| } | |
| } | |
| void puthex(unsigned long long val) | |
| { | |
| unsigned char buf[10]; | |
| int i; | |
| for (i = 7; i >= 0; i--) { | |
| buf[i] = "0123456789ABCDEF"[val & 0x0F]; | |
| val >>= 4; | |
| } | |
| buf[8] = '\0'; | |
| puts(buf); | |
| } |