Line 334... |
Line 334... |
neorv32_uart0_putc(' ');
|
neorv32_uart0_putc(' ');
|
}
|
}
|
}
|
}
|
|
|
// Z* CPU extensions
|
// Z* CPU extensions
|
tmp = NEORV32_SYSINFO.CPU;
|
tmp = neorv32_cpu_csr_read(CSR_MXISA);
|
if (tmp & (1<<SYSINFO_CPU_ZICSR)) {
|
if (tmp & (1<<CSR_MXISA_ZICSR)) {
|
neorv32_uart0_printf("Zicsr ");
|
neorv32_uart0_printf("Zicsr ");
|
}
|
}
|
if (tmp & (1<<SYSINFO_CPU_ZICNTR)) {
|
if (tmp & (1<<CSR_MXISA_ZICNTR)) {
|
neorv32_uart0_printf("Zicntr ");
|
neorv32_uart0_printf("Zicntr ");
|
}
|
}
|
if (tmp & (1<<SYSINFO_CPU_ZIHPM)) {
|
if (tmp & (1<<CSR_MXISA_ZIHPM)) {
|
neorv32_uart0_printf("Zihpm ");
|
neorv32_uart0_printf("Zihpm ");
|
}
|
}
|
if (tmp & (1<<SYSINFO_CPU_ZIFENCEI)) {
|
if (tmp & (1<<CSR_MXISA_ZIFENCEI)) {
|
neorv32_uart0_printf("Zifencei ");
|
neorv32_uart0_printf("Zifencei ");
|
}
|
}
|
if (tmp & (1<<SYSINFO_CPU_ZMMUL)) {
|
if (tmp & (1<<CSR_MXISA_ZMMUL)) {
|
neorv32_uart0_printf("Zmmul ");
|
neorv32_uart0_printf("Zmmul ");
|
}
|
}
|
if (tmp & (1<<SYSINFO_CPU_ZFINX)) {
|
if (tmp & (1<<CSR_MXISA_ZFINX)) {
|
neorv32_uart0_printf("Zfinx ");
|
neorv32_uart0_printf("Zfinx ");
|
}
|
}
|
if (tmp & (1<<SYSINFO_CPU_ZXSCNT)) {
|
if (tmp & (1<<CSR_MXISA_ZXCFU)) {
|
|
neorv32_uart0_printf("Zxcfu ");
|
|
}
|
|
if (tmp & (1<<CSR_MXISA_ZXSCNT)) {
|
neorv32_uart0_printf("Zxscnt(!) ");
|
neorv32_uart0_printf("Zxscnt(!) ");
|
}
|
}
|
if (tmp & (1<<SYSINFO_CPU_DEBUGMODE)) {
|
if (tmp & (1<<CSR_MXISA_DEBUGMODE)) {
|
neorv32_uart0_printf("Debug ");
|
neorv32_uart0_printf("DebugMode ");
|
}
|
}
|
|
|
// CPU extension options
|
// CPU extension options
|
neorv32_uart0_printf("\nExtension options: ");
|
neorv32_uart0_printf("\nExtension options: ");
|
if (tmp & (1<<SYSINFO_CPU_FASTMUL)) {
|
if (tmp & (1<<CSR_MXISA_FASTMUL)) {
|
neorv32_uart0_printf("FAST_MUL ");
|
neorv32_uart0_printf("FAST_MUL ");
|
}
|
}
|
if (tmp & (1<<SYSINFO_CPU_FASTSHIFT)) {
|
if (tmp & (1<<CSR_MXISA_FASTSHIFT)) {
|
neorv32_uart0_printf("FAST_SHIFT ");
|
neorv32_uart0_printf("FAST_SHIFT ");
|
}
|
}
|
|
|
// check physical memory protection
|
// check physical memory protection
|
neorv32_uart0_printf("\nPMP: ");
|
neorv32_uart0_printf("\nPMP: ");
|