The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/dev/acpi/acpireg.h

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 /*      $NetBSD: acpireg.h,v 1.3 2002/06/15 18:03:42 thorpej 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 /*
   39  * This file defines various ACPI event messages, etc.
   40  */
   41 
   42 /*
   43  * 5.6.3: Device Object Notifications
   44  */
   45 
   46 /* Device Object Notification Types */
   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_PerformancePresentCapabiltitesChanged 0x80
   80 #define ACPI_NOTIFY_CStatesChanged              0x81
   81 
   82 /*
   83  * 6: Configuration
   84  *
   85  * 6.1: Device Identification Objects
   86  *
   87  *      _ADR    Object that evaluates to a device's address on
   88  *              its parent bus.
   89  *
   90  *      _CID    Object that evaluates to a device's Plug and Play
   91  *              compatible ID list.
   92  *
   93  *      _DDN    Object that associates a logical software name
   94  *              (for example, COM1) with a device.
   95  *
   96  *      _HID    Object that evaluates to a device's Plug and Play
   97  *              hardware ID.
   98  *
   99  *      _SUN    Objcet that evaluates to the slot-unique ID number
  100  *              for a slot.
  101  *
  102  *      _STR    Object that contains a Unicode identifier for a device.
  103  *
  104  *      _UID    Object that specifies a device's unique persistent ID,
  105  *              or a control method that generates it.
  106  */
  107 
  108 /*
  109  * 6.1.1: _ADR (Address)
  110  *
  111  *      EISA            EISA slot numnber 0-f
  112  *
  113  *      Floppy Bus      Drive select values used for programming
  114  *                      the floppy controller to access the
  115  *                      specified INT13 unit number.  The _ADR
  116  *                      objects should be sorted based on drive
  117  *                      select encoding from 0-3.
  118  *
  119  *      IDE controller  0 - primary channel, 1 - secondary channel
  120  *
  121  *      IDE channel     0 - master drive, 1 - slave drive
  122  *
  123  *      PCI             High word - Device #, Low word - Function #
  124  *                      0xffff == all functions on a device
  125  *
  126  *      PCMCIA          Socket #; 0 == first socket
  127  *
  128  *      PC Card         Socket #; 0 == first socket
  129  *
  130  *      SMBus           Lowest slave address
  131  *
  132  *      USB Root Hub    Only one child of the host controller, must
  133  *                      have an _ADR of 0.
  134  *
  135  *      USB ports       port number
  136  */
  137 #define ACPI_ADR_PCI_DEV(x)     (((x) >> 16) & 0xffff)
  138 #define ACPI_ADR_PCI_FUNC(x)    ((x) & 0xffff)
  139 #define ACPI_ADR_PCI_ALLFUNCS   0xffff
  140 
  141 /*
  142  * 6.1.2: _CID (Compatible ID)
  143  */
  144 
  145 /*
  146  * 6.1.3: _DDN (Device Name)
  147  */
  148 
  149 /*
  150  * 6.1.4: _HID (Hardware ID)
  151  */
  152 
  153 /*
  154  * 6.1.5: _STR (String)
  155  */
  156 
  157 /*
  158  * 6.1.6: _SUN (Slot User Number)
  159  */
  160 
  161 /*
  162  * 6.1.7: _UID (Unique ID)
  163  */
  164 
  165 /*
  166  * 6.2: Device Configuration Objects
  167  *
  168  *      _CRS    Object that specifies a device's *current* resource
  169  *              settings, or a control method that generates such
  170  *              an object.
  171  *
  172  *      _DIS    Control method that disables a device.
  173  *
  174  *      _DMA    Object that specifies a device's *current* resources
  175  *              for DMA transactions.
  176  *
  177  *      _FIX    Object used to provide correlation between the
  178  *              fixed-hardware register blocks defined in the FADT
  179  *              and the devices that implement these fixed-hardware
  180  *              registers.
  181  *
  182  *      _HPP    Object that specifies the cache-line size, latency
  183  *              timer, SERR enable, and PERR enable values to be
  184  *              used when configuring a PCI device inserted into
  185  *              a hot-plug slot or initial configuration of a PCI
  186  *              device at system boot.
  187  *
  188  *      _MAT    Object that evaluates to a buffer of MADT APIC
  189  *              structure entries.
  190  *
  191  *      _PRS    An object that specifies a device's *possible*
  192  *              resource settings, or a control method that
  193  *              generates such an object.
  194  *
  195  *      _PRT    Object that specifies the PCI interrupt routing
  196  *              table.
  197  *
  198  *      _PXM    Object that specifies a proximity domain for a device.
  199  *
  200  *      _SRS    Control method that sets a device's settings.
  201  */
  202 
  203 /*
  204  * 6.2.1: _CRS (Current Resource Settings)
  205  */
  206 
  207 /*
  208  * 6.2.2: _DIS (Disable)
  209  */
  210 
  211 /*
  212  * 6.2.3: _DMA (Direct Memory AccesS)
  213  */
  214 
  215 /*
  216  * 6.2.4: _FIX (Fixed Register Resource Provider)
  217  */
  218 
  219 /*
  220  * 6.2.5: _HPP (Hot Plug Parameters)
  221  */
  222 
  223 /*
  224  * 6.2.6: _MAT (Multiple APIC Table Entry)
  225  */
  226 
  227 /*
  228  * 6.2.7: _PRS (Possible Resource Settings)
  229  */
  230 
  231 /*
  232  * 6.2.8: _PRT (PCI Routing Table)
  233  */
  234 
  235 /*
  236  * 6.2.9: _PXM (Proximity)
  237  */
  238 
  239 /*
  240  * 6.2.10: _SRS (Set Resource Settings)
  241  */
  242 
  243 /*
  244  * 6.3: Device Insertion and Removal Objects
  245  *
  246  *      _EDL    Object that evaluates to a package of namespace
  247  *              references of device objects that depend on
  248  *              the device containing _EDL.  Whenever the named
  249  *              devices is ejected, OSPM ejects all dependent
  250  *              devices.
  251  *
  252  *      _EJD    Object that evaluates to the name of a device object
  253  *              on which a device depends.  Whenever the named
  254  *              device is ejected, the dependent device must receive
  255  *              an ejection notification.
  256  *
  257  *      _EJx    Control method that ejects a device.
  258  *
  259  *      _LCK    Control method that locks or unlocks a device.
  260  *
  261  *      _RMV    Object that indicates that the given device is
  262  *              removable.
  263  *
  264  *      _STA    Control method that returns a device's status.
  265  */
  266 
  267 /*
  268  * 6.3.1: _EDL (Eject Device List)
  269  */
  270 
  271 /*
  272  * 6.3.2: _EJD (Ejection Dependent Device)
  273  */
  274 
  275 /*
  276  * 6.3.3: _EJx (Eject)
  277  *
  278  *      x       Indicates sleeping state at which device
  279  *              can be ejected.
  280  */
  281 
  282 /*
  283  * 6.3.4: _LCK (Lock)
  284  */
  285 
  286 /*
  287  * 6.3.5: _RMV (Remove)
  288  */
  289 
  290 /*
  291  * 6.3.6: _STA (Status) for device insertion/removal
  292  */
  293 #define ACPI_STA_DEV_PRESENT    0x00000001      /* device present */
  294 #define ACPI_STA_DEV_ENABLED    0x00000002      /* enabled (decoding res.) */
  295 #define ACPI_STA_DEV_SHOW       0x00000004      /* show device in UI */
  296 #define ACPI_STA_DEV_OK         0x00000008      /* functioning properly */
  297 #define ACPI_STA_DEV_BATT       0x00000010      /* battery present */
  298 
  299 /*
  300  * 6.4: Resource Data Types for ACPI
  301  *
  302  *      Used by the _CRS, _PRS, and _SRS methods.
  303  */
  304 
  305 /*
  306  * 7.1.4: _STA (Status) for power resource current state
  307  */
  308 #define ACPI_STA_POW_OFF        0               /* power resource off */
  309 #define ACPI_STA_POW_ON         1               /* power resource on */
  310 
  311 /*
  312  * ACPI driver components
  313  */
  314 
  315 #define ACPI_BUS_COMPONENT      0x00010000
  316 #define ACPI_ACAD_COMPONENT     0x00020000
  317 #define ACPI_BAT_COMPONENT      0x00040000
  318 #define ACPI_BUTTON_COMPONENT   0x00080000
  319 #define ACPI_EC_COMPONENT       0x00100000
  320 #define ACPI_LID_COMPONENT      0x00200000
  321 #define ACPI_RESOURCE_COMPONENT 0x00400000

Cache object: 1c102b2587f5d4605c4bf5a4f948a063


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.