#include "springbok.h"

extern "C" void print_csrs(void) {
    uint32_t mcause;
    uint32_t mepc;
    uint32_t mtval;
    uint32_t misa;
    uint32_t mtvec;
    uint32_t mhartid;
    uint32_t marchid;
    uint32_t mvendorid;
    uint32_t mimpid;
    __asm__ volatile("csrr %[MCAUSE], mcause"
                   : [MCAUSE] "=r"(mcause):);
    __asm__ volatile("csrr %[MEPC], mepc"
                   : [MEPC] "=r"(mepc):);
    __asm__ volatile("csrr %[MTVAL], mtval"
                   : [MTVAL] "=r"(mtval):);
    __asm__ volatile("csrr %[MISA], misa"
                   : [MISA] "=r"(misa):);
    __asm__ volatile("csrr %[MTVEC], mtvec"
                   : [MTVEC] "=r"(mtvec):);
    __asm__ volatile("csrr %[MHARTID], mhartid"
                   : [MHARTID] "=r"(mhartid):);
    __asm__ volatile("csrr %[MARCHID], marchid"
                   : [MARCHID] "=r"(marchid):);
    __asm__ volatile("csrr %[MVENDORID], mvendorid"
                   : [MVENDORID] "=r"(mvendorid):);
    __asm__ volatile("csrr %[MIMPID], mimpid"
                   : [MIMPID] "=r"(mimpid):);
    LOG_ERROR("MCAUSE:\t\t0x%08X", mcause);
    LOG_ERROR("MEPC:\t\t0x%08X", mepc);
    LOG_ERROR("MTVAL:\t\t0x%08X", mtval);
    LOG_ERROR("MISA:\t\t0x%08X", misa);
    LOG_ERROR("MTVEC:\t\t0x%08X", mtvec);
    LOG_ERROR("MHARTID:\t\t0x%08X", mhartid);
    LOG_ERROR("MARCHID:\t\t0x%08X", marchid);
    LOG_ERROR("MVENDORID:\t0x%08X", mvendorid);
    LOG_ERROR("MIMPID:\t\t0x%08X", mimpid);
 }
