root/arch/mips/boot/compressed/dbg.c
// 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. otherwise, you
 * need to implement your own putc().
 */
#include <linux/compiler.h>
#include <linux/types.h>

#include "decompress.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);
}