Home | History | Annotate | Line # | Download | only in acpi
acpireg.h revision 1.8
      1 /*	$NetBSD: acpireg.h,v 1.8 2010/04/27 05:34:14 jruoho Exp $	*/
      2 
      3 /*
      4  * Copyright 2001 Wasabi Systems, Inc.
      5  * All rights reserved.
      6  *
      7  * Written by Jason R. Thorpe for Wasabi Systems, Inc.
      8  *
      9  * Redistribution and use in source and binary forms, with or without
     10  * modification, are permitted provided that the following conditions
     11  * are met:
     12  * 1. Redistributions of source code must retain the above copyright
     13  *    notice, this list of conditions and the following disclaimer.
     14  * 2. Redistributions in binary form must reproduce the above copyright
     15  *    notice, this list of conditions and the following disclaimer in the
     16  *    documentation and/or other materials provided with the distribution.
     17  * 3. All advertising materials mentioning features or use of this software
     18  *    must display the following acknowledgement:
     19  *	This product includes software developed for the NetBSD Project by
     20  *	Wasabi Systems, Inc.
     21  * 4. The name of Wasabi Systems, Inc. may not be used to endorse
     22  *    or promote products derived from this software without specific prior
     23  *    written permission.
     24  *
     25  * THIS SOFTWARE IS PROVIDED BY WASABI SYSTEMS, INC. ``AS IS'' AND
     26  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
     27  * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
     28  * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL WASABI SYSTEMS, INC
     29  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
     30  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
     31  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
     32  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
     33  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
     34  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
     35  * POSSIBILITY OF SUCH DAMAGE.
     36  */
     37 
     38 #ifndef _SYS_DEV_ACPI_ACPIREG_H
     39 #define _SYS_DEV_ACPI_ACPIREG_H
     40 
     41 /*
     42  * XXX: Use the native types from <actypes.h>.
     43  *
     44  *	Move the device-specific constants to
     45  *	the device-specific files.
     46  */
     47 #define	ACPI_NOTIFY_BusCheck		0x00
     48 #define	ACPI_NOTIFY_DeviceCheck		0x01
     49 #define	ACPI_NOTIFY_DeviceWake		0x02
     50 #define	ACPI_NOTIFY_EjectRequest	0x03
     51 #define	ACPI_NOTIFY_DeviceCheckLight	0x04
     52 #define	ACPI_NOTIFY_FrquencyMismatch	0x05
     53 #define	ACPI_NOTIFY_BusModeMismatch	0x06
     54 #define	ACPI_NOTIFY_PowerFault		0x07
     55 				/*	0x08 - 0x7f	reserved */
     56 
     57 /* Control Method Battery Device Notification Types */
     58 #define	ACPI_NOTIFY_BatteryStatusChanged	0x80
     59 #define	ACPI_NOTIFY_BatteryInformationChanged	0x81
     60 
     61 /* Power Source Object Notification Types */
     62 #define	ACPI_NOTIFY_PowerSourceStatusChanged	0x80
     63 
     64 /* Thermal Zone Object Notication Types */
     65 #define	ACPI_NOTIFY_ThermalZoneStatusChanged	0x80
     66 #define	ACPI_NOTIFY_ThermalZoneTripPointsChanged 0x81
     67 #define	ACPI_NOTIFY_DeviceListsChanged		0x82
     68 
     69 /* Control Method Power Button Notification Types */
     70 #define	ACPI_NOTIFY_S0PowerButtonPressed	0x80
     71 
     72 /* Control Method Sleep Button Notification Types */
     73 #define	ACPI_NOTIFY_S0SleepButtonPressed	0x80
     74 
     75 /* Control Method Lid Notification Types */
     76 #define	ACPI_NOTIFY_LidStatusChanged		0x80
     77 
     78 /* Processor Device Notification Values */
     79 #define	ACPI_NOTIFY_PerformancePresentCapabilitiesChanged 0x80
     80 #define	ACPI_NOTIFY_CStatesChanged		0x81
     81 
     82 /*
     83  * A common device status mask.
     84  */
     85 #define ACPI_STA_OK		(ACPI_STA_DEVICE_PRESENT	|	\
     86 				 ACPI_STA_DEVICE_ENABLED	|	\
     87 				 ACPI_STA_DEVICE_FUNCTIONING)
     88 
     89 /*
     90  * PCI functions.
     91  */
     92 #define	ACPI_ADR_PCI_DEV(x)	(((x) >> 16) & 0xffff)
     93 #define	ACPI_ADR_PCI_FUNC(x)	((x) & 0xffff)
     94 #define	ACPI_ADR_PCI_ALLFUNCS	0xffff
     95 
     96 /*
     97  * ACPI driver components.
     98  */
     99 #define	ACPI_BUS_COMPONENT	0x00010000
    100 #define	ACPI_ACAD_COMPONENT	0x00020000
    101 #define	ACPI_BAT_COMPONENT	0x00040000
    102 #define	ACPI_BUTTON_COMPONENT	0x00080000
    103 #define	ACPI_EC_COMPONENT	0x00100000
    104 #define	ACPI_LID_COMPONENT	0x00200000
    105 #define	ACPI_RESOURCE_COMPONENT	0x00400000
    106 #define	ACPI_TZ_COMPONENT	0x00800000
    107 
    108 #endif	/* !_SYS_DEV_ACPI_ACPIREG_H */
    109