]> Joshua Wise's Git repositories - netwatch.git/blame - include/smi.h
Move the Multiboot code around to have more sane filenames.
[netwatch.git] / include / smi.h
CommitLineData
3c4e084d
JP
1/* smi.h
2 * Prototypes for generic SMI handling routines
3 * NetWatch system management mode administration console
4 *
5 * Copyright (c) 2008 Jacob Potter and Joshua Wise. All rights reserved.
6 * This program is free software; you can redistribute and/or modify it under
7 * the terms found in the file LICENSE in the root of this source tree.
8 *
9 */
10
85bc8ca6
JW
11#ifndef SMI_H
12#define SMI_H
13
14extern void smi_disable(); /* akin to cli / sti */
15extern void smi_enable();
16
17extern void smi_poll();
18extern unsigned long smi_status(); /* Architecturally defined; for debugging only. */
19
07d1dd26
JW
20typedef enum {
21 SMI_EVENT_FAST_TIMER = 0,
8a677ebb 22 SMI_EVENT_DEVTRAP_KBC,
73fb9b4c 23 SMI_EVENT_GBL_RLS,
47d8a487 24 SMI_EVENT_PWRBTN,
07d1dd26
JW
25 SMI_EVENT_MAX
26} smi_event_t;
27
28
29typedef void (*smi_handler_t)(smi_event_t);
30
31#define SMI_HANDLER_NONE ((smi_handler_t)0)
32#define SMI_HANDLER_IGNORE ((smi_handler_t)-1)
33
34extern int smi_register_handler(smi_event_t ev, smi_handler_t hnd);
35extern int smi_enable_event(smi_event_t ev);
36extern int smi_disable_event(smi_event_t ev);
37
85bc8ca6 38#endif
This page took 0.023165 seconds and 4 git commands to generate.