]> CyberLeo.Net >> Repos - FreeBSD/releng/10.0.git/blob - sys/i386/bios/apm.h
- Copy stable/10 (r259064) to releng/10.0 as part of the
[FreeBSD/releng/10.0.git] / sys / i386 / bios / apm.h
1 /*-
2  * APM (Advanced Power Management) BIOS Device Driver
3  *
4  * Copyright (c) 1994 UKAI, Fumitoshi.
5  * Copyright (c) 1994-1995 by HOSOKAWA, Tatsumi <hosokawa@jp.FreeBSD.org>
6  * Copyright (c) 1996 Nate Williams <nate@FreeBSD.org>
7  * Copyright (c) 1997 Poul-Henning Kamp <phk@FreeBSD.org>
8  *
9  * This software may be used, modified, copied, and distributed, in
10  * both source and binary form provided that the above copyright and
11  * these terms are retained. Under no circumstances is the author
12  * responsible for the proper functioning of this software, nor does
13  * the author assume any responsibility for damages incurred with its
14  * use.
15  *
16  * Sep, 1994    Implemented on FreeBSD 1.1.5.1R (Toshiba AVS001WD)
17  *
18  * $FreeBSD$
19  */
20
21 #ifndef __APM_H__
22 #define __APM_H__
23
24 #define APM_NEVENTS 16
25 #define APM_NPMEV   13
26 #define APM_UNKNOWN     0xff
27
28 /* static data */
29 struct apm_softc {
30 #ifdef PC98
31         bus_space_tag_t         sc_iot;
32         bus_space_handle_t      sc_ioh;
33         struct resource         *sc_res;
34 #endif
35         struct mtx      mtx;
36         struct cv       cv;
37         struct proc     *event_thread;
38         int     initialized, active, running, bios_busy;
39         int     always_halt_cpu, slow_idle_cpu;
40         int     disabled, disengaged;
41         int     suspending;
42         int     standby_countdown, suspend_countdown;
43         u_int   minorversion, majorversion;
44         u_int   intversion, connectmode;
45         u_int   standbys, suspends;
46         struct bios_args bios;
47         struct apmhook sc_suspend;
48         struct apmhook sc_resume;
49         struct selinfo sc_rsel;
50         int     sc_flags;
51         int     event_count;
52         int     event_ptr;
53         struct  apm_event_info event_list[APM_NEVENTS];
54         u_char  event_filter[APM_NPMEV];
55 };
56
57 #endif /* !__APM_H__ */