source: svn/trunk/newcon3bcm2_21bu/toolchain/mips-linux-uclibc/include/linux/apm_bios.h

Last change on this file was 2, checked in by jglee, 11 years ago

first commit

  • Property svn:executable set to *
File size: 3.3 KB
Line 
1#ifndef _LINUX_APM_H
2#define _LINUX_APM_H
3
4/*
5 * Include file for the interface to an APM BIOS
6 * Copyright 1994-2001 Stephen Rothwell (sfr@canb.auug.org.au)
7 *
8 * This program is free software; you can redistribute it and/or modify it
9 * under the terms of the GNU General Public License as published by the
10 * Free Software Foundation; either version 2, or (at your option) any
11 * later version.
12 *
13 * This program is distributed in the hope that it will be useful, but
14 * WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
16 * General Public License for more details.
17 */
18
19typedef unsigned short  apm_event_t;
20typedef unsigned short  apm_eventinfo_t;
21
22/*
23 * Power states
24 */
25#define APM_STATE_READY         0x0000
26#define APM_STATE_STANDBY       0x0001
27#define APM_STATE_SUSPEND       0x0002
28#define APM_STATE_OFF           0x0003
29#define APM_STATE_BUSY          0x0004
30#define APM_STATE_REJECT        0x0005
31#define APM_STATE_OEM_SYS       0x0020
32#define APM_STATE_OEM_DEV       0x0040
33
34#define APM_STATE_DISABLE       0x0000
35#define APM_STATE_ENABLE        0x0001
36
37#define APM_STATE_DISENGAGE     0x0000
38#define APM_STATE_ENGAGE        0x0001
39
40/*
41 * Events (results of Get PM Event)
42 */
43#define APM_SYS_STANDBY         0x0001
44#define APM_SYS_SUSPEND         0x0002
45#define APM_NORMAL_RESUME       0x0003
46#define APM_CRITICAL_RESUME     0x0004
47#define APM_LOW_BATTERY         0x0005
48#define APM_POWER_STATUS_CHANGE 0x0006
49#define APM_UPDATE_TIME         0x0007
50#define APM_CRITICAL_SUSPEND    0x0008
51#define APM_USER_STANDBY        0x0009
52#define APM_USER_SUSPEND        0x000a
53#define APM_STANDBY_RESUME      0x000b
54#define APM_CAPABILITY_CHANGE   0x000c
55
56/*
57 * Error codes
58 */
59#define APM_SUCCESS             0x00
60#define APM_DISABLED            0x01
61#define APM_CONNECTED           0x02
62#define APM_NOT_CONNECTED       0x03
63#define APM_16_CONNECTED        0x05
64#define APM_16_UNSUPPORTED      0x06
65#define APM_32_CONNECTED        0x07
66#define APM_32_UNSUPPORTED      0x08
67#define APM_BAD_DEVICE          0x09
68#define APM_BAD_PARAM           0x0a
69#define APM_NOT_ENGAGED         0x0b
70#define APM_BAD_FUNCTION        0x0c
71#define APM_RESUME_DISABLED     0x0d
72#define APM_NO_ERROR            0x53
73#define APM_BAD_STATE           0x60
74#define APM_NO_EVENTS           0x80
75#define APM_NOT_PRESENT         0x86
76
77/*
78 * APM Device IDs
79 */
80#define APM_DEVICE_BIOS         0x0000
81#define APM_DEVICE_ALL          0x0001
82#define APM_DEVICE_DISPLAY      0x0100
83#define APM_DEVICE_STORAGE      0x0200
84#define APM_DEVICE_PARALLEL     0x0300
85#define APM_DEVICE_SERIAL       0x0400
86#define APM_DEVICE_NETWORK      0x0500
87#define APM_DEVICE_PCMCIA       0x0600
88#define APM_DEVICE_BATTERY      0x8000
89#define APM_DEVICE_OEM          0xe000
90#define APM_DEVICE_OLD_ALL      0xffff
91#define APM_DEVICE_CLASS        0x00ff
92#define APM_DEVICE_MASK         0xff00
93
94/*
95 * Battery status
96 */
97#define APM_MAX_BATTERIES       2
98
99/*
100 * APM defined capability bit flags
101 */
102#define APM_CAP_GLOBAL_STANDBY          0x0001
103#define APM_CAP_GLOBAL_SUSPEND          0x0002
104#define APM_CAP_RESUME_STANDBY_TIMER    0x0004 /* Timer resume from standby */
105#define APM_CAP_RESUME_SUSPEND_TIMER    0x0008 /* Timer resume from suspend */
106#define APM_CAP_RESUME_STANDBY_RING     0x0010 /* Resume on Ring fr standby */
107#define APM_CAP_RESUME_SUSPEND_RING     0x0020 /* Resume on Ring fr suspend */
108#define APM_CAP_RESUME_STANDBY_PCMCIA   0x0040 /* Resume on PCMCIA Ring */
109#define APM_CAP_RESUME_SUSPEND_PCMCIA   0x0080 /* Resume on PCMCIA Ring */
110
111/*
112 * ioctl operations
113 */
114#include <linux/ioctl.h>
115
116#define APM_IOC_STANDBY         _IO('A', 1)
117#define APM_IOC_SUSPEND         _IO('A', 2)
118
119#endif  /* LINUX_APM_H */
Note: See TracBrowser for help on using the repository browser.