version 1.1.1.1, 2008/06/03 10:38:52 |
version 1.1.1.1.2.1, 2008/08/13 17:12:46 |
|
|
*/ |
*/ |
|
|
#include <prex/prex.h> |
#include <prex/prex.h> |
#include <prex/power.h> |
|
#include <sys/ioctl.h> |
#include <sys/ioctl.h> |
#include <sys/types.h> |
#include <sys/types.h> |
|
|
|
|
int cmd_irq(int argc, char **argv); |
int cmd_irq(int argc, char **argv); |
int cmd_device(int argc, char **argv); |
int cmd_device(int argc, char **argv); |
int cmd_vm(int argc, char **argv); |
int cmd_vm(int argc, char **argv); |
int cmd_dmesg(int argc, char **argv); |
|
#endif |
#endif |
int cmd_reboot(int argc, char **argv); |
int cmd_reboot(int argc, char **argv); |
int cmd_shutdown(int argc, char **argv); |
int cmd_shutdown(int argc, char **argv); |
|
|
#ifdef DEBUG |
#ifdef DEBUG |
{ "thread" ,cmd_thread ,"thread - Dump threads" }, |
{ "thread" ,cmd_thread ,"thread - Dump threads" }, |
{ "task" ,cmd_task ,"task - Dump tasks" }, |
{ "task" ,cmd_task ,"task - Dump tasks" }, |
{ "object" ,cmd_object ,"object - Dump objects" }, |
|
{ "timer" ,cmd_timer ,"timer - Dump system timers" }, |
|
{ "irq" ,cmd_irq ,"irq - Dump irq information" }, |
|
{ "device" ,cmd_device ,"device - Dump devices" }, |
|
{ "vm" ,cmd_vm ,"vm - Dump virtual memory information" }, |
{ "vm" ,cmd_vm ,"vm - Dump virtual memory information" }, |
{ "dmesg" ,cmd_dmesg ,"dmesg - Dump kernel message log" }, |
|
#endif |
#endif |
{ "reboot" ,cmd_reboot ,"reboot - Reboot system" }, |
{ "reboot" ,cmd_reboot ,"reboot - Reboot system" }, |
{ "shutdown" ,cmd_shutdown ,"shutdown - Shutdown system" }, |
{ "shutdown" ,cmd_shutdown ,"shutdown - Shutdown system" }, |
|
|
sys_info(INFO_MEMORY, &info); |
sys_info(INFO_MEMORY, &info); |
|
|
printf("Memory usage:\n"); |
printf("Memory usage:\n"); |
printf(" total used free kernel\n"); |
printf(" total used free\n"); |
printf(" %8d %8d %8d %8d\n", (u_int)info.total, |
printf(" %8d %8d %8d %8d\n", (u_int)info.total, |
(u_int)(info.total - info.free), (u_int)info.free, (u_int)info.kernel); |
(u_int)(info.total - info.free), (u_int)info.free); |
return 0; |
return 0; |
} |
} |
|
|
|
|
int |
int |
cmd_thread(int argc, char **argv) |
cmd_thread(int argc, char **argv) |
{ |
{ |
sys_debug(DCMD_DUMP, DUMP_THREAD); |
int item = DUMP_THREAD; |
|
|
|
sys_debug(DCMD_DUMP, &item); |
return 0; |
return 0; |
} |
} |
|
|
int |
int |
cmd_task(int argc, char **argv) |
cmd_task(int argc, char **argv) |
{ |
{ |
sys_debug(DCMD_DUMP, DUMP_TASK); |
int item = DUMP_TASK; |
return 0; |
|
} |
|
|
|
int |
sys_debug(DCMD_DUMP, &item); |
cmd_object(int argc, char **argv) |
|
{ |
|
sys_debug(DCMD_DUMP, DUMP_OBJECT); |
|
return 0; |
return 0; |
} |
} |
|
|
int |
int |
cmd_timer(int argc, char **argv) |
|
{ |
|
sys_debug(DCMD_DUMP, DUMP_TIMER); |
|
return 0; |
|
} |
|
|
|
int |
|
cmd_irq(int argc, char **argv) |
|
{ |
|
sys_debug(DCMD_DUMP, DUMP_IRQ); |
|
return 0; |
|
} |
|
|
|
int |
|
cmd_device(int argc, char **argv) |
|
{ |
|
sys_debug(DCMD_DUMP, DUMP_DEVICE); |
|
return 0; |
|
} |
|
|
|
int |
|
cmd_vm(int argc, char **argv) |
cmd_vm(int argc, char **argv) |
{ |
{ |
sys_debug(DCMD_DUMP, DUMP_VM); |
int item = DUMP_VM; |
return 0; |
|
} |
|
|
|
int |
sys_debug(DCMD_DUMP, &item); |
cmd_dmesg(int argc, char **argv) |
|
{ |
|
sys_debug(DCMD_DUMP, DUMP_MSGLOG); |
|
return 0; |
return 0; |
} |
} |
|
|
#endif /* DEBUG */ |
#endif /* DEBUG */ |
|
|
int |
int |
cmd_reboot(int argc, char **argv) |
cmd_reboot(int argc, char **argv) |
{ |
{ |
reboot(0); |
device_t pm_dev; |
return 0; |
int err, state; |
|
|
|
if ((err = device_open("pm", 0, &pm_dev)) == 0) { |
|
state = POWER_REBOOT; |
|
err = device_ioctl(pm_dev, PMIOC_SET_POWER, &state); |
|
device_close(pm_dev); |
|
} |
|
return err; |
} |
} |
|
|
int |
int |
cmd_shutdown(int argc, char **argv) |
cmd_shutdown(int argc, char **argv) |
{ |
{ |
return shutdown(0); |
device_t pm_dev; |
|
int err, state; |
|
|
|
if ((err = device_open("pm", 0, &pm_dev)) == 0) { |
|
state = POWER_OFF; |
|
err = device_ioctl(pm_dev, PMIOC_SET_POWER, &state); |
|
device_close(pm_dev); |
|
} |
|
return err; |
} |
} |
|
|
int |
int |