44 lines
885 B
C
44 lines
885 B
C
#include "vxBoot/builtin.h"
|
|
#include "vxBoot/terminal.h"
|
|
#include "vxBoot/hardware.h"
|
|
|
|
#include <string.h>
|
|
|
|
/* hw_main() : hw builtin entry */
|
|
int hw_main(int argc, char **argv)
|
|
{
|
|
struct hwinfo hwinfo;
|
|
|
|
//TODO handle args
|
|
(void)argc;
|
|
(void)argv;
|
|
|
|
#ifdef FXCG50
|
|
if (argc >= 1) {
|
|
if (strcmp(argv[1], "patch") == 0) {
|
|
terminal_write("try to invalidate the NULL page...");
|
|
hardware_utlb_patch();
|
|
terminal_write("OK\n");
|
|
return (0);
|
|
}
|
|
terminal_write("invalide argument\n");
|
|
return (84);
|
|
}
|
|
#endif
|
|
|
|
hardware_get_info(&hwinfo);
|
|
terminal_write(
|
|
"- user RAM physical addr: %p\n"
|
|
"- kernel RAM physical addr: %p\n"
|
|
"- RAM physical addr: %p\n"
|
|
"- RAM size: %d\n"
|
|
"- Kernel RAM space: %d o\n",
|
|
hwinfo.ram.physical.user_addr,
|
|
hwinfo.ram.physical.kernel_addr,
|
|
hwinfo.ram.physical.origin_addr,
|
|
hwinfo.ram.size,
|
|
hwinfo.ram.available
|
|
);
|
|
return (0);
|
|
}
|