Implement serial logging. Finish modularizing power management.
[monolithium.git] / kernel / include / power.h
index 95d9c21645bed7e3da207f1a81d03ee5c96f7c4b..8dc80b3b5a4fee771a2944940afb8af6916e6574 100644 (file)
 
 #include <sdk/power.h>
 
+typedef enum
+{
+    POWER_STATE_STANDBY = 1,
+    POWER_STATE_SUSPEND,
+    POWER_STATE_OFF,
+} power_state_t;
+
+typedef dword_t (*power_set_state_proc_t)(power_state_t state);
+
+typedef struct
+{
+    power_set_state_proc_t set_state;
+} power_callbacks_t;
+
 dword_t power_init(void);
+dword_t register_power_callbacks(power_callbacks_t *callbacks);
 
 #endif