linux/drivers/acpi/osl.c
<<
>>
Prefs
   1/*
   2 *  acpi_osl.c - OS-dependent functions ($Revision: 83 $)
   3 *
   4 *  Copyright (C) 2000       Andrew Henroid
   5 *  Copyright (C) 2001, 2002 Andy Grover <andrew.grover@intel.com>
   6 *  Copyright (C) 2001, 2002 Paul Diefenbaugh <paul.s.diefenbaugh@intel.com>
   7 *  Copyright (c) 2008 Intel Corporation
   8 *   Author: Matthew Wilcox <willy@linux.intel.com>
   9 *
  10 * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  11 *
  12 *  This program is free software; you can redistribute it and/or modify
  13 *  it under the terms of the GNU General Public License as published by
  14 *  the Free Software Foundation; either version 2 of the License, or
  15 *  (at your option) any later version.
  16 *
  17 *  This program is distributed in the hope that it will be useful,
  18 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
  19 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  20 *  GNU General Public License for more details.
  21 *
  22 *  You should have received a copy of the GNU General Public License
  23 *  along with this program; if not, write to the Free Software
  24 *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  25 *
  26 * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  27 *
  28 */
  29
  30#include <linux/module.h>
  31#include <linux/kernel.h>
  32#include <linux/slab.h>
  33#include <linux/mm.h>
  34#include <linux/highmem.h>
  35#include <linux/pci.h>
  36#include <linux/interrupt.h>
  37#include <linux/kmod.h>
  38#include <linux/delay.h>
  39#include <linux/workqueue.h>
  40#include <linux/nmi.h>
  41#include <linux/acpi.h>
  42#include <linux/acpi_io.h>
  43#include <linux/efi.h>
  44#include <linux/ioport.h>
  45#include <linux/list.h>
  46#include <linux/jiffies.h>
  47#include <linux/semaphore.h>
  48
  49#include <asm/io.h>
  50#include <asm/uaccess.h>
  51
  52#include <acpi/acpi.h>
  53#include <acpi/acpi_bus.h>
  54#include <acpi/processor.h>
  55
  56#define _COMPONENT              ACPI_OS_SERVICES
  57ACPI_MODULE_NAME("osl");
  58#define PREFIX          "ACPI: "
  59struct acpi_os_dpc {
  60        acpi_osd_exec_callback function;
  61        void *context;
  62        struct work_struct work;
  63        int wait;
  64};
  65
  66#ifdef CONFIG_ACPI_CUSTOM_DSDT
  67#include CONFIG_ACPI_CUSTOM_DSDT_FILE
  68#endif
  69
  70#ifdef ENABLE_DEBUGGER
  71#include <linux/kdb.h>
  72
  73/* stuff for debugger support */
  74int acpi_in_debugger;
  75EXPORT_SYMBOL(acpi_in_debugger);
  76
  77extern char line_buf[80];
  78#endif                          /*ENABLE_DEBUGGER */
  79
  80static int (*__acpi_os_prepare_sleep)(u8 sleep_state, u32 pm1a_ctrl,
  81                                      u32 pm1b_ctrl);
  82
  83static acpi_osd_handler acpi_irq_handler;
  84static void *acpi_irq_context;
  85static struct workqueue_struct *kacpid_wq;
  86static struct workqueue_struct *kacpi_notify_wq;
  87struct workqueue_struct *kacpi_hotplug_wq;
  88EXPORT_SYMBOL(kacpi_hotplug_wq);
  89
  90/*
  91 * This list of permanent mappings is for memory that may be accessed from
  92 * interrupt context, wne" name=="v2.6.20"
	  >
  v2.6.20
  
  edriv't d/acpi/iorl.c#()d="L21" class="line" name="L21">  21static 9a href="+code=acpi_osd_9andle9his program; if not, write tod="L79" class="line" name="L79">  79static 9oid *acpi_os_dpc {
  60static 9truct work_struct acpi_irq_han.c mrivers/acpi/osl.c mL88" class="line" name="L88">  88static 9truct contess="sref">__acpi_iohre(kacpi_hotpluvirmrivers/acpi/oslvirmL88" class="line" name="L88">  88struct 9a href="+code=workqueue9struc97llback" class="sref">acpi_osd_exphysical_addr.c#f="drivers/acpi/osl.physical_addr.c#>pm1b_ctrl);
  88acpi_osd_exsizcode=u32" class=sd_exsizcf">sleep_state, s class="line" name="L88">  88 *
<" id=99llback" clasunsignL92e Freeep_state, stacounmrivers/acpi/oslstacounmf">s class="line" name="L88">  88 * ~~~~~~~~  65 *
01a h~~L52" class="line" name="L52">  52 *  This p02a h~~2 class="sref">acpi_osd_hanLIST_HEADrivers/acpi/oslLIST_HEAD="sref">acpi_in_debugger  89 *  it und03a h~~" class="sref">acpi_osd_hanDEFINE_MUTElass="string">&qDEFINE_MUTEl="sref">acpi_in_debugger  89 *  the Fr04a h~~452" class="line" name="L52">  52 *  (at yo05a h~~_struct" clacontess="sref">__acpi_in/acpi/osl.c#L64" i_in/a="sref">acpi_irq_handler  89 *
06a h~~L77" class="line" name="L77">  77 *  This p07a h~~f="drivers/acpi/osl.c#L28" id="L91" class="line" name="L91">  91 *  but WI08a h~~ANY WARRANTY; without even theTpi/stf="dy b_OSI(Ll.c#="L3" class="line" name="L3">   3<10> *  MERCHA09a h~~f="drivers/acpi/osl.c#L10" id="L10" class="line" name="L10">  10 * ~~~~~~~~~~~~1~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~F id pre-y ttf="driropan>Ll.c#-	  <22d="L18" class="line" name="L18">  18 *
<1a h~ef="drivers/acpi/osl.c#L12" id>Ll.c# r.cpondL92TRUE upon a BIOS OSI(Ll.c#= lugryd="L16" class="line" name="L16">  16 *  This pprogr1m is free software; you can re="L16" class="line" name="L16">  16 *  it undder t1e terms of the GNU General PublUn
  16 *  the Frree S1ftware Foundation; either versiandaax_lOSI(Ll.c#=   16 *  (at yoour o1tion) any later version.twaredriverpi/oill-0  16 *

  16 *  This pprogr1m is distributed in the hope t="L16" class="line" name="L16">  16 *  but WIITHOU1 ANY WARRANTY; without even theFor exa07  ,lOSI(Ll.c#= wi/ou#L92oref=sumers/are-POST a="L16" class="line" name="L16">  16 *  MERCHAANTAB1LITY or FITNESS FOR A PARTICULAvideodrir92oreoni/system, becau#L>Ll.c# atdrivertimd="L24" class="line" name="L24">  24 *  GNU G1enera1 Public License for more detailcl Pubnot d/aa speedyef=stsl.c  16 *1
  18 *  This prrogr1have received a copy of the GNULl.c# hi/ono wiyrs/acellpcpi/BIOS s/askipe as pimd-0  16 *  along1 with1this program; if not, write to POST --aax_tverpLl.c# atdabe accessede aiv>
ance disadvantage ="L16" class="line" name="L16">  16 *  Found1ation1 Inc., 59 Temple Place, Suite 3On anothrefsystem, cpi/BIOS driverou#L92OSI(Ll.c#="L3" class="line" name="L3">   3<1a> *1
  18 * ~~~~~~1~~~~~1~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~OSI(Ll.c#= s/acpy gocp  16 *1
  16 */
  16  10#includ1e <id="L19" class="line" name="L19">  19#includ1e <Ll.c#-	  <23eonwir92we r.cpond FALSE ="L16" class="line" name="L16">  16#includ1e <  16 *  it undewith13his program; if not, write to BIOS drivers ral PubNOT lugryb_OSI(Ll.c#=2orefujaxi/system" ="L16" class="line" name="L16">  16#includ1e <  16  24#includ1e <  18#includ1e <  18  29#includ1e <  90#includ1e <work_struct   60#includ1e <acpi_oenab  ode=u32" class=enab  a hr:1 class="line" name="L89">  89#includ1e <acpi_odmiode=u32" class=dmia hr:1 class="line" name="L89">  89acpi_ocmdef="ine=u32" class=cmdef="a hr:1 class="line" name="L89">  89 *  the Frenux/1oport.}ork_struct   65#includ1e <  66#includ1e <pm1b_ctrl);
acpi_in_debuggerpm1b_ctrl);

  vfac"ine=u32" class=>
  vfac"/a> pm1a_ctrl,
  66#includ1e <  60,


  vfac"/a> ))" class="line" name="L60">  60#includ1e <  90#includ1e <acpi_opivetk_acpi_in_debuKERN_NOTICE
pm1a_ctrl,
"ACPI: class="line" name="L90">  90#includ1f="drivers/acpi/osl.c#L512" id15  90#includ1e <acpi_oenab  ode=u32" class=enab  a hr ?rfn>

  90acpi_ocmdef="ine=u32" class=cmdef="a hr ?rfn>
  90acpi_odmiode=u32" class=dmia hr ?rfn>

  58
  58#includ1   77,
  58  58#includ1  90       1 __acpi_in/acpi/osl.c#L64" i_in/a="sref">acpi_irq_handleracpi_os_dpc {
kacpi_hotpluga#f="drivers/acpiga#/a>   90#includ1 void *acpi_irq_han.engthf="drivers/acpi.ength/a> kacpi_hotpludesdrivers/acpi/osldesd"L89"class="line" name="L66">  66       1 struct   60       1 int wait< href="+code=pm1ref="driverss="sred="L65cpi_os_dpc {
ddrf="drivers/acpi/ddr"L89 class="line" name="L58">  58};
  52

< issuereid="L29" class="line" name="L29">  29 *
wait< href="+code=pmmemcpyf="drivers/acpimemcpyL84"e&pi_os_dpc {
ddrf="drivers/acpi/ddr"L89, &pi_os_dpc {ga#f="drivers/acpiga#/a> - id="i_os_dpc {
ddr.c#f="drivers/acpi/ddr.c#s="s, sizcofef">acpi_in_debugddrf="drivers/acpi/ddr"L89)" class="line" name="L58">  58#includ1e ,
,
  66  58#includ1f="drivers/acpi/osl.c#L710" id1"L70" class="line" name="L70">  70#ifdef 1  29#includ1e < {ga#f="drivers/acpiga#/a> - id="i_os_dpc {L29ce_i rivers/acpi/osl.29ce_i "L60"==ef">ACPI_OS_SERVICES "class="line" name="L66">  66
, stluestacpi_in_debugddrf="drivers/acpi/ddr"L89 kacpi_hotpludesdrivers/acpi/osldesd"L89" class="line" name="L58">  58/* stuff 1for d17="sref">wait {ga#f="drivers/acpiga#/a> - id="i_os_dpc {L29ce_i rivers/acpi/osl.29ce_i "L60"==ef">ACPI_OS_SERVICES "class="line" name="L66">  66};
, stluestacpi_in_debugddrf="drivers/acpi/ddr"L89 kacpi_hotpludesdrivers/acpi/osldesd"L89" class="line" name="L58">  58
}class="line" name="L58">  58
  77extern 1char acpi_irq_hani_in/acpi/osl.c#L64" i_in/a="sref">acpi_irq_handler  77  60
acpi_irq_handler
"L60.s="sref">acpi_oxL81" ="drt_blo  kacpi_hotplu
osl..bl_FA>
acpi_oL81 ="drt_.engthf="drivers/acpiL81 ="drt_.ength/a>   90static 1int (*
  58       1                        1     18L52" class="line" name="L52">  52
acpi_irq_handler
"L60.s="sref">acpi_oxL81b ="drt_blo  kacpi_hotplu
osl..bl_FA>
acpi_oL81 ="drt_.engthf="drivers/acpiL81 ="drt_.ength/a>   90
  58};
  52static 1struct acpi_irq_handler
"L60.s="sref">acpi_oxL81a85" irol_blo  kacpi_hotplu
osl..bl_FA>
acpi_oL81 5" irol_.engthf="drivers/acpiL81 5" irol_.ength/a>   90

  58extern 1  58 *  but WITacpi_osd_exreluest
"L60.s="sref">acpi_oxL81b85" irol_blo  kacpi_hotplu
osl..bl_FA>
acpi_oL81 5" irol_.engthf="drivers/acpiL81 5" irol_.ength/a>   90

  58/*1
  58       1lass="comment"> * This l1ist o191llback" clasif (pi_os_dpc {
osl..bl_FA>
acpi_oL8_pimdr_.engthf="drivers/acpiL8_pimdr_.ength"L60"==e4"class="line" name="L77">  77 * interr1upt c192a href="+code=u32" ceep_state, sd_exreluest
"L60.s="sref">acpi_oxL8_pimdr_blo   58  58};
acpi_osd_exreluest
"L60.s="sref">acpi_oxL8285" irol_blo  kacpi_hotplu
osl..bl_FA>
acpi_oL82 5" irol_.engthf="drivers/acpiL82 5" irol_.ength/a>   90static 19truct 
  58
  77struct 19a href="+code=workqueue19stru197llback" classsupport */
  29  49 *
1<" id199llback" clasif (!(pi_os_dpc {
osl..bl_FA>
acpi_ogpe0_blo <_.engthf="drivers/acpigpe0_blo <_.engthllbac& 0x1)"class="line" name="L77">  77 * ~~~~~~2~acpi_osd_exreluest
"L60.s="sref">acpi_oxgpe0_blo   90 *201a h20u32pi_os_dpc {
osl..bl_FA>
acpi_ogpe0_blo <_.engthf="drivers/acpigpe0_blo <_.engthllba,csn>
  58 *  This 202a h20L83" class="line" name="L83">  83 *  it un203a h203llback" clasif (!(pi_os_dpc {
osl..bl_FA>
acpi_ogpe1_blo <_.engthf="drivers/acpigpe1_blo <_.engthllbac& 0x1)"class="line" name="L77">  77 *  the F204a h20cessoef="+code=u32" ceep_state, sd_exreluest
"L60.s="sref">acpi_oxgpe1_blo   90u32pi_os_dpc {
osl..bl_FA>
acpi_ogpe1_blo <_.engthf="drivers/acpigpe1_blo <_.engthllba,csn>
  58 *206a h2~L77" class="line" name="L77">  77 *  This 207a h207llback" clasrejax_l0 class="line" name="L58">  58 *  but W208a h20sref"}class="line" name="L58">  58 *  MERCH209a h2~f="dri">kacpi_hotpludevic._in/a="srrivers/acpi/osldevic._in/a="sr="sref">acpi_in_debugler  58 * ~~~~~~2~~~~~21f="drclass="line" name="L58">  58 *2<1a h2ef="drcontess="sref">__acpq_handl_#ivetdrivers/acpi/oslq_handl_#ivetd="sre0kacpi_hotplufmacpi/osl.c#L64" fmallba,c..."class="line" name="L77">  77 *  This 2progr21uct"  class="line" name="L60">  60 *  it un2der t21="sref">wait< href="+code=pmva_.c mrivers/acpi/oslva_.c m="sref">acpi_irq_handrgsrs/acpi/osl.c#Ldrgs"L89 class="line" name="L58">  58 *  the F2ree S214llback" class="sref">acpi_ova_starmrivers/acpi/oslva_starm="sref">acpi_in_debugrgsrs/acpi/osl.c#Ldrgs"L89kacpi_hotplufmacpi/osl.c#L64" fmallba" class="line" name="L58">  58 *  (at y2our o215llback" clasf">acpi_irq_handlerkacpi_hotplufmacpi/osl.c#L64" fmallba,cf">acpi_in_debugrgsrs/acpi/osl.c#Ldrgs"L89" class="line" name="L58">  58 *2
wait< href="+code=pmva_en rivers/acpi/oslva_en ="sref">acpi_in_debugrgsrs/acpi/osl.c#Ldrgs"L89" class="line" name="L58">  58 *  This 2progr2m is d}class="line" name="L58">  58 *  but W2ITHOU21L49" class="line" name="L49">  49 *  MERCH2ANTAB2LITY ocontess="sref">__acpq_handl_v#ivetdrivers/acpi/oslq_handl_v#ivetd="sre0kacpi_hotplufmacpi/osl.c#L64" fmallba,c href="+code=pmva_.c mrivers/acpi/oslva_.c m="sref">acpi_irq_handrgsrs/acpi/osl.c#Ldrgs"L89"class="line" name="L77">  77 *  GNU G2enera2 Publi class="line" name="L60">  60 *2
  78 *  This 2rrogr22L83" class="line" name="L83">  83 *  along2 with22="sref">wait< href="+code=pmvs#ivetdrivers/acpi/oslvs#ivetd="sref">acpi_in_debubuffef="+code=acpi_irbuffefa hrkacpi_hotplufmacpi/osl.c#L64" fmallba,cf">acpi_in_debugrgsrs/acpi/osl.c#Ldrgs"L89" class="line" name="L58">  58 *  Found2ation22452" class="line" name="L52">  52 *2
ENABLE_DEBUGGER
  71 * ~~~~~~2~~~~~226"sref">wait {
osl./a>);
  60 *2
wait< href="+code=pmkdb_#ivetdrivers/acpi/oslkdb_#ivetd="srefn>
  58 */
  60acpi_oLivetkf="drivers/acpiLivetk="sref">acpi_in_debuKERN_CO  
  58#includ2e <  58#includ2e <  58acpi_irq_hanLivetkf="drivers/acpiLivetk="sref">acpi_in_debuKERN_CO  
  58 *  it un2ewith23his p"L69" class="line" name="L69">  69#includ2e <  58  66#includ2e <CONFIG_ACPI_KEXEC="+code=acpi_irG_ACPI_KEXEC66" class="line" name="L66">  66  58acpi_irq_hani_in/acpi/osl.c#L64" i_in/a="sref">acpi_irq_hansetu#_dlerkacpi_hotpludrgrs/acpi/osl.c#Ldrg"L89"class="line" name="L77">  77#includ2e <  60#includ2e <acpi_osd_exrsd#f="drivers/acpi/osl.rsd#"L89 =ef">ACPI_OS_SERVs/acpwq" ctourrivers/acpi/osls/acpwq" ctour="sref">acpi_in_debugrgrs/acpi/osl.c#Ldrg"L89  58#includ2e <  58#includ2e <  58
  58#includ2aass="comment"> *  the F2enux/2oport."L69" class="line" name="L69">  69#includ2e <  66#includ2e <acpi_osd_exphysical_addr.c#f="drivers/acpi/osl.physical_addr.c#>pm1b_ctrl);
acpi_irq_handler
  vrivers/acpi/oslq_handl_get_root_po>
  v="srecont"class="line" name="L77">  77#includ2e <  60CONFIG_ACPI_KEXEC="+code=acpi_irG_ACPI_KEXEC66" class="line" name="L66">  66#includ2e <acpi_osd_exrsd#f="drivers/acpi/osl.rsd#"L89"class="line" name="L77">  77#includ2e <,
  58#includ2f="drivers/acpi/osl.c#L522" id251ort."L69" class="line" name="L69">  69#includ2e <  83  60acpi_o"L60lass="commes/acpi/osl Publi !=ef">ACPI_OS_SERVEFI_INVALID_T.c#L7ADD="drivers/acpi/osFI_INVALID_T.c#L7ADD="L89"class="line" name="L77">  77#includ2f="drivers/acpi/osl.c#L526" id255ct" class="se=u32" class="srrejax_l_ctrl,
acpi_o"L60lass="commes/acpi/osl Publi class="line" name="L58">  58#includ2  {efirivers/acpi/oslefi"L60.s="sref">acpi_o"L60ss="commes/acpi/oslubli !=ef">ACPI_OS_SERVEFI_INVALID_T.c#L7ADD="drivers/acpi/osFI_INVALID_T.c#L7ADD="L89"class="line" name="L77">  77#includ2="+code=ACPI_MODULE_NAME2" cla257llback" clasf">wait,
acpi_o"L60ss="commes/acpi/oslubli class="line" name="L58">  58  60#includ2acpi_irq_hanLivetkf="drivers/acpiLivetk="sref">acpi_in_debuKERN_ER="drivers/acpi/oKERN_ER=="sref">acpi_irq_hanpan class="string">"ACPI: class="line" name="L90">  90       2 
  58#includ2 void *  58       2 struct   58       2 int wait<}  60};
, sd_exphysical_addr.c#f="drivers/acpi/osl.physical_addr.c#>pm1b_ctrl);
  58#includ2f="drivers/acpi/osl.c#L626" id26L66" class="line" name="L66">  66 *2, sd_exfind_root_po>
  vrivers/acpi/oslq_hanfind_root_po>
  v="sre&pi_os_dpc {haf="drivers/acpiLa"L89" class="line" name="L58">  58#includ2e wait,
  58  58#includ2f="drivers/acpi/osl.c#L720" id2"L70" }class="line" name="L58">  58#ifdef 2  58#includ2e <  29
acpi_os_dpc {
  29       2lass="comment">/* stuff 2for d273a hr href="+code=pm/osl..c#_looku#f="drivers/acpi/osl..c#_looku#="sref">acpi_in_debugd_exphysical_addr.c#f="drivers/acpi/osl.physical_addr.c#>pm1b_ctrl);
kacpi_hotplu
osl.sizcode=u32" class=sd_exsizcf">sleep_state, s"class="line" name="L77">  77};
  60
work_struct <
 <.c#f="drivers/acpi.c#"L60 class="line" name="L58">  58
  77extern 2char acpi_o.c m_for_each_L17ry_rcuf="drivers/acpi.c m_for_each_L17ry_rcu="sref">acpi_in_debu.c#f="drivers/acpi.c#"L60, &pi_os_dpc {/osl.corl.c##f="drivers/acpi/osl./orl.c##"L89  77 {.c#f="drivers/acpi.c#"L60- id="i_os_dpc {hhysvers/acpi/osl.c#hysL88" <=ef">ACPI_OS_SERVhhysvers/acpi/osl.c#hysL88" &&class="line" name="L77">  77#includ2f="drivers/acpi/osl.c#L820" id279a href="+code=u32" cccccf">ACPI_OS_SERVhhysvers/acpi/osl.c#hysL88" +leep_state, s <=ef">ACPI_OS_SERV.c#f="drivers/acpi.c#"L60- id="i_os_dpc {hhysvers/acpi/osl.c#hysL88" +leep_state, .c#f="drivers/acpi.c#"L60- id="i_os_dpc {s"class="line" name="L77">  77static 2int (*wait,
  58       2                        2     28L52" class="line" name="L52">  52
,
  58       2  58};
  52static 2struct   29
__acpi_iohre(  29extern 2acpi_in_debugd_exphysical_addr.c#f="drivers/acpi/osl.physical_addr.c#>pm1b_ctrl);
acpi_irq_hans"class="line" name="L77">  77 *  but W2T  60
work_struct <
 <.c#f="drivers/acpi.c#"L60 class="line" name="L58">  58/*2
  58       2lass="comment"> * This l2ist o291llback" clasrk_struct <.c#f="drivers/acpi.c#"L60 =ef">ACPI_OS_SERV/osl..c#_looku#f="drivers/acpi/osl..c#_looku#="sref">acpi_in_debuhhysvers/acpi/osl.c#hysL88"kacpi_hotplus" class="line" name="L58">  58
 * interr2upt c292a href="+codif (pi_os_dpc {.c#f="drivers/acpi.c#"L60"class="line" name="L77">  77,
acpi_in_debuhhysvers/acpi/osl.c#hysL88" -ef">ACPI_OS_SERV.c#f="drivers/acpi.c#"L60- id="i_os_dpc {hhysvers/acpi/osl.c#hysL88"" class="line" name="L58">  58};
  52static 29truct   58
  58struct 29a href="+code=workqueue29stru29" claclass="line" name="L58">  58__acpi_iohre(acpi_irq_handleracpi_in_debugd_exphysical_addr.c#f="drivers/acpi/osl.physical_addr.c#>pm1b_ctrl);
acpi_irq_hans"class="line" name="L77">  77 *
2<" id29L90"  class="line" name="L60">  60 * ~~~~~~3~work_struct <
 <.c#f="drivers/acpi.c#"L60 class="line" name="L58">  58 *301a h30__acpi_iohre(acpi_irq_hanvirmrivers/acpi/oslvirm="sr =ef">ACPI_OS_SERVNUL+code=kacpi_hotpNUL+"L89 class="line" name="L58">  58 *  This 302a h30L83" class="line" name="L83">  83 *  it un303a h30="sref">wait< href="+code=pmmutex_lo  {i/osl.orl.c#_lo   58 *  the F304a h304llback" class="sref">acpi_o.c#f="drivers/acpi.c#"L60 =ef">ACPI_OS_SERV/osl..c#_looku#f="drivers/acpi/osl..c#_looku#="sref">acpi_in_debuhhysvers/acpi/osl.c#hysL88"kacpi_hotplus" class="line" name="L58">  58 {.c#f="drivers/acpi.c#"L60"s class="line" name="L60">  60 *306a h306llback" clasck" classep_state, virmrivers/acpi/oslvirm="sr =ef">ACPI_OS_SERV.c#f="drivers/acpi.c#"L60- id="i_os_dpc {virmrivers/acpi/oslvirm="sr +lef">acpi_in_debuhhysvers/acpi/osl.c#hysL88" -ef">ACPI_OS_SERV.c#f="drivers/acpi.c#"L60- id="i_os_dpc {hhysvers/acpi/osl.c#hysL88"" class="line" name="L58">  58 *  This 307a h307llback" clasf">wait< href="+code=pm.c#f="drivers/acpi.c#"L60- id="i_os_dpc {s_dcounmrivers/acpi/osls_dcounm"L60++ class="line" name="L58">  58  58 *  MERCH309a h309llback" clasf">acpi_irq_hanmutex_unlo  {i/osl.orl.c#_lo   58 * ~~~~~~3~~~~~31allback" clasrejax_l_ctrl,
  58 *3<1a h3ef="dr}class="line" name="L58">  58 *  This 3progr31uct" _ctrl,
acpi_in_debugd_exos_get_iohre(  58 *  it un3der t31his pclass="line" name="L58">  58 *  the F3ree S31Inc., 59 Temple Place, Suit/* Mustcpi/="sredpi/Sof5#39;i/osl.orl.c#_lo <5#39;c  29 *  (at y3our o315llbass="sreref">acpi_os_dpc {
  29 *3
acpi_osd_ex.c#_looku#_virmrivers/acpi/oslsd_ex.c#_looku#_virm="srecontess="sref">__acpi_iohre(acpi_irq_hanvirmrivers/acpi/oslvirm="srkacpi_hotplu
osl.sizcode=u32" class=sd_exsizcf">sleep_state, s"class="line" name="L77">  77 *  This 3progr31mapho class="line" name="L60">  60 *  but W3ITHOU318essoef="+codref">work_struct <
 <.c#f="drivers/acpi.c#"L60 class="line" name="L58">  58 *  MERCH3ANTAB31L70" class="line" name="L70">  70 *  GNU G3enera32allback" class="sref">acpi_o.c m_for_each_L17ry_rcuf="drivers/acpi.c m_for_each_L17ry_rcu="sref">acpi_in_debu.c#f="drivers/acpi.c#"L60, &pi_os_dpc {/osl.corl.c##f="drivers/acpi/osl./orl.c##"L89  77 *3
 {.c#f="drivers/acpi.c#"L60- id="i_os_dpc {virmrivers/acpi/oslvirm="sr <=ef">ACPI_OS_SERVvirmrivers/acpi/oslvirm="sr &&class="line" name="L77">  77 *  This 3rrogr322a href="+code=u32" class"i_os_dpc {virmrivers/acpi/oslvirm="sr +leep_state, s <=ef">ACPI_OS_SERV.c#f="drivers/acpi.c#"L60- id="i_os_dpc {virmrivers/acpi/oslvirm="sr +leep_state, .c#f="drivers/acpi.c#"L60- id="i_os_dpc {s"class="line" name="L77">  77 *  along3 with323a href="+code=u32" cck" clasrejax_l_ctrl,
  58 *  Found3ation32452" class="line" name="L52">  52 *3
  58 * ~~~~~~3~~~~~32L77" }class="line" name="L58">  58 *3
  58 */
CONFIG_ACPI_IAref="driverss="srG_ACPI_IAre claclass="line" name="L58">  58, acpi_in_debuhfers/acpi/osl.c#Lhfe"L60"sccf">ACPI_OS_SERVhage_is_rae(acpi_in_debuhfers/acpi/osl.c#Lhfe"L60"class="line" name="L58">  58#includ3e <  58#includ3e <  29acpi_in_debuhfers/acpi/osl.c#Lhfe"L60"scc0class="line" name="L29">  29 *  it un3ewith33his p"L69" class="line" name="L69">  69#includ3e <  58__acpi_iohre(acpi_irq_handler<.c#f="drivers/acpi/osl..c#="sref">acpi_in_debugd_exphysical_addr.c#f="drivers/acpi/osl.physical_addr.c#>pm1b_ctrl);
, hg_szrivers/acpi/oslhg_sz"L60"class="line" name="L58">  58  60, hfers/acpi/osl.c#Lhfe"L60 class="line" name="L58">  58  49#includ3e <acpi_irq_hanhfers/acpi/osl.c#Lhfe"L60 =ef">ACPI_OS_SERVhg_ofdrivers/acpi/oslhg_ofdL88"  id= id=ef">acpi_irq_hanpAGE_SHIF   58#includ3e < {acpi_in_debuhfers/acpi/osl.c#Lhfe"L60""s class="line" name="L60">  60#includ3e < {hg_szrivers/acpi/oslhg_sz"L60  id=ef">acpi_irq_hanpAGE_SIZE  58#includ3e <  58__acpi_iohre(__acpi_forccode=u32" class=i_forccs="sre)ss="sref">__acpk.c#f="drivers/acpik.c#="sref">acpi_in_debuhfe_to_hagers/acpi/osl.c#Lhfe_to_hage="sref">acpi_in_debuhfers/acpi/osl.c#Lhfe"L60"" class="line" name="L58">  58#includ3aass="comment"> *  the F3enux/344llback" clas}  58,
acpi_in_debuhg_ofdrivers/acpi/oslhg_ofdL88", hg_szrivers/acpi/oslhg_sz"L60" class="line" name="L58">  58  58#includ3e <  58__acpq_hanun.c#f="drivers/acpi/osl.un.c#="sref">acpi_in_debugd_exphysical_addr.c#f="drivers/acpi/osl.physical_addr.c#>pm1b_ctrl);
__acpi_iohre(acpi_irq_hanvgddrf="drivers/acpiv/ddr"L89)class="line" name="L58">  58#includ3e <  60#includ3e <, hfers/acpi/osl.c#Lhfe"L60 class="line" name="L58">  58#includ3f="drivers/acpi/osl.c#L532" id35L52" class="line" name="L52">  52#includ3e <acpi_irq_hanLfers/acpi/osl.c#Lhfe"L60 =ef">ACPI_OS_SERVhg_ofdrivers/acpi/oslhg_ofdL88"  id= id=ef">acpi_irq_hanpAGE_SHIF   58acpi_in_debuhfers/acpi/osl.c#Lhfe"L60""class="line" name="L58">  58#includ3e <__acpkun.c#f="drivers/acpikun.c#="sref">acpi_in_debuhfe_to_hagers/acpi/osl.c#Lhfe_to_hage="sref">acpi_in_debuhfers/acpi/osl.c#Lhfe"L60"" class="line" name="L58">  58#includ3f="drivers/acpi/osl.c#L536" id355ct" class="selseclass="line" name="L58">  58#includ3 acpi_in_debuioun.c#f="drivers/acpiioun.c#="sref">acpi_in_debuvgddrf="drivers/acpiv/ddr"L89) class="line" name="L58">  58#includ3="+code=ACPI_MODULE_NAME3" cla35 is d}class="line" name="L58">  58  49#includ3__acpi_iohre(acpi_irq_hani_in/a_cpio  49       3 acpi_in_debugd_exphysical_addr.c#f="drivers/acpi/osl.physical_addr.c#>pm1b_ctrl);
kacpi_hotplu
osl.sizcode=u32" class=sd_exsizcf">sleep_state, s"class="line" name="L77">  77#includ3 void *  60       3 struct work_struct <
 <.c#f="drivers/acpi.c#"L60 class="line" name="L58">  58       3 int wait__acpi_iohre(acpi_irq_hanvirmrivers/acpi/oslvirm="sr class="line" name="L58">  58#includ3ref="drivers/acpi/osl.c#3L65" 364llback" class="sref">acpi_ogd_exphysical_addr.c#f="drivers/acpi/osl.physical_addr.c#>pm1b_ctrl);
  58#includ3f="drivers/acpi/osl.c#L636" id365llback" clasf">acpi_irq_handlersleep_state, hg_szrivers/acpi/oslhg_sz"L60 class="line" name="L58">  58#includ3aass="comment"> *3  77#includ3e  {hhysvers/acpi/osl.c#hysL88" &id=ef">acpi_irq_hanULONG_MAlass="string">&qULONG_MAl"L60"s class="line" name="L60">  60 {hivetkf="drivers/acpiLivetk="sref">acpi_in_debuKERN_ER="drivers/acpi/oKERN_ER=="sref">acpi_irq_hanpan class="string">"ACPI: cfn>
  58#includ3f="drivers/acpi/osl.c#L730" id369a href="+code=u32" crejax_l_ctrl,
  58#ifdef 3  58#includ3e <  52
acpi_irq_handler<.bl_permandrt_m.c#f="drivers/acpi/osl..bl_permandrt_m.c#f">s"class="line" name="L77">  77       3lass="comment">/* stuff 3for d373a href="+code=u32" crejax_l_ctrl,
__acphhysvers/acpi/osl.c#hysL88"kacpi_hotplus" class="line" name="L58">  58};
  58
acpi_irq_hanmutex_lo  {i/osl.orl.c#_lo   58
wait< vers/acpi/osl.c#L22" /* Checkdif there5#39;s a suitab   .c#pver alf=a9y.eid="L29" class="line" name="L29">  29extern 3char acpi_o.c#f="drivers/acpi.c#"L60 =ef">ACPI_OS_SERV/osl..c#_looku#f="drivers/acpi/osl..c#_looku#="sref">acpi_in_debuhhysvers/acpi/osl.c#hysL88"kacpi_hotplus" class="line" name="L58">  58  60#includ3f="drivers/acpi/osl.c#L830" id379a href="+code=u32" cpi_os_dpc {.c#f="drivers/acpi.c#"L60- id="i_os_dpc {s_dcounmrivers/acpi/osls_dcounm"L60++ class="line" name="L58">  58static 3int (* {oumrivers/acpi/osloum"L89 class="line" name="L58">  58       3                        3     381llback" clas}class="line" name="L58">  58
  83       3wait< href="+code=pmmc#f="drivers/acpi.c#"L60 =ef">ACPI_OS_SERVkzallo f="drivers/acpikzallo ="sresizcof(*rk_struct <.c#f="drivers/acpi.c#"L60)kacpi_hotpluGFP_KERNE+code=kacpi_hotpGFP_KERNE+f">s" class="line" name="L58">  58};
acpi_irq_han.c#f="drivers/acpi.c#"L60"s class="line" name="L60">  60static 3struct acpi_irq_hanmutex_unlo  {i/osl.orl.c#_lo   58
,
  58extern 3  58 *  but W3T  49
acpi_irq_hanhg_ofdrivers/acpi/oslhg_ofdL88" =ef">ACPI_OS_SERVr, Bo_dowers/acpi/osl.c#Lr, Bo_dowe="sref">acpi_in_debuhhysvers/acpi/osl.c#hysL88"kacpi_hotplupAGE_SIZE  58/*3
acpi_ohg_szrivers/acpi/oslhg_sz"L60 =ef">ACPI_OS_SERVr, Bo_u#f="drivers/acpir, Bo_u#="sref">acpi_in_debuhhysvers/acpi/osl.c#hysL88" +leep_state, skacpi_hotplupAGE_SIZEACPI_OS_SERVhg_ofdrivers/acpi/oslhg_ofdL88" class="line" name="L58">  58       3lass="comment"> * This l3ist o391llback" clasrk_struct ACPI_OS_SERVdler<.c#f="drivers/acpi/osl..c#="sref">acpi_in_debuhg_ofdrivers/acpi/oslhg_ofdL88", hg_szrivers/acpi/oslhg_sz"L60" class="line" name="L58">  58
 * interr3upt c392a href="+codif (!f">acpi_irq_hanvirmrivers/acpi/oslvirm="sr"s class="line" name="L60">  60acpi_irq_hanmutex_unlo  {i/osl.orl.c#_lo   58};
__acpkfrecode=u32" class=kfrec="sref">acpi_in_debu.c#f="drivers/acpi.c#"L60" class="line" name="L58">  58static 39truct ,
  58
  58struct 39a href="+code=workqueue39stru39" claclass="line" name="L58">  58  {.c#f="drivers/acpi.c#"L60- id="i_os_dpc {.c mrivers/acpi/osl.c mL88"" class="line" name="L58">  58
 *
3<" id399llback" clasf">acpi_irq_hanmc#f="drivers/acpi.c#"L60- id="i_os_dpc {virmrivers/acpi/oslvirm="sr =ef">ACPI_OS_SERVvirmrivers/acpi/oslvirm="sr class="line" name="L58">  58 * ~~~~~~4~acpi_o.c#f="drivers/acpi.c#"L60- id="i_os_dpc {hhysvers/acpi/osl.c#hysL88" =ef">ACPI_OS_SERVhg_ofdrivers/acpi/oslhg_ofdL88" class="line" name="L58">  58 * This l401a h401llback" clasrk_struct <.c#f="drivers/acpi.c#"L60- id="i_os_dpc {s =ef">ACPI_OS_SERVhg_szrivers/acpi/oslhg_sz"L60 class="line" name="L58">  58 *  This 402a h402llback" clasf">acpi_irq_han.c#f="drivers/acpi.c#"L60- id="i_os_dpc {s_dcounmrivers/acpi/osls_dcounm"L60 =e1 class="line" name="L58">  58  58 *  the F404a h404llback" class="sref">acpi_o.c m_add_tail_rcuf="drivers/acpi.c m_add_tail_rcu="sre&pi_os_dpc {.c#f="drivers/acpi.c#"L60- id="i_os_dpc {.c mrivers/acpi/osl.c mL88", &pi_os_dpc {/osl.corl.c##f="drivers/acpi/osl./orl.c##"L89" class="line" name="L58">  58  66 *406a h406llbacpi_os_dpc {oumrivers/acpi/osloum"L89:class="line" name="L66">  66acpi_o.utex_unlo  {i/osl.orl.c#_lo   58,
acpi_in_debuhhysvers/acpi/osl.c#hysL88" -ef">ACPI_OS_SERV.c#f="drivers/acpi.c#"L60- id="i_os_dpc {hhysvers/acpi/osl.c#hysL88"" class="line" name="L58">  58 *
409a h40L70" }class="line" name="L58">  58 * ~~~~~~4~~~~~41allba_ctrl,
acpi_in_debugd_exos_.c#_hreoryf="drivers/acpi/osl.osh.c#_hreory="sr" class="line" name="L58">  58 *4<1a h41L52" class="line" name="L52">  52 *  This 4progr412 class="srecontess="sref">__acpq_hanoshdroph.c#_/acp="drivers/acpi/osl.oshdroph.c#_/ac="sresef">work_struct <
 <.c#f="drivers/acpi.c#"L60"class="line" name="L77">  77 *  it un4der t41his p class="line" name="L60">  60 *  the F4ree S414a href="+codif (!--f">acpi_irq_han.c#f="drivers/acpi.c#"L60- id="i_os_dpc {s_dcounmrivers/acpi/osls_dcounm"L60"class="line" name="L77">  77 *  (at y4our o415ct" class="se=u32" cs">acpi_irq_han.c m_del_rcuf="drivers/acpi.c m_del_rcu="sre&pi_os_dpc {.c#f="drivers/acpi.c#"L60- id="i_os_dpc {.c mrivers/acpi/osl.c mL88"" class="line" name="L58">  58 *4
  58 *  This 4progr41" claclass="line" name="L58">  58 *  but W4ITHOU41ef="dre_sleecontess="sref">__acpq_hanosh.c#_cleanu#f="drivers/acpi/osl.osh.c#_cleanu#="sresef">work_struct <
 <.c#f="drivers/acpi.c#"L60"class="line" name="L77">  77 *  MERCH4ANTAB41L90"  class="line" name="L60">  60 *  GNU G4enera42allback" clasif (!f">acpi_irq_han.c#f="drivers/acpi.c#"L60- id="i_os_dpc {s_dcounmrivers/acpi/osls_dcounm"L60"s class="line" name="L60">  60 *4
 {  58 *  This 4rrogr422a href="+code=u32" crk_struct <
acpi_in_debu.c#f="drivers/acpi.c#"L60- id="i_os_dpc {hhysvers/acpi/osl.c#hysL88", .c#f="drivers/acpi.c#"L60- id="i_os_dpc {virmrivers/acpi/oslvirm="sr" class="line" name="L58">  58 *  along4 with423a href="+code=u32" css="sref">__acpkfrecode=u32" class=kfrec="sref">acpi_in_debu.c#f="drivers/acpi.c#"L60" class="line" name="L58">  58 *  Found4ation424llback" clas}class="line" name="L58">  58 *4
  58 * ~~~~~~4~~~~~42L77" class="line" name="L77">  77 *4
__acpi_/acp="drivers/acpi__/ac="sress="sref">__acpq_hanoshun.c#_hreoryf="drivers/acpi/osl.oshun.c#_hreory="srecontess="sref">__acpi_iohre(acpi_irq_hanvirmrivers/acpi/oslvirm="srkacpi_hotplu
osl.sizcode=u32" class=sd_exsizcf">sleep_state, s"class="line" name="L77">  77 */
  60work_struct <
 <.c#f="drivers/acpi.c#"L60 class="line" name="L58">  58#includ4e <  58#includ4e <acpi_irq_handler<.bl_permandrt_m.c#f="drivers/acpi/osl..bl_permandrt_m.c#f">s"s class="line" name="L60">  60 <=usd_exun.c#_tab  (acpi_in_debuvirmrivers/acpi/oslvirm="srkacpi_hotplus" class="line" name="L58">  58 *  it un4ewith433a href="+code=u32" crejax_ class="line" name="L58">  58  58  66wait< ="sref">acpi_o.utex_lo  {i/osl.orl.c#_lo   58acpi_o.c#f="drivers/acpi.c#"L60 =ef">ACPI_OS_SERV/osl..c#_looku#_virmrivers/acpi/oslsd_ex.c#_looku#_virm="sref">acpi_in_debuvirmrivers/acpi/oslvirm="srkacpi_hotplus" class="line" name="L58">  58acpi_irq_han.c#f="drivers/acpi.c#"L60"s class="line" name="L60">  60#includ4e < {.utex_unlo  {i/osl.orl.c#_lo   58#includ4e < {WARNf="drivers/acpiWARN="sref">acpi_in_debuef"code=u32" class=ef"c="srkacpi_hotplupan class="string">"ACPI: cfn>
kacpi_hotplu__func__(kacpi_hotpluvirmrivers/acpi/oslvirm="sr" class="line" name="L58">  58#includ4e <  58#includ4e <  58wait< href="+code=pmq_hanoshdroph.c#_/acp="drivers/acpi/osl.oshdroph.c#_/ac="sref">acpi_in_debu.c#f="drivers/acpi.c#"L60" class="line" name="L58">  58#includ4aass="comment"> *  the F4enux/444llback" class="sref">acpi_o.utex_unlo  {i/osl.orl.c#_lo   58  66wait< ="sref">acpi_oq_hanosh.c#_cleanu#f="drivers/acpi/osl.osh.c#_cleanu#="sref">acpi_in_debu.c#f="drivers/acpi.c#"L60" class="line" name="L58">  58  58acpi_in_debugd_exos_un.c#_hreoryf="drivers/acpi/osl.oshun.c#_hreory="sr" class="line" name="L58">  58#includ4e <  70#includ4e <__acpi_inimrivers/acpi/osli_inimf">sleep_state, early_gd_exos_un.c#_hreoryf="drivers/acpiearly_gd_exos_un.c#_hreory="srecontess="sref">__acpi_iohre(acpi_irq_hanvirmrivers/acpi/oslvirm="srkacpi_hotplu
osl.sizcode=u32" class=sd_exsizcf">sleep_state, s"class="line" name="L77">  77#includ4f="drivers/acpi/osl.c#L542" id45  60#includ4e <acpi_irq_handler<.bl_permandrt_m.c#f="drivers/acpi/osl..bl_permandrt_m.c#f">s"class="line" name="L77">  77__acp=usd_exun.c#_tab  (acpi_in_debuvirmrivers/acpi/oslvirm="srkacpi_hotplus" class="line" name="L58">  58#includ4e <  58#includ4f="drivers/acpi/osl.c#L546" id45L66" class="line" name="L66">  66#includ4 acpi_irq_han/osl.osh.c#_generic_addr.c#f="drivers/acpi/osl.osh.c#_generic_addr.c#="sresef">work_struct <
acpi_irq_hanga#f="drivers/acpiga#f">s"class="line" name="L77">  77  60  <
ddrf="drivers/acpi/ddr"L89 class="line" name="L58">  58#includ4__acpi_iohre(acpi_irq_hanvirmrivers/acpi/oslvirm="sr class="line" name="L58">  58       4   58#includ4 void *acpi_irq_hanga#f="drivers/acpiga#f">s- id="i_os_dpc {ACPI_OS_SERVACPI_ADR_SPACE_SYSTEM_MEMORYode=u32" class=ACPI_ADR_SPACE_SYSTEM_MEMORYf">s"class="line" name="L77">  77       4 struct   58  58#includ4ref="drivers/acpi/osl.c#4L65" 464llback" classvers/acpi/osl.c#L22" /* Handle possib   align#L22 issuereid="L29" class="line" name="L29">  29#includ4f="drivers/acpi/osl.c#L646" id465llback" clasf">acpi_irq_hanhrecpyf="drivers/acpihrecpy="sre&pi_os_dpc {iddrf="drivers/acpi/ddr"L89, &pi_os_dpc {ga#f="drivers/acpiga#f">s- id="i_os_dpc {addr.c#f="drivers/acpi/ddr.c#="sr, sizcof(pi_os_dpc {iddrf="drivers/acpi/ddr"L89"" class="line" name="L58">  58#includ4aass="comment"> *4acpi_irq_handddrf="drivers/acpi/ddr"L89 || !f">acpi_irq_hanga#f="drivers/acpiga#f">s- id="i_os_dpc {bit_widthf="drivers/acpibit_widthf">s"class="line" name="L77">  77waitacpi_irq_hanEINVA+code=kacpi_hotpEINVA+="sr class="line" name="L58">  58  49#includ4f="drivers/acpi/osl.c#L740" id469llback" clasf">acpi_irq_hanvirmrivers/acpi/oslvirm="sr =ef">ACPI_OS_SERVdleracpi_in_debugddrf="drivers/acpi/ddr"L89, f">acpi_irq_hanga#f="drivers/acpiga#f">s- id="i_os_dpc {bit_widthf="drivers/acpibit_widthf">s / 8" class="line" name="L58">  58#ifdef 4acpi_irq_hanvirmrivers/acpi/oslvirm="sr"class="line" name="L58">  58#includ4e <acpi_irq_hanEIOcode=kacpi_hotpEIO="sr class="line" name="L58">  58
  83       4lass="comment">/* stuff 4for d473a href="+codrejax_l0 class="line" name="L58">  58};
  58
,
acpi_in_debugd_exos_.c#_generic_addr.c#f="drivers/acpi/osl.osh.c#_generic_addr.c#="sr" class="line" name="L58">  58#includ4f="drivers/acpi/osl.c#L747" id47L77" class="line" name="L77">  77extern 4char __acpgd_exos_un.c#_generic_addr.c#f="drivers/acpi/osl.oshun.c#_generic_addr.c#="sresef">work_struct <
acpi_irq_hanga#f="drivers/acpiga#f">s"class="line" name="L77">  77  60#includ4f="drivers/acpi/osl.c#L840" id479llback" clasf">acpi_irq_hanuref="driverss="sru64llbacrk_struct <
ddrf="drivers/acpi/ddr"L89 class="line" name="L58">  58static 4int (*work_struct <
 <.c#f="drivers/acpi.c#"L60 class="line" name="L58">  58       4                        4     48L52" class="line" name="L52">  52
acpi_irq_hanga#f="drivers/acpiga#f">s- id="i_os_dpc {ACPI_OS_SERVACPI_ADR_SPACE_SYSTEM_MEMORYode=u32" class=ACPI_ADR_SPACE_SYSTEM_MEMORYf">s"class="line" name="L77">  77       4  58};
  58static 4struct   29
wait< ="sref">acpi_o.recpyf="drivers/acpihrecpy="sre&pi_os_dpc {iddrf="drivers/acpi/ddr"L89, &pi_os_dpc {ga#f="drivers/acpiga#f">s- id="i_os_dpc {addr.c#f="drivers/acpi/ddr.c#="sr, sizcof(pi_os_dpc {iddrf="drivers/acpi/ddr"L89"" class="line" name="L58">  29extern 4acpi_irq_handddrf="drivers/acpi/ddr"L89 || !f">acpi_irq_hanga#f="drivers/acpiga#f">s- id="i_os_dpc {bit_widthf="drivers/acpibit_widthf">s"class="line" name="L77">  77 *  but W4T  58#includ4f="drivers/acpi/osl.c#L940" id48L70" class="line" name="L70">  70/*4
acpi_o.utex_lo  {i/osl.orl.c#_lo   58       4lass="comment"> * This l4ist o491llback" clasrk_struct <.c#f="drivers/acpi.c#"L60 =ef">ACPI_OS_SERV/osl..c#_looku#f="drivers/acpi/osl..c#_looku#="sref">acpi_in_debugddrf="drivers/acpi/ddr"L89, f">acpi_irq_hanga#f="drivers/acpiga#f">s- id="i_os_dpc {bit_widthf="drivers/acpibit_widthf">s / 8" class="line" name="L58">  58
 * interr4upt c492a href="+codif (!f">acpi_irq_han.c#f="drivers/acpi.c#"L60"s class="line" name="L60">  60acpi_irq_hanmutex_unlo  {i/osl.orl.c#_lo   58};
  58static 49truct   58
wait< ="sref">acpi_oq_hanoshdroph.c#_/acp="drivers/acpi/osl.oshdroph.c#_/ac="sref">acpi_in_debu.c#f="drivers/acpi.c#"L60" class="line" name="L58">  58struct 49a href="+code=workqueue49stru497llback" class="sref">acpi_o.utex_unlo  {i/osl.orl.c#_lo   58  49
 *
4<" id499llback" clasf">acpi_irq_hanq_hanosh.c#_cleanu#f="drivers/acpi/osl.osh.c#_cleanu#="sref">acpi_in_debu.c#f="drivers/acpi.c#"L60" class="line" name="L58">  58 * ~~~~~~5~  58 * This l501a h501llba_ctrl,
acpi_in_debugd_exos_un.c#_generic_addr.c#f="drivers/acpi/osl.oshun.c#_generic_addr.c#="sr" class="line" name="L58">  58 * interr502a h50L83" class="line" name="L83">  83CONFIACPI_FUTURE_USAGEode=u32" class=ACPI_FUTURE_USAGE83" class="line" name="L83">  83kacpi_hotplu
osl.statu#f="drivers/acpi/osl.statu#83" class="line" name="L83">  83,
acpi_irq_hanvirmrivers/acpi/oslvirm="srkacpi_hotplu
osl.physical_addr.c#f="drivers/acpi/osl.physical_addr.c#>pm1b*b_ctrl);
  77 *506a h50OM_DS class="line" name="L60">  60acpi_irq_hanhhysvers/acpi/osl.c#hysL88" || !f">acpi_irq_hanvirmrivers/acpi/oslvirm="sr"class="line" name="L58">  58CONFIAE_BAD_PARAMETE="drivers/acpi/oAE_BAD_PARAMETE="L60 class="line" name="L58">  58 *
509a h50L70" class="line" name="L70">  70 * ~~~~~~5~~~~~51allback" clasef">acpi_irq_hanhhysvers/acpi/osl.c#hysL88" =ef">ACPI_OS_SERVvirm_to_hhysvers/acpi/osl.cvirm_to_hhys="sref">acpi_in_debuvirmrivers/acpi/oslvirm="sr" class="line" name="L58">  58 *5<1a h51L52" class="line" name="L52">  52 *  This 5progr512a href="+codrejax_ass="sref">CONFIAE_OK"drivers/acpi/oAE_OK"L60 class="line" name="L58">  58 *  it un5der t51his p}class="line" name="L58">  58 *  the F5ree S514a hr"L69" class="line" name="L69">  69 *  (at y5our o51L66" class="line" name="L66">  66 *5
, ACPI_MAX_OVERRIDE_LENf="drivers/acpiACPI_MAX_OVERRIDE_LENa hre100class="line" name="L29">  29 *  This 5progr51" claclass="line" name="L58">  58 *  but W5ITHOU51ef="dre_sleecharsf">acpi_irq_hanq_hanosh  buf="drivers/acpi/osl.osh  buf="d[eep_state, ACPI_MAX_OVERRIDE_LENf="drivers/acpiACPI_MAX_OVERRIDE_LENa hr] class="line" name="L58">  58 *  MERCH5ANTAB51L70" class="line" name="L70">  70 *  GNU G5enera52allba_ctrl,
  83 *5
,
work_struct <
   83 *  This 5rrogr522a href="+code=u32" c+code=u32" cs">acpi_irq_han/osl.stivers="drivers/acpi/osl.stiver>pm1b*b_ctrl);
  58 *  along5 with52his p class="line" name="L60">  60 *  Found5ation524llback" clasif (!f">acpi_irq_hanin/a_valf="drivers/acpiin/a_val="sr || !f">acpi_irq_hannew_valf="drivers/acpinew_val="sr"class="line" name="L58">  58 *5
,
  58 * ~~~~~~5~~~~~52L77" class="line" name="L77">  77 *5
 ACPI_OS_SERVNUL+code=kacpi_hotpNUL+"L89 class="line" name="L58">  58 */
acpi_irq_han.emcm#f="drivers/acpi.emcm#="sref">acpi_in_debuin/a_valf="drivers/acpiin/a_val="sr- id="i_os_dpc {  buf="drivers/acpi  buf="d,cfn>
kacpi_hotpluacpi_in_debugd_exos_  buf="drivers/acpi/osl.osh  buf="d""s class="line" name="L60">  60 {hivetkf="drivers/acpiLivetk="sref">acpi_in_debuKERN_INFOcode=kacpi_hotpKERN_INFOllbacrk_struct "ACPI: cfn>
  60#includ5e <acpi_irq_hanq_hanosh  buf="drivers/acpi/osl.osh  buf="d" class="line" name="L58">  58#includ5e < ACPI_OS_SERVq_hanosh  buf="drivers/acpi/osl.osh  buf="d class="line" name="L58">  58  58 *  it un5ewith53his pclass="line" name="L58">  58CONFIAE_OK"drivers/acpi/oAE_OK"L60 class="line" name="L58">  58  58  77  83,
work_struct <
  83#includ5e <work_struct <
  58#includ5e <  60#includ5e <acpi_irq_hanexistver_tab  (acpi_irq_hannew_tab  (  58,
  58  58#includ5aass="comment"> *  the F5enux/544llback" clas*rk_struct ACPI_OS_SERVNUL+code=kacpi_hotpNUL+"L89 class="line" name="L58">  58  66CONFICONFIG_ACPI_CUSTOM_DSD   66 {refncm#f="drivers/acpirefncm#="sref">acpi_in_debuexistver_tab  (  58 work_struct <
__acpAmlCoduf="drivers/acpiAmlCodu"L89 class="line" name="L58">  58#includ5e <  69#includ5e < ACPI_OS_SERVNUL+code=kacpi_hotpNUL+"L89"s class="line" name="L60">  60#includ5f="drivers/acpi/osl.c#L552" id55 {hivetkf="drivers/acpiLivetk="sref">acpi_in_debuKERN_WARNINGcode=kacpi_hotpKERN_WARNINGllbacrk_struct "ACPI: cfn>
  60
  60 {existver_tab  (  60#includ5e < {existver_tab  (  58#includ5f="drivers/acpi/osl.c#L556" id555ct" class="se=u32" cs">acpi_irq_hanadd_tainmrivers/acpi/osladd_tainm="sref">acpi_in_debuTAINT_OVERRIDDEN_ACPI_TABLEode=u32" class=TAINT_OVERRIDDEN_ACPI_TABLEf="d" class="line" name="L58">  58  58CONFIAE_OK"drivers/acpi/oAE_OK"L60 class="line" name="L58">  58  58#includ5  70       5   83#includ5 void *work_struct <
  83       5 struct acpi_irq_hanaosl.physical_addr.c#f="drivers/acpi/osl.physical_addr.c#>pm1b*b_ctrl);
  83acpi_irq_hanue <  58#includ5ref="drivers/acpi/osl.c#5L65" 564llba class="line" name="L60">  60#includ5f="drivers/acpi/osl.c#L656" id565llback" clasrejax_ass="sref">CONFIAE_SUPPORT"drivers/acpi/oAE_SUPPORT"L60 class="line" name="L58">  58#includ5aass="comment"> *5  58  58  49#includ5f="drivers/acpi/osl.c#L750" id569llbare_sleef">acpi_in_debuirqrejax__mrivers/acpi/oslirqrejax__mllbacrk_struct acpi_irq_hancrqf="drivers/acpicrq="sr, conteef">acpi_irq_handev_idode=u32" class=dev_id="sr"class="line" name="L58">  58#ifdef 5  60#includ5e <   58
  83       5lass="comment">/* stuff 5for d573a href="+codrk_struct acpi_irq_han/osl.crq_handlerf="drivers/acpi/acpi_in_debugd_excrq_contexmrivers/acpi/oslsd_excrq_contexmf="d" class="line" name="L58">  58};
  58
 {handledode=u32" class=handled"L60"s class="line" name="L60">  60#includ5f="drivers/acpi/osl.c#L757" id576llback" clasck" clasf">acpi_irq_han/osl.crq_handledode=u32" class=/osl.crq_handledllba++ class="line" name="L58">  58waitacpi_irq_hanIRQ_HANDLEDcode=kacpi_hotpIRQ_HANDLED"L60 class="line" name="L58">  58  60#includ5f="drivers/acpi/osl.c#L850" id579a href="+code=u32" cpi_os_dpc {/osl.crq_not_handledode=u32" class=/osl.crq_not_handledllba++ class="line" name="L58">  58static 5int (*acpi_irq_hanIRQ_NONEode=u32" class=IRQ_NONE"L60 class="line" name="L58">  58       5                        5     581llback" clas}class="line" name="L58">  58
  58       5  58};
kacpi_hotplu
osl.statu#f="drivers/acpi/osl.statu#83" class="line" name="L83">  83static 5struct acpi_in_debuue <  83
acpi_irq_hancontexmrivers/acpi/oslcontexmf="d"class="line" name="L83">  83  60 *  but W5Tacpi_irq_hancrqf="drivers/acpicrq="sr class="line" name="L58">  58#includ5f="drivers/acpi/osl.c#L950" id58L70" class="line" name="L70">  70/*5
acpi_o/osl.crq_stats_inimrivers/acpi/osl/osl.crq_stats_inim="sre" class="line" name="L58">  58       5lass="comment"> * This l5ist o59L52" class="line" name="L52">  52
 * interr5upt c592a href="+codsvers/acpi/osl.c#L22" /*="L18" class="line" name="L60">  60  60};
  60static 59truct   29
 ACPI_OS_SERV/osl..bl_FADTrivers/acpi/osl/osl..bl_FADTf="d."i_os_dpc {  83struct 59a href="+code=workqueue59stru597llback" clasf">waitacpi_irq_hanAE_BAD_PARAMETE="drivers/acpi/oAE_BAD_PARAMETE="L60 class="line" name="L58">  58  49
 *
5<" id599llback" clasif (rk_struct   49 * ~~~~~~6~acpi_irq_hanAE_ALREADY_ACQUIREDcode=kacpi_hotpAE_ALREADY_ACQUIRED"L60 class="line" name="L58">  58 * This l601a h60L52" class="line" name="L52">  52 * interr602a h602a href="+codif (f">acpi_irq_han/osl..si_to_crqf="drivers/acpi/osl..si_to_crq="sref">acpi_in_debugsi< {crqf="drivers/acpicrq="sr) < 0"s class="line" name="L60">  60acpi_irq_hanhivetkf="drivers/acpiLivetk="sref">acpi_in_debuKERN_ER="drivers/acpi/oKERN_ER=llbacrk_struct "ACPI: cfn>
  60 {gsi<  58,
  58 *606a h606llback" clas}class="line" name="L58">  58  58 ACPI_OS_SERVhandlerf="drivers/acpihandler="sr class="line" name="L58">  58 *
609a h609llback" clasf">acpi_irq_hanq_hancrq_contexmrivers/acpi/oslsd_excrq_contexmf="d =ef">ACPI_OS_SERVcontexmrivers/acpi/oslcontexmf="d class="line" name="L58">  58 * ~~~~~~6~~~~~61allback" clasif (f">ACPI_OS_SERVrequest_crqf="drivers/acpirequest_crq="sref">acpi_in_debucrqf="drivers/acpicrq="sr, rk_struct 
kacpi_hotplu/osl.crqf="drivers/acpi/osl.crq="sr""s class="line" name="L60">  60 *6<1a h61 {hivetkf="drivers/acpiLivetk="sref">acpi_in_debuKERN_ER="drivers/acpi/oKERN_ER=llbacrk_struct "ACPI: cfn>
acpi_irq_hancrqf="drivers/acpicrq="sr" class="line" name="L58">  58 *  This 6progr612a href="+code=u32" crk_struct ACPI_OS_SERVNUL+code=kacpi_hotpNUL+"L89 class="line" name="L58">  58 *  it un6der t613a href="+code=u32" crejax_l_ctrl,
  58 *  the F6ree S614llback" clas}class="line" name="L58">  58 *  (at y6our o61L66" class="line" name="L66">  66 *6
,
  58 *  This 6progr61 is d}class="line" name="L58">  58 *  but W6ITHOU61L49" class="line" name="L49">  49 *  MERCH6ANTAB61L70" f">kacpi_hotplu
osl.statu#f="drivers/acpi/osl.statu#83" ef">ACPI_OS_SERVq_hanoshremovehintamrupt_handlerf="drivers/acpi/acpi_in_debuue <  49 *  GNU G6enera62allba class="line" name="L60">  60 *6
acpi_irq_hancrqf="drivers/acpicrq="sr !=ef">ACPI_OS_SERV/osl..bl_FADTrivers/acpi/osl/osl..bl_FADTf="d."i_os_dpc {  83 *  This 6rrogr622a href="+code=u32" crejax_lf">acpi_irq_hanAE_BAD_PARAMETE="drivers/acpi/oAE_BAD_PARAMETE="L60 class="line" name="L58">  58 *  along6 with62his pclass="line" name="L58">  58 *  Found6ation624llback" clasf">acpi_irq_hanfree.crqf="drivers/acpifree.crq="sref">acpi_in_debucrqf="drivers/acpicrq="sr, rk_struct   58 *6
ACPI_OS_SERVNUL+code=kacpi_hotpNUL+"L89 class="line" name="L58">  58 * ~~~~~~6~~~~~62L77" class="line" name="L77">  77 *6
CONFIAE_OK"drivers/acpi/oAE_OK"L60 class="line" name="L58">  58 */
  58  70#includ6e <  60#includ6e <  60  29 *  it un6ewith63his pclass="line" name="L58">  58__acpgd_exos_sleepf="drivers/acpi/acpi_in_debuuref="driverss="sru64llbacrk_struct   77  60wait< ="sref">acpi_oschedule_timeouthintamruptib  (acpi_in_debumsecs_to_jiffip#f="drivers/acpimsecs_to_jiffip#="sref">acpi_in_debumsf="drivers/acpimsL88""" class="line" name="L58">  58  58  49#includ6e <__acpgd_exos_stallf="drivers/acpi/acpi_in_debuue <  77#includ6e <  60#includ6e <acpi_irq_hanu#f="drivers/acpiusL88""s class="line" name="L60">  60acpi_in_debuue <  58  58#includ6aass="comment"> *  the F6enux/64cessoef="+code=u32" cif (f">acpi_irq_handelayf="drivers/acpidelay"L89  id=erk_struct   77acpi_in_debudelayf="drivers/acpidelay"L89 =erk_struct   58acpi_irq_hanudelayf="drivers/acpiudelay"L89(f">acpi_irq_handelayf="drivers/acpidelay"L89" class="line" name="L58">  58waitacpi_irq_hantouch_nmi_watchdors="drivers/acpitouch_nmi_watchdor="sre" class="line" name="L58">  58    58#includ6e <  58#includ6e <  58#includ6f="drivers/acpi/osl.c#L562" id65L52" class="line" name="L52">  52  60  60#includ6e <  60  60  29,
 <
csl.oshgetxtimerf="drivers/acpi/  77  60#includ6acpi_in_debuuref="driverss="sru64llbacrk_struct   58       6   58#includ6 void *CONFICONFIG_HPE   58  29  69#includ6ref="drivers/acpi/osl.c#6L65" 66e claclass="line" name="L58">  58#includ6f="drivers/acpi/osl.c#L666" id665llba#if claass="sref">CONFICONFIG_X86_PM_TIME="drivers/acpi/oCONFIG_X86_PM_TIME= claclass="line" name="L58">  58 *6  29  69acpi_irq_hant(  77#includ6f="drivers/acpi/osl.c#L760" id669a href="+code=u32" cpi_os_dpc {hivetkf="drivers/acpiLivetk="sref">acpi_in_debuKERN_ER="drivers/acpi/oKERN_ER=llbacrk_struct "ACPI: cfn>
  58#ifdef 6  58#includ6e <   58
  58       6lass="comment">/* stuff 6for d67his pclass="line" name="L58">  58};
kacpi_hotplu
osl.statu#f="drivers/acpi/osl.statu#83" ef">ACPI_OS_SERVq_hanoshread_portf="drivers/acpi/acpi_in_debu/ACPI_OS_SERVportf="drivers/acpiport="sr, rk_struct ACPI_OS_SERVvalu ( s"class="line" name="L77">  77
  60#includ6f="drivers/acpi/osl.c#L767" id676"sref">wait< ="sref">acpi_oue <  58  58acpi_irq_hanvalu (  77#includ6f="drivers/acpi/osl.c#L860" id679a href="+code=u32" cpi_os_dpc {valu ( {dummyf="drivers/acpidummyf="d class="line" name="L58">  58static 6int (*  58       6                        6     681llback" clasef">acpi_irq_hanvalu (  58
acpi_irq_hanwidthf="drivers/acpiwidthf">s <= 8"s class="line" name="L60">  60       6acpi_irq_hanu8<acpi_in_debucnbf="drivers/acpicnb="sref">acpi_in_debuportf="drivers/acpiport="sr" class="line" name="L58">  58};
acpi_irq_hanwidthf="drivers/acpiwidthf">s <= 16"s class="line" name="L60">  60
acpi_irq_hanulass="commess="sru16llbac*)cpi_os_dpc {valu (acpi_in_debucnwf="drivers/acpicnw="sref">acpi_in_debuportf="drivers/acpiport="sr" class="line" name="L58">  58#includ6struct acpi_irq_hanwidthf="drivers/acpiwidthf">s <= 32"s class="line" name="L60">  60wait<*(f">acpi_irq_hanue <acpi_in_debucnlf="drivers/acpiinl="sref">acpi_in_debuportf="drivers/acpiport="sr" class="line" name="L58">  58 *  but W6T  60#includ6f="drivers/acpi/osl.c#L960" id689a href="+code=u32" cpi_os_dpc {BUGcode=kacpi_hotpBUG="sre" class="line" name="L58">  58/*6
  58       6lass="comment"> * This l6ist o69L52" class="line" name="L52">  52
 * interr6upt c692a href="+codrejax_ass="sref">CONFIAE_OK"drivers/acpi/oAE_OK"L60 class="line" name="L58">  58  58};
  58static 69truct acpi_in_debugd_exos_read_portf="drivers/acpi/  58#includ69truct   77struct 69a href="+code=workqueue69stru697llba_ctrl,
ACPI_OS_SERVq_hanoshwrite_portf="drivers/acpi/acpi_in_debu/ACPI_OS_SERVportf="drivers/acpiport="sr, rk_struct ACPI_OS_SERVvalu ( s"class="line" name="L77">  77  60
 *
6<" id699llback" clasif (rk_struct s <= 8"s class="line" name="L60">  60 * ~~~~~~7~ acpi_in_debuvalu (   58 * This l701a h701essoef="+cod} elsesif (f">acpi_irq_hanwidthf="drivers/acpiwidthf">s <= 16"s class="line" name="L60">  60 * interr702a h702a href="+code=u32" cf">acpi_in_debuoutwf="drivers/acpioutw="sref">acpi_in_debuvalu (   58acpi_irq_hanwidthf="drivers/acpiwidthf">s <= 32"s class="line" name="L60">  60acpi_in_debuoutlf="drivers/acpioutl="sref">acpi_in_debuvalu (   58  60 *706a h706llback" clasck" clasf">acpi_irq_hanBUGcode=kacpi_hotpBUG="sre" class="line" name="L58">  58  58  49 *
709a h709llback" clasrejax_ass="sref">CONFIAE_OK"drivers/acpi/oAE_OK"L60 class="line" name="L58">  58 * ~~~~~~7~~~~~71allba}class="line" name="L58">  58 *7<1a h71L52" class="line" name="L52">  52 *  This 7progr712a hr_ctrl,
acpi_in_debugd_exos_write_portf="drivers/acpi/  58 *  it un7der t71his pclass="line" name="L58">  58 *  the F7ree S714a hr"if class="sref">CONFIreadqf="drivers/acpireadqis pclass="line" name="L58">  58 *  (at y7our o71L66" re_sleef">acpi_in_debuinnt"> *"drivers/acpiinlt">a hrerk_struct  __acp_.comemf="driverss="sr_.comema hre*f">acpi_in_debugddrf="drivers/acpi/ddrf">s"class="line" name="L77">  77 *7
  60 *  This 7progr717llback" clasrejax_ass="sref">CONFIreadqf="drivers/acpireadqis pef">acpi_in_debugddrf="drivers/acpi/ddrf">s" class="line" name="L58">  58 *  but W7ITHOU718llba}class="line" name="L58">  58 *  MERCH7ANTAB71L70" "Llseclass="line" name="L58">  58 *  GNU G7enera72allbare_sleef">acpi_in_debuinnt"> *"drivers/acpiinlt">a hrerk_struct  __acp_.comemf="driverss="sr_.comema hre*f">acpi_in_debugddrf="drivers/acpi/ddrf">s"class="line" name="L58">  58 *7
  60 *  This 7rrogr722a href="+codrk_struct    58 *  along7 with723a href="+codrk_struct acpi_in_debureadlf="drivers/acpireadlis pef">acpi_in_debugddrf="drivers/acpi/ddrf">s" class="line" name="L58">  58 *  Found7ation724llback" clasf">acpi_irq_hanhf="drivers/acpih"L60 =cf">acpi_in_debureadlf="drivers/acpireadlis pef">acpi_in_debugddrf="drivers/acpi/ddrf">s+4" class="line" name="L58">  58 *7
CONFIlf="drivers/acpil="sr | (pi_os_dpc {hf="drivers/acpih"L60 << 32" class="line" name="L58">  58 * ~~~~~~7~~~~~72L77" }class="line" name="L58">  58 *7
  69 */
  49kacpi_hotplu
osl.statu#f="drivers/acpi/osl.statu#83" class="line" name="L49">  49#includ7e <acpi_in_debugd_exphysical_addr.c#f="drivers/acpi/osl.physical_addr.c#>pm1brk_struct acpi_irq_hanvalu ( s"class="line" name="L77">  77#includ7e <  60__acp_.comemf="driverss="sr_.comema hre*f">acpi_in_debuvirt_gddrf="drivers/acpivirt_gddr"L60 class="line" name="L58">  58 *  it un7ewith733a href="+codunacpi_irq_hansiz (acpi_in_debuwidthf="drivers/acpiwidthf">s / 8 class="line" name="L58">  58acpi_irq_hanboolf="drivers/acpiboola hrerk_struct acpi_in_debufalsef="drivers/acpifalse"L60 class="line" name="L58">  58    58  77  58 ACPI_OS_SERVq_hanmap_vgddr_lookupf="drivers/acpi/acpi_in_debuphys_gddrf="drivers/acpiphys_gddr="sr, rk_struct   58acpi_irq_hanvirt_gddrf="drivers/acpivirt_gddr"L60"s class="line" name="L60">  60#includ7e <   58#includ7e < {virt_gddrf="drivers/acpivirt_gddr"L60 =ef">ACPI_OS_SERVq_hanoshioremapf="drivers/acpiq_hanoshioremap="sref">acpi_in_debuphys_gddrf="drivers/acpiphys_gddr="sr, rk_struct   58acpi_irq_hanvirt_gddrf="drivers/acpivirt_gddr"L60"class="line" name="L58">  58acpi_irq_hanAE_BAD_ADDRESS"drivers/acpi/oAE_BAD_ADDRESSf="d class="line" name="L58">  58#includ7aass="comment"> *  the F7enux/74cessoef="+code=u32" crk_struct acpi_in_debutru (  58  58  77acpi_irq_hanvalu (  77  {dummyf="drivers/acpidummyf="d class="line" name="L58">  58#includ7e <  70#includ7e <acpi_irq_hanwidthf="drivers/acpiwidthf">s"s class="line" name="L60">  60#includ7f="drivers/acpi/osl.c#L572" id75  60acpi_irq_hanu8<acpi_in_debureadbf="drivers/acpireadb="sref">acpi_in_debuvirt_gddrf="drivers/acpivirt_gddr"L60" class="line" name="L58">  58  58#includ7e <  60acpi_irq_hanulass="commess="sru16llbac*)cpi_os_dpc {valu (acpi_in_debureadwf="drivers/acpireadw="sref">acpi_in_debuvirt_gddrf="drivers/acpivirt_gddr"L60" class="line" name="L58">  58  58  60acpi_irq_hanue <acpi_in_debureadlf="drivers/acpireadlis pef">acpi_in_debuvirt_gddrf="drivers/acpivirt_gddr"L60" class="line" name="L58">  58#includ7  58       7   60#includ7 void *acpi_irq_hanuref="driverss="sru64llbace)cpi_os_dpc {valu (acpi_in_debureadref="driverss="srreadre="sref">acpi_in_debuvirt_gddrf="drivers/acpivirt_gddr"L60" class="line" name="L58">  58  58  60#includ7ref="drivers/acpi/osl.c#7L65" 76cessoef="+code=u32" crk_struct   58#includ7f="drivers/acpi/osl.c#L676" id765ct" class="s}class="line" name="L58">  58 *7  77   77 acpi_in_debuvirt_gddrf="drivers/acpivirt_gddr"L60" class="line" name="L58">  58#includ7f="drivers/acpi/osl.c#L770" id769a href="+codLlseclass="line" name="L58">  58#ifdef 7   58#includ7e <  52
CONFIAE_OK"drivers/acpi/oAE_OK"L60 class="line" name="L58">  58       7lass="comment">/* stuff 7for d77his p}class="line" name="L58">  58};
  58
acpi_irq_hanwriteqf="drivers/acpiwriteq claclass="line" name="L58">  58acpi_in_debuinnt"> *"drivers/acpiinlt">a hrecontess="sref">__acpwriteref="driverss="srwritere="sref">acpi_in_debuuref="driverss="sru64llbacrk_struct __acp_.comemf="driverss="sr_.comema hre*f">acpi_in_debugddrf="drivers/acpi/ddrf">s"class="line" name="L58">  58  60 acpi_in_debuval(acpi_in_debugddrf="drivers/acpi/ddrf">s" class="line" name="L58">  58#includ7f="drivers/acpi/osl.c#L870" id779a hr}class="line" name="L58">  58static 7int (*  58       7                        7     781llbare_sleef">acpi_in_debuinnt"> *"drivers/acpiinlt">a hrecontess="sref">__acpwriteref="driverss="srwritere="sref">acpi_in_debuuref="driverss="sru64llbacrk_struct __acp_.comemf="driverss="sr_.comema hre*f">acpi_in_debugddrf="drivers/acpi/ddrf">s"class="line" name="L58">  58
  60       7 acpi_in_debuval(acpi_in_debugddrf="drivers/acpi/ddrf">s" class="line" name="L58">  58};
acpi_irq_hanwritel(acpi_in_debuval(acpi_in_debugddrf="drivers/acpi/ddrf">s+4" class="line" name="L58">  58
  58  69  58 *  but W7TACPI_OS_SERVq_hanstatu#f="drivers/acpi/osl.statu#83" class="line" name="L49">  49#includ7f="drivers/acpi/osl.c#L970" id78L70" f">kacpi_hotplu
osl.oshwrite_memoryf="drivers/acpidleracpi_in_debugd_exphysical_addr.c#f="drivers/acpi/osl.physical_addr.c#>pm1brk_struct  s"class="line" name="L77">  77/*7
  60       7lass="comment"> * This l7ist o79__acp_.comemf="driverss="sr_.comema hre*f">acpi_in_debuvirt_gddrf="drivers/acpivirt_gddr"L60 class="line" name="L58">  58
 * interr7upt c792a href="+codunacpi_irq_hansiz (acpi_in_debuwidthf="drivers/acpiwidthf">s / 8 class="line" name="L58">  58  acpi_in_debufalsef="drivers/acpifalse"L60 class="line" name="L58">  58};
  58static 79truct   58#includ79truct wait< ="sref">acpi_ovirt_gddrf="drivers/acpivirt_gddr"L60 =ef">ACPI_OS_SERVq_hanmap_vgddr_lookupf="drivers/acpi/acpi_in_debuphys_gddrf="drivers/acpiphys_gddr="sr, rk_struct   58struct 79a href="+code=workqueue79stru797llback" clasif (!f">acpi_irq_hanvirt_gddrf="drivers/acpivirt_gddr"L60"s class="line" name="L60">  60   58
 *
7<" id799a href="+code=u32" cpi_os_dpc {virt_gddrf="drivers/acpivirt_gddr"L60 =ef">ACPI_OS_SERVq_hanoshioremapf="drivers/acpiq_hanoshioremap="sref">acpi_in_debuphys_gddrf="drivers/acpiphys_gddr="sr, rk_struct   58 * ~~~~~~8~acpi_irq_hanvirt_gddrf="drivers/acpivirt_gddr"L60"class="line" name="L58">  58 * This l801a h80CONFIAE_BAD_ADDRESS"drivers/acpi/oAE_BAD_ADDRESSf="d class="line" name="L58">  58 * interr802a h802a href="+code=u32" cf">acpi_in_debuunmapf="drivers/acpiunmap"L60 =cf">acpi_in_debutru (  58  58  58acpi_irq_hanwidthf="drivers/acpiwidthf">s"s class="line" name="L60">  60 *806a h806llback" clascase 8:class="line" name="L60">  60waitacpi_irq_hanwritebf="drivers/acpiwriteb claef">acpi_in_debuvalu (   58  58 *
809a h809llback" clascase 16:class="line" name="L60">  60 * ~~~~~~8~~~~~81allback" clase=u32" crk_struct acpi_in_debuvalu (   58 *8<1a h81  58 *  This 8progr812a href="+codcase 32:class="line" name="L60">  60 *  it un8der t813a href="+code=u32" cf">acpi_irq_hanwritel(acpi_in_debuvalu (   58 *  the F8ree S81cessoef="+code=u32" cbreak class="line" name="L58">  58 *  (at y8our o815a href="+codcase 64:class="line" name="L60">  60 *8
acpi_irq_hanwriteref="driverss="srwritere="sref">acpi_in_debuvalu (   58 *  This 8progr817llback" clasf">wait  58 *  but W8ITHOU818essoef="+cod clault:class="line" name="L60">  60 *  MERCH8ANTAB819a href="+code=u32" cpi_os_dpc {BUGcode=kacpi_hotpBUG="sre" class="line" name="L58">  58 *  GNU G8enera82allback" clas}class="line" name="L58">  58 *8
  52 *  This 8rrogr822a href="+codif (rk_struct   77 *  along8 with823a href="+code=u32" cf">acpi_irq_haniounmapf="drivers/acpiiounmap="sref">acpi_in_debuvirt_gddrf="drivers/acpivirt_gddr"L60" class="line" name="L58">  58 *  Found8ation824llback" clasLlseclass="line" name="L58">  58 *8
   58 * ~~~~~~8~~~~~82L77" class="line" name="L77">  77 *8
CONFIAE_OK"drivers/acpi/oAE_OK"L60 class="line" name="L58">  58 */
  58  70#includ8e <  49#includ8e <ACPI_OS_SERVq_hanoshread_pci_configurationf="drivers/acpiq_hanoshread_pci_configuration="srestruc cf">acpi_irq_han/osl.pcihidf="drivers/acpi/osl.pcihida hre*brk_struct    49 acpi_irq_hanvalu ( s"class="line" name="L77">  77 *  it un8ewith833a hr class="line" name="L60">  60acpi_irq_hanresults="drivers/acpiresult="sr, rk_struct   58 ACPI_OS_SERVvalu e <  58  77acpi_irq_hanvalu (  77CONFIAE_BAD_PARAMETE="drivers/acpi/oAE_BAD_PARAMETE="L60 class="line" name="L58">  58  70#includ8e <acpi_irq_hanwidthf="drivers/acpiwidthf">s"s class="line" name="L60">  60#includ8e <  60acpi_in_debusiz (  58  58#includ8aass="comment"> *  the F8enux/84cessoef="+codcase 16:class="line" name="L60">  60acpi_in_debusiz (  58  58  60   58  58#includ8e <  60#includ8f="drivers/acpi/osl.c#L582" id85CONFIAE_ERRO="drivers/acpi/oAE_ERRO="L60 class="line" name="L58">  58  58  58#includ8e <acpi_irq_hanresults="drivers/acpiresult="sr =cf">acpi_in_deburaw.pcihreads="drivers/acpiraw.pcihread="sref">acpi_in_debupcihidf="drivers/acpipcihida hr- id=rk_struct     49 acpi_in_debupcihidf="drivers/acpipcihida hr- id=rk_struct   s",class="line" name="L49">  49   {valu e <  58acpi_irq_hanvalu (acpi_in_debuvalu e <  58  49#includ8acpi_in_deburesults="drivers/acpiresult="sr ?ass="sref">CONFIAE_ERRO="drivers/acpi/oAE_ERRO="L60 :ass="sref">CONFIAE_OK"drivers/acpi/oAE_OK"L60" class="line" name="L58">  58       8   58#includ8 void *  52  49ACPI_OS_SERVq_hanoshwrite_pci_configurationf="drivers/acpiq_hanoshwrite_pci_configuration="srestruc cf">acpi_irq_han/osl.pcihidf="drivers/acpi/osl.pcihida hre*brk_struct    49#includ8ref="drivers/acpi/osl.c#8L65" 86cessoef="+code=u32" cef="+code=u32" crk_struct  {valu ( s"class="line" name="L77">  77#includ8f="drivers/acpi/osl.c#L686" id865ct"  class="line" name="L60">  60 *8acpi_irq_hanresults="drivers/acpiresult="sr, rk_struct   58  58acpi_irq_hanwidthf="drivers/acpiwidthf">s"s class="line" name="L60">  60#includ8f="drivers/acpi/osl.c#L780" id869llback" clascase 8:class="line" name="L60">  60#ifdef 8   58#includ8e <  58
  60       8lass="comment">/* stuff 8for d873a href="+code=u32" cf">acpi_irq_hansiz (  58};
  58
  60acpi_irq_hansiz (  58wait  58  60#includ8f="drivers/acpi/osl.c#L880" id879a href="+code=u32" crejax_ass="sref">CONFIAE_ERRO="drivers/acpi/oAE_ERRO="L60 class="line" name="L58">  58static 8int (*  58       8                        8     88L52" class="line" name="L52">  52
acpi_irq_hanresults="drivers/acpiresult="sr =cf">acpi_in_deburaw.pcihwrites="drivers/acpiraw.pcihwrite="sref">acpi_in_debupcihidf="drivers/acpipcihida hr- id=rk_struct     49       8acpi_irq_hanPCI_DEVFNf="drivers/acpiPCI_DEVFN="sref">acpi_in_debupcihidf="drivers/acpipcihida hr- id=rk_struct   s",class="line" name="L49">  49};
  acpi_irq_hanvalu (  58
  58acpi_in_deburesults="drivers/acpiresult="sr ?ass="sref">CONFIAE_ERRO="drivers/acpi/oAE_ERRO="L60 :ass="sref">CONFIAE_OK"drivers/acpi/oAE_OK"L60" class="line" name="L58">  58  58 *  but W8T  49#includ8f="drivers/acpi/osl.c#L980" id88L70" re_sleecontess="sref">__acpq_hanoshexecute_ clerredf="drivers/acpi/osl.oshexecute_ clerred="srestruc cf">acpi_irq_hanwork_struc f="drivers/acpiwork_struc llbacef">acpi_irq_hanworkf="drivers/acpiworkf">s"class="line" name="L77">  77/*8
  60       8lass="comment"> * This l8ist o89acpi_irq_han/osl.oshdpcf="drivers/acpi/osl.oshdpcllbacef">acpi_irq_handpcf="drivers/acpidpcllbac=cf">acpi_in_debucontat">r_off="drivers/acpicontat">r_of="sref">acpi_in_debuworkf="drivers/acpiworkf">s,dstruc cf">acpi_irq_han/osl.oshdpcf="drivers/acpi/osl.oshdpcllba,cf">acpi_irq_hanworkf="drivers/acpiworkf">s" class="line" name="L58">  58
 * interr8upt c892a hrclass="line" name="L58">  58       89a href="+code=acpi_osd_89andl893a href="+codif (rk_struct  s"class="line" name="L77">  77};
   58
  58#includ89truct wait< ="sref">acpi_odpcf="drivers/acpidpcllba- id=rk_struct s(rk_struct  s" class="line" name="L58">  58s(rk_struct   58  58
 *
8<" id89L70" class="line" name="L70">  70 * ~~~~~~9~/*******************************************************************************  70 * This l901a h90 *  70 * interr902a h902a hr * FUNCTION:s="s/osl.oshexecute  70 *  70 * PARAMETE=S:s=Typef="+code=u32" c-=Typefof the callback="span class="line" name="L70">  70 *              Functioncode=u32" c-=Functioncto be executed="span class="line" name="L70">  70 *              Contex  code=u32" c-=Functioncparodetame="span class="line" name="L70">  70 *  70 * RETURN:s="s  Statu#83span class="line" name="L70">  70 *
909a h909llba *  70 * ~~~~~~9~~~~~91allba * DESCRIPTION:sDepL69"ng onctype, either queues function for  clerred execution or  70 *9<1a h91 *              im#Ldiately executes function on a separote thread.  70 *  This 9progr912a hr *  70 *  it un9der t913a hr ******************************************************************************/  70 *  the F9ree S91e claclass="line" name="L58">  58 *  (at y9our o91L66" re_sleef">acpi_in_debudler__acp_./osl.oshexecutef="drivers/acpi_./osl.oshexecutef">s(rk_struct __acptypef="drivers/acpitype83" ,class="line" name="L49">  49 *9
wait< ="sref">acpi_o/osl.osd.exec_callbacks="drivers/acpiq_hanosd.exec_callback83" ess="sref">__acpfunctionf="drivers/acpifunctionf">s,econteef">acpi_irq_hancontex f="drivers/acpicontex f">s,sp" cf">acpi_irq_hanhpf="drivers/acpihp"L60"class="line" name="L77">  77 *  This 9progr91mapho class="line" name="L60">  60 *  but W9ITHOU918llback" clasrk_struct __acpstatu#f="drivers/acpistatu#83" e=cf">acpi_in_debuAE_OK"drivers/acpi/oAE_OK"L60 class="line" name="L58">  58 *  MERCH9ANTAB919a href="+codstruc cf">acpi_irq_han/osl.oshdpcf="drivers/acpi/osl.oshdpcllbacef">acpi_irq_handpcf="drivers/acpidpcllba class="line" name="L58">  58 *  GNU G9enera92allback" classtruc cf">acpi_irq_hanworkqueue_struc f="drivers/acpiworkqueue_struc llbacef">acpi_irq_hanqueuef="drivers/acpiqueuellba class="line" name="L58">  58 *9
acpi_irq_hanrets="drivers/acpiretllba class="line" name="L58">  58 *  This 9rrogr922a href="+codrk_struct s((rk_struct   49 *  along9 with923a href="+code=u32" ccccccccccc"Schedul"ng function [%p(%p)] for  clerred execution.\n"  49 *  Found9ation92cessoef="+code=u32" cef="+code=ss="sref">__acpfunctionf="drivers/acpifunctionf">s,erk_struct s"" class="line" name="L58">  58 *9
  58 * ~~~~~~9~~~~~926"sref">wait< spans="commecom#L22">/*  70 *9
         * Allocote/initialize DPCsstruc ure.  Note that this memory will be  70 */
         * freed by the callee.  The kernel handles the work_struc  listodp" a  70         * way that allows uscto also free its memory inside the callee.  70#includ9e <         * Because we may wa" cto schedule senamal tasks with diflerL22="span class="line" name="L70">  70         * parodetame we can't use the approach some kernel /a>  uses of="span class="line" name="L70">  70         * hav"ng a se_sleework_struc .  70 *  it un9ewith933a hr         */  70  58 acpi_in_debukmallocf="drivers/acpikmalloc="sresizeofestruc cf">acpi_irq_han/osl.oshdpcf="drivers/acpi/osl.oshdpcllba),erk_struct   58acpi_irq_handpcf="drivers/acpidpcllba"class="line" name="L58">  58waitCONFIAE_NO_MEMORY"drivers/acpi/oAE_NO_MEMORYllba class="line" name="L58">  58  49acpi_odpcf="drivers/acpidpcllba- id=rk_struct s =cf">acpi_in_debufunctionf="drivers/acpifunctionf">s class="line" name="L58">  58#includ9e <  sc=cf">acpi_in_debucontex f="drivers/acpicontex f">s class="line" name="L58">  58  52/*  70         * We can't run hotplug /a>  p" kevL22d_wq/k"L70d_wq/k"L70d_notify_wq  70 *  the F9enux/94e cla         * because the hotplug /a>  may call e" nam .remove() functions,  70         * which invoke flush_scheduled_work/q_hanoshwai _evL22s_complete="span class="line" name="L70">  70         * to flush these workqueues.  70         */  70 acpi_in_debuhpf="drivers/acpihp"L60 ?ass="sref">CONFIk"L70_hotplug_wqf="drivers/acpik"L70_hotplug_wq"L60 :class="line" name="L70">  70 acpi_in_debuOSL_NOTIFY_HANDLE="drivers/acpi/oOSL_NOTIFY_HANDLE="L60 ?ass="sref">CONFIk"L70_notify_wqf="drivers/acpik"L70_notify_wqCONFIk"L70d_wqf="drivers/acpik"L70d_wq  58#includ9e <  sc=cf">acpi_in_debuhpf="drivers/acpihp"L60 ?a1 :a0 class="line" name="L58">  58  52 acpi_in_debuk"L70_hotplug_wqf="drivers/acpik"L70_hotplug_wq"L60"class="line" name="L58">  58acpi_in_debuINIT_WORK"drivers/acpi/oINIT_WORK="sre&pi_os_dpc {dpcf="drivers/acpidpcllba- id=rk_struct s,df">acpi_irq_han/osl.oshexecute_ clerredf="drivers/acpi/osl.oshexecute_ clerred="sr" class="line" name="L58">  58 acpi_in_debuk"L70_notify_wqf="drivers/acpik"L70_notify_wq  58acpi_in_debuINIT_WORK"drivers/acpi/oINIT_WORK="sre&pi_os_dpc {dpcf="drivers/acpidpcllba- id=rk_struct s,df">acpi_irq_han/osl.oshexecute_ clerredf="drivers/acpi/osl.oshexecute_ clerred="sr" class="line" name="L58">  58  58waitacpi_irq_hanINIT_WORK"drivers/acpi/oINIT_WORK="sre&pi_os_dpc {dpcf="drivers/acpidpcllba- id=rk_struct s,df">acpi_irq_han/osl.oshexecute_ clerredf="drivers/acpi/osl.oshexecute_ clerred="sr" class="line" name="L58">  58  49#includ9/*  70       9          * On some machodes, a software-initiated SMI causes /arruption unl.c#>pspan class="line" name="L70">  70         * the SMI runs on CPU 0.  An SMI can be initiated by any AML, bu2="span class="line" name="L70">  70         * typically it's don  p" GPE-related methods that are run via  70         * workqueues, so we can acontethe known /arruption cases by alway#>pspan class="line" name="L70">  70         * queue"ng oncCPU 0.>pspan class="line" name="L70">  70         */  70 *9wait< ="sref">acpi_orets="drivers/acpiretllbac=cf">acpi_in_debuqueue_work_onf="drivers/acpiqueue_work_on="sre0,df">acpi_irq_hanqueuef="drivers/acpiqueuellba,c&pi_os_dpc {dpcf="drivers/acpidpcllba- id=rk_struct s" class="line" name="L58">  58  58acpi_irq_hanrets="drivers/acpiretllba"s class="line" name="L60">  60#includ9f="drivers/acpi/osl.c#L790" id969a href="+code=u32" cpi_os_dpc {printkf="drivers/acpiprintkf">s(rk_struct __acpPREFIXf="drivers/acpiPREFIX claclass="line" name="L58">  58#ifdef 9"Call to queue_work() failed.\n"  58#includ9e <__acpstatu#f="drivers/acpistatu#83" e=cf">acpi_in_debuAE_ERRO="drivers/acpi/oAE_ERRO="L60 class="line" name="L58">  58
acpi_in_debukfrees="drivers/acpikfreef">s(rk_struct   58       9lass="comment">/* stuff 9for d973a href="+cod}class="line" name="L58">  58};
CONFIstatu#f="drivers/acpistatu#83"  class="line" name="L58">  58  58  77 __acp/osl.oshexecutef="drivers/acpi/osl.oshexecutef">s(rk_struct __acptypef="drivers/acpitype83" ,class="line" name="L49">  49acpi_in_debu/osl.osd.exec_callbacks="drivers/acpiq_hanosd.exec_callback83" ess="sref">__acpfunctionf="drivers/acpifunctionf">s,econteef">acpi_irq_hancontex f="drivers/acpicontex f">s"class="line" name="L58">  58#includ9f="drivers/acpi/osl.c#L890" id979a hr class="line" name="L60">  60static 9int (*CONFI_./osl.oshexecutef="drivers/acpi_./osl.oshexecutef">s(rk_struct __acpfunctionf="drivers/acpifunctionf">s,erk_struct s, 0" class="line" name="L58">  58       9                        9     98L52" }class="line" name="L58">  58
,
s(rk_struct s" class="line" name="L58">  58       9  58};
__acp/osl.oshhotplug_executef="drivers/acpi/osl.oshhotplug_executef">s(rk_struct __acpfunctionf="drivers/acpifunctionf">s,class="line" name="L58">  58acpi_irq_hancontex f="drivers/acpicontex f">s"class="line" name="L58">  58  60CONFI_./osl.oshexecutef="drivers/acpi_./osl.oshexecutef">s(0,df">acpi_irq_hanfunctionf="drivers/acpifunctionf">s,erk_struct s, 1" class="line" name="L58">  58 *  but W9T  58#includ9f="drivers/acpi/osl.c#L990" id98L70" class="line" name="L70">  70/*9
__acpq_hanoshwai _evL22s_completes="drivers/acpiq_hanoshwai _evL22s_complete="srecont"class="line" name="L58">  58       9lass="comment"> * This l9ist o99  60
 * interr9upt c992a href="+codrk_struct s(rk_struct   58       99a href="+code=acpi_osd_99andl993a href="+codrk_struct s(rk_struct   58};
  58
  58#includ99truct ,
s(rk_struct   58  58   58#includ9sss="comment"> *
9<" id99L70" rk_struct s(rk_struct s,erk_struct s,df">acpi_irq_han/osl.handles="drivers/acpiq_hanhandlea hre*brk_struct   58 *
100><>100>a hr cl/pre><>lass="line" name="L58">  58 * This l100as>100acpi_irq_hansemaphores="drivers/acpisemaphoref">seef">acpi_irq_hansems="drivers/acpisem83" e=cf">acpi_in_debuNULLf="drivers/acpiNULL83"  class="line" name="L58">  58 * interr100as>1002a hrclass="line" name="L58">  581003a href="+codrk_struct acpi_in_debuq_hanoshallocotes="drivers/acpiq_hanoshallocotef">s(sizeofestruc cf">acpi_irq_hansemaphores="drivers/acpisemaphoref">s"" class="line" name="L58">  581004llback" claspf (!f">acpi_irq_hansems="drivers/acpisem83" "class="line" name="L58">  581005ct" class="se=u32" crejax_ass="sref">CONFIAE_NO_MEMORY"drivers/acpi/oAE_NO_MEMORYllba class="line" name="L58">  581006"sref">wait< ="sref">acpi_omemsets="drivers/acpimemsetf">s(rk_struct acpi_irq_hansemaphores="drivers/acpisemaphoref">s"" class="line" name="L58">  58100" claclass="line" name="L58">  581008llback" clasrk_struct s(rk_struct  s" class="line" name="L58">  58 *
100ss>100L70" class="line" name="L70">  70 * ~~~~~~10las>10lallback" clasef">acpi_irq_hanhandles="drivers/acpihandlea hre=c(rk_struct    58 *10aas>10lL52" class="line" name="L52">  52 *  This 10las>10l2a href="+codrk_struct s((rk_struct "Creat"ng semaphore[%p|%d].\n"  49 *  it un10las>10l3a href="+code=u32" cccccccccccef">acpi_irq_hanhandles="drivers/acpihandlea hr, rk_struct s"" class="line" name="L58">  58 *  the F10las>10le claclass="line" name="L58">  58 *  (at y10las>10l5ct" class="srejax_ass="sref">CONFIAE_OK"drivers/acpi/oAE_OK"L60 class="line" name="L58">  58 *10las>10l6esso}class="line" name="L58">  58 *  This 10las>10l" claclass="line" name="L58">  58 *  but W10las>10l8esso/*  70 *  MERCH10las>10l9llba * TODO: A better way to delete semaphores?  Linux doesn't have a  70 *  GNU G10las>10lallba * 'delete_semaphore()' function -- may resultdp" an invalid="span class="line" name="L70">  70 *10las>10l * pointer derelerL2ce for non-synchronized consumame.  Should="span class="line" name="L70">  70 *  This 10aas>10l2a hr * we at least check for blocked threads anddsignal/ca2celethem?="span class="line" name="L70">  70 *  along10las>10l3a hr */  70 *  Found10las>10le claclass="line" name="L58">  58 *10las>10l5essork_struct __acp/osl.oshdelete_semaphores="drivers/acpiq_hanoshdelete_semaphoref">s(rk_struct    58 * ~~~~~~10las>10l6llba class="line" name="L60">  60 *10las>10l7llback" classtruc cf">acpi_irq_hansemaphores="drivers/acpisemaphoref">seef">acpi_irq_hansems="drivers/acpisem83" e=cestruc cf">acpi_irq_hansemaphores="drivers/acpisemaphoref">se*)rk_struct   58 */10lL49" class="line" name="L49">  4910l9a href="+codpf (!f">acpi_irq_hansems="drivers/acpisem83" "class="line" name="L58">  58CONFIAE_BAD_PARAMETE="drivers/acpi/oAE_BAD_PARAMETE="L60 class="line" name="L58">  5810eL52" class="line" name="L52">  5210e2a href="+codrk_struct s((rk_struct "Delet"ng semaphore[%p].\n"   58 *  it un10aas>10ehis pclass="line" name="L58">  5810e4llback" clasf">acpi_irq_hanBUG_ONf="drivers/acpiBUG_ONf">s(!f">acpi_irq_hanlist_emptyf="drivers/acpilist_emptyf">s(&pi_os_dpc {sems="drivers/acpisem83" - id=rk_struct   5810e5ct" class="srk_struct s(rk_struct   5810e6"sref">wait< ="sref">acpi_osems="drivers/acpisem83" e=cf">acpi_in_debuNULLf="drivers/acpiNULL83"  class="line" name="L58">  5810e" claclass="line" name="L58">  5810e8llback" clasrejax_ass="sref">CONFIAE_OK"drivers/acpi/oAE_OK"L60 class="line" name="L58">  5810e9esso}class="line" name="L58">  58  5810e/*  7010e2a hr * TODO: Support for unit#  id= 1?="span class="line" name="L70">  7010e3a hr */  70 *  the F10aas>10ecessork_struct __acp/osl.oshwai _semaphores="drivers/acpiq_hanoshwai _semaphoref">s(rk_struct   s,erk_struct    5810e5ct"  class="line" name="L60">  6010e6"sref">wait< ="sref">acpi_o/osl.statu#f="drivers/acpi/osl.statu#83" ess="sref">__acpstatu#f="drivers/acpistatu#83" e=cf">acpi_in_debuAE_OK"drivers/acpi/oAE_OK"L60 class="line" name="L58">  5810e7llback" classtruc cf">acpi_irq_hansemaphores="drivers/acpisemaphoref">seef">acpi_irq_hansems="drivers/acpisem83" e=cestruc cf">acpi_irq_hansemaphores="drivers/acpisemaphoref">se*)rk_struct   5810e8llback" claslong rk_struct   5810e9a href="+codp" cf">acpi_irq_hanrets="drivers/acpiretllbae=c0 class="line" name="L58">  58  5810eacpi_irq_hansems="drivers/acpisem83"  ||c(rk_struct s &ld= 1)"class="line" name="L58">  5810e2a href="+code=u32" crejax_ass="sref">CONFIAE_BAD_PARAMETE="drivers/acpi/oAE_BAD_PARAMETE="L60 class="line" name="L58">  5810ehis pclass="line" name="L58">  5810e4llback" claspf (rk_struct s &id= 1"class="line" name="L58">  5810e5ct" class="se=u32" crejax_ass="sref">CONFIAE_SUPPORT"drivers/acpi/oAE_SUPPORT"L60 class="line" name="L58">  5810eL77" class="line" name="L77">  7710e7ct" class="srk_struct s((rk_struct "Wai "ng for semaphore[%p|%d|%d]\n"  4910e8essoef="+code=u32" c+code=u32"rk_struct  s,erk_struct   5810eL70" class="line" name="L70">  70 acpi_in_debuACPI_WAIT_FOREVE="drivers/acpi/oACPI_WAIT_FOREVE=83" "class="line" name="L58">  5810 __acpjiffie#f="drivers/acpijiffie#a hre=cf">acpi_in_debuMAX_SCHEDULE_TIMEOUT"drivers/acpi/oMAX_SCHEDULE_TIMEOUT"L60 class="line" name="L58">  5810 2a href="+codLlseclass="line" name="L58">  5810 3a href="+code=u32" cf">acpi_in_debujiffie#f="drivers/acpijiffie#a hre=cf">acpi_in_debumsecs_to_jiffie#f="drivers/acpimsecs_to_jiffie#f">s(rk_struct   5810 4llback" clasclass="line" name="L58">  5810 5ct" class="srk_struct acpi_in_debudown_timeouts="drivers/acpidown_timeoutf">s(rk_struct    58 *10aas>10 6llback" claspf (rk_struct   5810 7llback" clasf">waitacpi_irq_hanstatu#f="drivers/acpistatu#83" e=cf">acpi_in_debuAE_TIME"drivers/acpi/oAE_TIME"L60 class="line" name="L58">  5810 L49" class="line" name="L49">  4910 9a href="+codpf (f">acpi_in_debuACPI_FAILURE"drivers/acpi/oACPI_FAILUREf">s(rk_struct   60waitacpi_irq_hanACPI_DEBUG_PRINT"drivers/acpi/oACPI_DEBUG_PRINTf">s((rk_struct   6010<"Failedcto acquire semaphore[%p|%d|%d], %s"  4910<2a href="+code=u32" ce=u32" c+code=u32"rk_struct  s,erk_struct   49/* stuff 10las>10<3a href="+code=u32" cccccccccccode=u32"rk_struct s(rk_struct   5810<4llback" clas}sLlsed class="line" name="L60">  6010<5ct" class="se=u32" cf">acpi_in_debuACPI_DEBUG_PRINT"drivers/acpi/oACPI_DEBUG_PRINTf">s((rk_struct   6010<6a href="+code=u32" ce=u32" c+code=u32"rspans="commestr"ng">"Acquired semaphore[%p|%d|%d]"   6010<7llback" clasf">wait s,erk_struct   5810<8essoef="+cod}class="line" name="L58">  5810  70CONFIstatu#f="drivers/acpistatu#83"  class="line" name="L58">  5810iL52" }class="line" name="L58">  5810i2a hrclass="line" name="L58">  5810i3a hr/*  7010ie cla * TODO: Support for unit#  id= 1?="span class="line" name="L70">  7010i5ct"  */  7010i6"sre_ctrl,
__acp/osl.oshsignal_semaphores="drivers/acpiq_hanoshsignal_semaphoref">s(rk_struct   s"class="line" name="L58">  5810imapho class="line" name="L60">  60 *  but W10aas>10i8essoef="+codstruc cf">acpi_irq_hansemaphores="drivers/acpisemaphoref">seef">acpi_irq_hansems="drivers/acpisem83" e=cestruc cf">acpi_irq_hansemaphores="drivers/acpisemaphoref">se*)rk_struct   5810iL70" class="line" name="L70">  70/*10las>10laa href="+codpf (!f">acpi_irq_hansems="drivers/acpisem83"  ||c(rk_struct s &ld= 1)"class="line" name="L58">  58 * This l10las>10lCONFIAE_BAD_PARAMETE="drivers/acpi/oAE_BAD_PARAMETE="L60 class="line" name="L58">  58 * interr10las>10l2a hrclass="line" name="L58">  5810l3a href="+codpf (rk_struct s &id= 1"class="line" name="L58">  5810lcessoef="+code=u32" crejax_ass="sref">CONFIAE_SUPPORT"drivers/acpi/oAE_SUPPORT"L60 class="line" name="L58">  5810l5ct" class="line" name="L58">  5810l6"sref">wait< ="sref">acpi_oACPI_DEBUG_PRINT"drivers/acpi/oACPI_DEBUG_PRINTf">s((rk_struct "Signal"ng semaphore[%p|%d]\n"   6010l7llback" clasf">wait s"" class="line" name="L58">  5810lL49" class="line" name="L49">  49 *
10sss>10l9llback" clas ="sref">acpi_oupf="drivers/acpiupf">s(rk_struct   58 *
110><>110  claclass="line" name="L58">  58 * This l110as>110CONFIAE_OK"drivers/acpi/oAE_OK"L60 class="line" name="L58">  58 * interr110as>1102a hr}class="line" name="L58">  58110his pclass="line" name="L58">  581104llba#ifdef< ="sref">acpi_oACPI_FUTURE_USAGE"drivers/acpi/oACPI_FUTURE_USAGEis pclass="line" name="L58">  581105essork_struct s(chareef">acpi_irq_hanbuflers="drivers/acpibuflerf">s"class="line" name="L58">  581106llba class="line" name="L60">  60110" claclass="line" name="L58">  581108llba#ifdef< ="sref">acpi_oENABLE_DEBUGGE="drivers/acpi/oENABLE_DEBUGGE= claclass="line" name="L58">  58 *
110ss>1109a href="+codpf (f">acpi_in_debuq_hanin_debuggers="drivers/acpiq_hanin_debuggerf">s"d class="line" name="L60">  60 * ~~~~~~11las>111allback" clasf">waitacpi_irq_hanue <  58 *11aas>11lL52" class="line" name="L52">  52 *  This 11las>1112a href="+code=u32" cf">acpi_in_debukdb_readf="drivers/acpikdb_readf">s(rk_struct s,dsizeoferk_struct _bufs="drivers/acpint">_buff">s"" class="line" name="L58">  58 *  it un11las>111his pclass="line" name="L58">  58 *  the F11las>111cessoef="+code=u32" c/* removeethe CR kdb includes */  70 *  (at y11las>1115ct" class="se=u32" cf">acpi_in_debuchar#f="drivers/acpichar#"L60e=cf">acpi_in_debustrlenf="drivers/acpistrlenf">s(rk_struct s) - 1 class="line" name="L58">  58 *11las>1116a href="+code=u32" crk_struct s[f">acpi_in_debuchar#f="drivers/acpichar#"L60]e=cfspans="commestr"ng">'\0'  58 *  This 11las>1117llback" clas}class="line" name="L58">  58 *  but W11las>11l8esso#endifclass="line" name="L58">  58 *  MERCH11las>111L70" class="line" name="L70">  70 *  GNU G11las>112nllback" clasrejax_a0 class="line" name="L58">  58 *11las>112L52" }class="line" name="L58">  58 *  This 11aas>11l2a hr#endifck" clasf">wait/*  ACPI_FUTURE_USAGE  */  70 *  along11las>112his pclass="line" name="L58">  58 *  Found11las>112cessork_struct __acp/osl.oshsignals="drivers/acpiq_hanoshsignalf">s(rk_struct s,econteef">acpi_irq_haninfof="drivers/acpiinfof">s"class="line" name="L58">  58 *11las>1125ct"  class="line" name="L60">  60 * ~~~~~~11las>1126a href="+codswitch (f">acpi_in_debufunctionf="drivers/acpifunctionf">s"d class="line" name="L60">  60 *11las>11l7llback" clascase< ="sref">acpi_oACPI_SIGNAL_FATALf="drivers/acpiACPI_SIGNAL_FATALllba:class="line" name="L70">  70 */1128essoef="+code=u32" c ="sref">acpi_oprintkf="drivers/acpiprintkf">s(rk_struct __acpPREFIXf="drivers/acpiPREFIX cla"rspans="commestr"ng">"Fatal op__ac executed\n"  581129a href="+code=u32" cbreak class="line" name="L58">  58acpi_oACPI_SIGNAL_BREAKPOINT"drivers/acpi/oACPI_SIGNAL_BREAKPOINTllba:class="line" name="L70">  70113/*  701132a hr                 * AML Breakpoint  70 *  it un11aas>1133a hr                 * ACPI spec. sayscto treat it as a NOP unl.c#>pspan class="line" name="L70">  70113e cla                 * you are debugg"ng.  Sodpf/when we integrate="span class="line" name="L70">  701135ct"                  * AML debugger intoethe kernel debugger it#>pspan class="line" name="L70">  701136llba                 * hook will go here.  But untilethen it i#>pspan class="line" name="L70">  701137llba                 * not useful to print anyth"ng oncbreakpoints.  701138esso                 */  701139a href="+code=u32" cbreak class="line" name="L58">  58  70114  581142a href="+cod}class="line" name="L58">  58114his pclass="line" name="L58">  58 *  the F11aas>114cessoef="+codrejax_ass="sref">CONFIAE_OK"drivers/acpi/oAE_OK"L60 class="line" name="L58">  581145ct" }class="line" name="L58">  58114L77" class="line" name="L77">  7711e7llbastaticdp" cf">acpi_irq_han__inits="drivers/acpi__initf">sess="sref">__acp/osl.oshclud_sejapf="drivers/acpi/osl.oshclud_sejapf">s(chareef">acpi_irq_hanstrf="drivers/acpistrf">s"class="line" name="L58">  5811e8llba class="line" name="L60">  6011e9a href="+codchareef">acpi_irq_hanpf="drivers/acpip"L60e=cf">acpi_in_debu/osl.oshcludf="drivers/acpi/osl.oshclud"L60 class="line" name="L58">  58acpi_irq_hancountf="drivers/acpicount"L60e=cf">acpi_in_debuACPI_MAX_OVERRIDE_LENf="drivers/acpiACPI_MAX_OVERRIDE_LEN"L60e- 1 class="line" name="L58">  58115L52" class="line" name="L52">  5211e2a href="+codpf (!f">acpi_irq_hanstrf="drivers/acpistrf">s ||c!ef">acpi_irq_hanstrf="drivers/acpistrf">s"class="line" name="L58">  581153a href="+code=u32" crejax_a0 class="line" name="L58">  58115e claclass="line" name="L58">  5811e5ct" class="sfor (;cf">acpi_irq_hancountf="drivers/acpicount"L60--c&&cf">acpi_in_debustrf="drivers/acpistrf">s &&cef">acpi_irq_hanstrf="drivers/acpistrf">s;cf">acpi_in_debustrf="drivers/acpistrf">s++"d class="line" name="L60">  601156a href="+code=u32" cpf (f">acpi_in_debuisalnums="drivers/acpiisalnumf">s(ef">acpi_irq_hanstrf="drivers/acpistrf">s" ||cef">acpi_irq_hanstrf="drivers/acpistrf">sc==cfspans="commestr"ng">' 'acpi_irq_hanstrf="drivers/acpistrf">sc==cfspans="commestr"ng">':'  581157llback" clasf">wait<        *f">acpi_irq_hanpf="drivers/acpip"L60++e=cef">acpi_irq_hanstrf="drivers/acpistrf">s;class="line" name="L58">  5811e8essoef="+code=u32" cLlsedpf (ef">acpi_irq_hanstrf="drivers/acpistrf">sc==cfspans="commestr"ng">'\''acpi_irq_hanstrf="drivers/acpistrf">sc==cfspans="commestr"ng">'"'  581159a href="+code=u32" cef="+codcontinue;class="line" name="L58">  58wait  5811   581162a href="+cod}class="line" name="L58">  5811 3a href="+codef">acpi_irq_hanpf="drivers/acpip"L60e=c0 class="line" name="L58">  58116e claclass="line" name="L58">  5811 5ct" class="srejax_a1 class="line" name="L58">  58 *11aas>116L77" class="line" name="L77">  7711 7llba}class="line" name="L58">  5811 L49" class="line" name="L49">  49116L70" rk_struct <__sejapf="drivers/acpi__sejapf">s(rspans="commestr"ng">"/osl.oshclud=" s" class="line" name="L58">  58  5811</* arbitrary */  7011<2a hr#deff="erk_struct /* arbitrary */  70/* stuff 11las>117his pclass="line" name="L58">  5811<4llbastruc cf">acpi_irq_hanosi_sejap_L22ryf="drivers/acpiosi_sejap_L22ryct" c class="line" name="L60">  6011<5ct" class="scharef">acpi_irq_hanstr"ng"="drivers/acpistr"ngf">s[f">acpi_in_debuOSI_STRING_LENGTH_MAXf="drivers/acpiOSI_STRING_LENGTH_MAXct" ] class="line" name="L58">  581176"sref">wait< ="sref">acpi_obools="drivers/acpiboolf">sess="sref">__acpenables="drivers/acpienablef">s;class="line" name="L58">  5811<7llba};class="line" name="L58">  58117L49" class="line" name="L49">  4911acpi_irq_hanosi_sejap_L22ryf="drivers/acpiosi_sejap_L22ryct" cf">acpi_irq_han__initdatas="drivers/acpi__initdata49" class="line" name="L49">  49waitacpi_irq_hanosi_sejap_L22rie#f="drivers/acpiosi_sejap_L22rie#f">s[f">acpi_in_debuOSI_STRING_ENTRIES_MAXf="drivers/acpiOSI_STRING_ENTRIES_MAXct" ]e=c class="line" name="L60">  60118"Module Device"   601182a href="+cod{rspans="commestr"ng">"Processor Device"   601183a href="+cod{rspans="commestr"ng">"3.0 _SCP Extensions"   601184a href="+cod{rspans="commestr"ng">"Processor Aggregator Device"   6011i5ct" };class="line" name="L58">  58118L77" class="line" name="L77">  7711imaphocontess="sref">__acp__inits="drivers/acpi__initf">sess="sref">__acp/osl.osi_sejapf="drivers/acpi/osl.osi_sejapf">s(chareef">acpi_irq_hanstrf="drivers/acpistrf">s"class="line" name="L58">  58 *  but W11aas>1188llba class="line" name="L60">  601189a href="+codstruc cf">acpi_irq_hanosi_sejap_L22ryf="drivers/acpiosi_sejap_L22ryct" cef">acpi_irq_hanosif="drivers/acpiosif">s;class="line" name="L58">  58/*11las>11laa href="+cod ="sref">acpi_obools="drivers/acpiboolf">sess="sref">__acpenables="drivers/acpienablef">se=cf">acpi_in_debutrues="drivers/acpitruellba;class="line" name="L58">  58 * This l11las>11lacpi_irq_hanif="drivers/acpiif">s;class="line" name="L58">  58 * interr11las>11l2a hrclass="line" name="L58">  5811l3a href="+codpf (!f">acpi_irq_han/osl.gblhcreate_osi_methodf="drivers/acpi/osl.gblhcreate_osi_methodf">s"class="line" name="L58">  5811lcessoef="+code=u32" crejax_;class="line" name="L58">  5811l5ct" class="line" name="L58">  581196llback" claspf (rk_struct sc==cfk_struct acpi_irq_hanstrf="drivers/acpistrf">sc==cfspans="commestr"ng">'\0'  6011l7llback" clasf">wait< ="sref">acpi_oprintkf="drivers/acpiprintkf">s(rk_struct __acpPREFIXf="drivers/acpiPREFIX cla"rspans="commestr"ng">"_OSI method disabled\n"  581198essoef="+code=u32" c ="sref">acpi_o/osl.gblhcreate_osi_methodf="drivers/acpi/osl.gblhcreate_osi_methodf">se=cf">acpi_in_debuFALSE"drivers/acpi/oFALSEf">s;class="line" name="L58">  58 *
11sss>1199a href="+code=u32" crejax_;class="line" name="L58">  58 *
120><>120aa href="+cod}class="line" name="L58">  58 * This l120as>120L52" class="line" name="L52">  52 * interr120as>1202a href="+codpf (ef">acpi_irq_hanstrf="drivers/acpistrf">sc==cfspans="commestr"ng">'!'  601203a href="+code=u32" cf">acpi_in_debustrf="drivers/acpistrf">s++;class="line" name="L58">  58120cessoef="+code=u32" c__acpenables="drivers/acpienablef">se=cf">acpi_in_debufalses="drivers/acpifalsef">s;class="line" name="L58">  581205ct" class="s}class="line" name="L58">  58120L77" class="line" name="L77">  771207llback" clasfor (f">acpi_irq_hanif="drivers/acpiif">se=c0 cf">acpi_irq_hanif="drivers/acpiif">s &ld= f">acpi_in_debuOSI_STRING_ENTRIES_MAXf="drivers/acpiOSI_STRING_ENTRIES_MAXct"  cf">acpi_irq_hanif="drivers/acpiif">s++"d class="line" name="L60">  601208essoef="+code=u32" c ="sref">acpi_oosif="drivers/acpiosif">se=c&pi_os_dpc {osi_sejap_L22rie#f="drivers/acpiosi_sejap_L22rie#f">s[f">acpi_in_debuif="drivers/acpiif">s] class="line" name="L58">  58 *
120ss>1209a href="+code=u32" cpf (!f">acpi_irq_hanstrcmpf="drivers/acpistrcmpf">s(rk_struct s- id=rk_struct s,erk_struct s""d class="line" name="L60">  60 * ~~~~~~12las>121allback" clasf">waitacpi_oosif="drivers/acpiosif">s- id=rk_struct se=cf">acpi_in_debuenables="drivers/acpienablef">s;class="line" name="L58">  58 *12aas>121  58 *  This 12las>1212a href="+code=u32" c}cLlsedpf (rk_struct s- id=rk_struct s[0]c==cfspans="commestr"ng">'\0'  60 *  it un12las>12l3a href="+code=u32" ccccccccc ="sref">acpi_oosif="drivers/acpiosif">s- id=rk_struct se=cf">acpi_in_debuenables="drivers/acpienablef">s;class="line" name="L58">  58 *  the F12las>121cessoef="+code=u32" ccccccccc ="sref">acpi_ostrncpyf="drivers/acpistrncpyf">s(rk_struct s- id=rk_struct s,erk_struct s,erk_struct   58 *  (at y12las>1215ct" class="se=u32" cccccccccbreak class="line" name="L58">  58 *12las>1216a href="+code=u32" c}class="line" name="L58">  58 *  This 12las>1217llback" clas}class="line" name="L58">  58 *  but W12las>12l8esso}class="line" name="L58">  58 *  MERCH12las>121L70" class="line" name="L70">  70 *  GNU G12las>122nllbastaticdcontess="sref">__acp__inits="drivers/acpi__initf">sess="sref">__acpsej_osi_linuxf="drivers/acpisej_osi_linuxf">s(unsigneddp" cf">acpi_irq_hanenables="drivers/acpienablef">s"class="line" name="L58">  58 *12las>122L52"  class="line" name="L60">  60 *  This 12aas>1222a href="+codpf (pi_os_dpc {osi_linuxf="drivers/acpiosi_linuxf">s.rk_struct se!=cf">acpi_in_debuenables="drivers/acpienablef">s"class="line" name="L58">  58 *  along12las>1223a href="+code=u32" cf">acpi_in_debuosi_linuxf="drivers/acpiosi_linuxf">s.rk_struct se=cf">acpi_in_debuenables="drivers/acpienablef">s;class="line" name="L58">  58 *  Found12las>12le claclass="line" name="L58">  58 *12las>1225a href="+codpf (pi_os_dpc {osi_linuxf="drivers/acpiosi_linuxf">s.rk_struct s"class="line" name="L58">  58 * ~~~~~~12las>1226a href="+code=u32" crk_struct s(rspans="commestr"ng">"Linux"  58 *12las>12l7llback" clasLlseclass="line" name="L58">  58 */1228essoef="+code=u32" c ="sref">acpi_o/osl.osi_sejapf="drivers/acpi/osl.osi_sejapf">s(rspans="commestr"ng">"!Linux"  58122L70" class="line" name="L70">  70  58123L52" }class="line" name="L58">  581232a hrclass="line" name="L58">  58 *  it un12aas>1233a hrstaticdcontess="sref">__acp__inits="drivers/acpi__initf">sess="sref">__acp/osl.cmdnt">_osi_linuxf="drivers/acpi/osl.cmdnt">_osi_linuxf">s(unsigneddp" cf">acpi_irq_hanenables="drivers/acpienablef">s"class="line" name="L58">  58123e cla class="line" name="L60">  6012e5ct" class="srk_struct s.rk_struct f="drivers/acpicmdnt">f">se=c1;"srspans="commecom#L22">/* cmdnt"> sejethe default and onamride DMI */  7012e6"sref">wait< ="sref">acpi_oosi_linuxf="drivers/acpiosi_linuxf">s.rk_struct se=c0 class="line" name="L70">  701237ct" class="srk_struct s(f">acpi_irq_hanenables="drivers/acpienablef">s" class="line" name="L70">  70123L49" class="line" name="L49">  491239a href="+codrejax_ class="line" name="L58">  58  58124L52" class="line" name="L52">  521242a hrcontess="sref">__acp__inits="drivers/acpi__initf">sess="sref">__acp/osl.dmi_osi_linuxf="drivers/acpi/osl.dmi_osi_linuxf">s(p" cf">acpi_irq_hanenables="drivers/acpienablef">s,dconstdstruc cf">acpi_irq_handmi_system_idf="drivers/acpidmi_system_idct" cef">acpi_irq_handf="drivers/acpidf">s"class="line" name="L58">  58124his p class="line" name="L60">  60 *  the F12aas>124cessoef="+cod ="sref">acpi_oprintkf="drivers/acpiprintkf">s(rk_struct __acpPREFIXf="drivers/acpiPREFIX cla"rspans="commestr"ng">"DMI detected: %s\n" s- id=rk_struct s" class="line" name="L70">  701245ct" class="line" name="L58">  581246llback" claspf (rk_struct se== -1"class="line" name="L58">  581247llback" clasf">wait  58124L49" class="line" name="L49">  491249llback" clas ="sref">acpi_oosi_linuxf="drivers/acpiosi_linuxf">s.rk_struct se=c1;"sclas spans="commecom#L22">/* DMI knowsethajethis box asks OSI(Linux) */  70acpi_osej_osi_linuxf="drivers/acpisej_osi_linuxf">s(f">acpi_irq_hanenables="drivers/acpienablef">s" class="line" name="L70">  70125L52" class="line" name="L52">  5212e2a href="+codrejax_ class="line" name="L58">  581253a hr}class="line" name="L58">  58125e claclass="line" name="L58">  581255ct" /*  701256llba * Modifyethe listdof "OS Interfaces"dreportedcto BIOS via _OSI  701257llba *  701258esso * empty str"ng disables _OSI  701259a hr * str"ng star "ng with '!' disables thajestr"ngf"span class="line" name="L70">  70 * otherwise str"ng is addedcto list, aug#L22"ng built-in str"ng#>pspan class="line" name="L70">  7012  */  701262a hrstaticdcontess="sref">__acp__inits="drivers/acpi__initf">sess="sref">__acp/osl.osi_sejap_lates="drivers/acpi/osl.osi_sejap_latef">s(cont"class="line" name="L58">  58126his p class="line" name="L60">  6012 4llback" classtruc cf">acpi_irq_hanosi_sejap_L22ryf="drivers/acpiosi_sejap_L22ryct" cef">acpi_irq_hanosif="drivers/acpiosif">s;class="line" name="L58">  5812 5ct" class="schareef">acpi_irq_hanstrf="drivers/acpistrf">s;class="line" name="L58">  58 *12aas>12 6llback" clasp" cf">acpi_irq_hanif="drivers/acpiif">s;class="line" name="L58">  581267ct" class="srk_struct __acpstatu#f="drivers/acpistatu#83"  class="line" name="L58">  5812 L49" class="line" name="L49">  4912 9a href="+codfor (f">acpi_irq_hanif="drivers/acpiif">se=c0 cf">acpi_irq_hanif="drivers/acpiif">s &ld= f">acpi_in_debuOSI_STRING_ENTRIES_MAXf="drivers/acpiOSI_STRING_ENTRIES_MAXct"  cf">acpi_irq_hanif="drivers/acpiif">s++"d class="line" name="L60">  60waitacpi_irq_hanosif="drivers/acpiosif">se=c&pi_os_dpc {osi_sejap_L22rie#f="drivers/acpiosi_sejap_L22rie#f">s[f">acpi_in_debuif="drivers/acpiif">s] class="line" name="L58">  5812<acpi_irq_hanstrf="drivers/acpistrf">se=cf">acpi_in_debuosif="drivers/acpiosif">s- id=rk_struct s class="line" name="L58">  581272a hrclass="line" name="L58">  58/* stuff 12las>12<3a href="+code=u32" cpf (ef">acpi_irq_hanstrf="drivers/acpistrf">sc==cfspans="commestr"ng">'\0'  58127cessoef="+code=u32" cccccccccbreak class="line" name="L58">  5812<5ct" class="se=u32" cpf (rk_struct s- id=rk_struct s"d class="line" name="L60">  6012<6a href="+code=u32" ce=u32" css="sref">__acpstatu#f="drivers/acpistatu#83" e=cf">acpi_in_debu/osl.install_interfacef="drivers/acpi/osl.install_interfacef">s(f">acpi_irq_hanstrf="drivers/acpistrf">s" class="line" name="L58">  58127" claclass="line" name="L58">  581278essoef="+code=u32" ce=u32" cpf (rk_struct s(f">acpi_irq_hanstatu#f="drivers/acpistatu#83" )"class="line" name="L58">  581279a href="+code=u32" cef="+code=u32" css="sref">__acpprintkf="drivers/acpiprintkf">s(rk_struct __acpPREFIXf="drivers/acpiPREFIX cla"rspans="commestr"ng">"Addedc_OSI(%s)\n" s" class="line" name="L58">  58wait<}sLlsed class="line" name="L60">  60128__acpstatu#f="drivers/acpistatu#83" e=cf">acpi_in_debu/osl.remove_interfacef="drivers/acpi/osl.remove_interfacef">s(f">acpi_irq_hanstrf="drivers/acpistrf">s" class="line" name="L58">  5812i2a hrclass="line" name="L58">  581283a href="+code=u32" cccccccccpf (rk_struct s(f">acpi_irq_hanstatu#f="drivers/acpistatu#83" )"class="line" name="L58">  58128cessoef="+code=u32" ccccccccce=u32" css="sref">__acpprintkf="drivers/acpiprintkf">s(rk_struct __acpPREFIXf="drivers/acpiPREFIX cla"rspans="commestr"ng">"Deletedc_OSI(%s)\n" s" class="line" name="L58">  581285ct" class="se=u32" c}class="line" name="L58">  581286a href="+cod}class="line" name="L58">  581287llba}class="line" name="L58">  58 *  but W12aas>128L49" class="line" name="L49">  49128L70" staticdp" cf">acpi_irq_han__inits="drivers/acpi__initf">sess="sref">__acposi_sejapf="drivers/acpiosi_sejapf">s(chareef">acpi_irq_hanstrf="drivers/acpistrf">s"class="line" name="L58">  58/*12las>12laa hr class="line" name="L60">  60 * This l12las>12lsc&&c!f">acpi_irq_hanstrcmpf="drivers/acpistrcmpf">s(rspans="commestr"ng">"Linux" s""class="line" name="L60">  60 * interr12las>1292a href="+code=u32" cf">acpi_in_debu/osl.cmdnt">_osi_linuxf="drivers/acpi/osl.cmdnt">_osi_linuxf">s(1" class="line" name="L58">  5812l3a href="+codLlsedpf (rk_struct sc&&c!f">acpi_irq_hanstrcmpf="drivers/acpistrcmpf">s(rspans="commestr"ng">"!Linux" s""class="line" name="L60">  6012lcessoef="+code=u32" cf">acpi_in_debu/osl.cmdnt">_osi_linuxf="drivers/acpi/osl.cmdnt">_osi_linuxf">s(0" class="line" name="L58">  581295a href="+codLlseclass="line" name="L58">  581296a href="+code=u32" crk_struct s(rk_struct s" class="line" name="L58">  58129" claclass="line" name="L58">  581298essoef="+codrejax_a1 class="line" name="L58">  58 *
12sss>1299a hr}class="line" name="L58">  58 *
130><>130  claclass="line" name="L58">  58 * This l130as>130L52" f">acpi_irq_han__sejapf="drivers/acpi__sejapf">s(rspans="commestr"ng">"/osl.osi=" s" class="line" name="L58">  58 * interr130as>1302a hrclass="line" name="L58">  581303a hr/* enable serializationcto combat AE_ALREADY_EXISTS errors */  70130470" staticdp" cf">acpi_irq_han__inits="drivers/acpi__initf">sess="sref">__acp/osl.serializd_sejapf="drivers/acpi/osl.serializd_sejapf">s(chareef">acpi_irq_hanstrf="drivers/acpistrf">s"class="line" name="L58">  581305ct"  class="line" name="L60">  601306"sref">wait< ="sref">acpi_oprintkf="drivers/acpiprintkf">s(rk_struct __acpPREFIXf="drivers/acpiPREFIX cla"rspans="commestr"ng">"serializd enabled\n"  58130" claclass="line" name="L58">  581308essoef="+codss="sref">__acp/osl.gblhall_methods.serializddf="drivers/acpi/osl.gblhall_methods.serializdd83" e=cf">acpi_in_debuTRUE"drivers/acpi/oTRUEf">s class="line" name="L58">  58 *
130ss>130L70" class="line" name="L70">  70 * ~~~~~~13las>131nllback" clasrejax_a1 class="line" name="L58">  58 *13aas>131L52" }class="line" name="L58">  58 *  This 13las>1312a hrclass="line" name="L58">  58 *  it un13las>13l3a hrf">acpi_irq_han__sejapf="drivers/acpi__sejapf">s(rspans="commestr"ng">"/osl.serializd" s" class="line" name="L58">  58 *  the F13las>131e claclass="line" name="L58">  58 *  (at y13las>1315ct" /* Checkdof resource interference between*  t na e" name and ACPI  70 *13las>1316llba * OperationRegions (SystemIO and System Memory only).  70 *  This 13las>1317llba * IO porte and memory de="creddp" ACPI might be used byethe ACPI subsystem  70 *  but W13las>1318esso * p" arbitrary AML /a>  and cansinterfere with legacy e" name.  70 *  MERCH13las>1319a hr * /osl.enforce_resources= cansb> sejeto:  70 *  GNU G13las>132allba *  70 *13las>132 *las- str"ct (default) (2)  70 *  This 13aas>1322a hr * clas- id= further e" nam try"ng to accessethe resources will not load  70 *  along13las>1323a hr *las- lax="+code=u32" c(1)  70 *  Found13las>132e cla * clas- id= further e" nam try"ng to accessethe resources will load, but you  70 *13las>1325ct"  * clasgejea system message thajesometh"ng might go wrong...  70 * ~~~~~~13las>1326llba *  70 *13las>1327llba * as- nof="+code=u32" c(0)  70 */1328esso * clas- id= ACPI Operation Region resources will not be registered  701329a hr *  70 */  70133  701332a hr#deff="erk_struct   70 *  it un13aas>1333a hr#deff="erk_struct   70133e claclass="line" name="L58">  5813e5ct" staticdunsigneddp" cf">acpi_irq_han/osl.enforce_resourcesf="drivers/acpi/osl.enforce_resources83" e=cf">acpi_in_debuENFORCE_RESOURCES_STRICT"drivers/acpi/oENFORCE_RESOURCES_STRICTllba class="line" name="L58">  58133L77" class="line" name="L77">  771337llbastaticdp" cf">acpi_irq_han__inits="drivers/acpi__initf">sess="sref">__acp/osl.enforce_resources_sejapf="drivers/acpi/osl.enforce_resources_sejapf">s(chareef">acpi_irq_hanstrf="drivers/acpistrf">s"class="line" name="L58">  581338llba class="line" name="L60">  601339a href="+codpf (rk_struct sc==cfk_struct acpi_irq_hanstrf="drivers/acpistrf">sc==cfspans="commestr"ng">'\0'  60wait  58134L52" class="line" name="L52">  521342a href="+codpf (!f">acpi_irq_hanstrcmpf="drivers/acpistrcmpf">s(rspans="commestr"ng">"str"ct" s""class="line" name="L60">  601343a href="+code=u32" cf">acpi_in_debu/osl.enforce_resourcesf="drivers/acpi/osl.enforce_resources83" e=cf">acpi_in_debuENFORCE_RESOURCES_STRICT"drivers/acpi/oENFORCE_RESOURCES_STRICTllba class="line" name="L58">  58 *  the F13aas>134cessoef="+codLlsedpf (!f">acpi_irq_hanstrcmpf="drivers/acpistrcmpf">s(rspans="commestr"ng">"lax" s""class="line" name="L60">  601345ct" class="se=u32" cf">acpi_in_debu/osl.enforce_resourcesf="drivers/acpi/osl.enforce_resources83" e=cf">acpi_in_debuENFORCE_RESOURCES_LAXf="drivers/acpiENFORCE_RESOURCES_LAXllba class="line" name="L58">  581346llback" clasLlsedpf (!f">acpi_irq_hanstrcmpf="drivers/acpistrcmpf">s(rspans="commestr"ng">"no" s""class="line" name="L60">  601347llback" clasf">waitacpi_in_debu/osl.enforce_resourcesf="drivers/acpi/osl.enforce_resources83" e=cf">acpi_in_debuENFORCE_RESOURCES_NOf="drivers/acpiENFORCE_RESOURCES_NOllba class="line" name="L58">  58134L49" class="line" name="L49">  491349a href="+codrejax_a1 class="line" name="L58">  58  58135L52" class="line" name="L52">  5213e2a hrf">acpi_irq_han__sejapf="drivers/acpi__sejapf">s(rspans="commestr"ng">"/osl.enforce_resources=" s" class="line" name="L58">  58135his pclass="line" name="L58">  58135e cla/* Checkdfor resource confl"cts between*ACPI OperationRegions and   t na  701355ct"  * e" name */  701356llbap" cf">acpi_irq_han/osl.check_resource_confl"ctf="drivers/acpi/osl.check_resource_confl"ctf">s(constdstruc cf">acpi_irq_hanresourcef="drivers/acpiresourcea hreef">acpi_irq_hanresf="drivers/acpires83" "class="line" name="L60">  601357llba class="line" name="L60">  601358essoef="+codss="sref">__acp/osl.adr_space_typef="drivers/acpi/osl.adr_space_typef">sess="sref">__acpspace_idf="drivers/acpispace_idllba class="line" name="L58">  581359llback" clas ="sref">acpi_o/osl.sizef="drivers/acpi/osl.sizef">sess="sref">__acplengthf="drivers/acpilengthllba class="line" name="L58">  58acpi_ou8f="drivers/acpiu8f">sess="sref">__acpwarnf="drivers/acpiwarn83" e=c0 class="line" name="L58">  58136acpi_irq_hand *  581362a hrclass="line" name="L58">  5813 3a href="+codpf (rk_struct acpi_in_debuENFORCE_RESOURCES_NOf="drivers/acpiENFORCE_RESOURCES_NOllba"class="line" name="L60">  60136cessoef="+code=u32" crejax_a0 class="line" name="L58">  5813 5ct" class="spf (!(rk_struct  sc&cf">acpi_in_debuIORESOURCE_IOf="drivers/acpiIORESOURCE_IOllba"c&&c!(rk_struct  sc&cf">acpi_in_debuIORESOURCE_MEMf="drivers/acpiIORESOURCE_MEMf">s""class="line" name="L60">  60 *13aas>1366a href="+code=u32" crejax_a0 class="line" name="L58">  58136" claclass="line" name="L58">  581368a href="+codpf (rk_struct  sc&cf">acpi_in_debuIORESOURCE_IOf="drivers/acpiIORESOURCE_IOllba"class="line" name="L58">  581369a href="+code=u32" css="sref">__acpspace_idf="drivers/acpispace_idllbae=cf">acpi_in_debuACPI_ADR_SPACE_SYSTEM_IOf="drivers/acpiACPI_ADR_SPACE_SYSTEM_IOllba class="line" name="L58">  58  5813<acpi_irq_hanspace_idf="drivers/acpispace_idllbae=cf">acpi_in_debuACPI_ADR_SPACE_SYSTEM_MEMORYf="drivers/acpiACPI_ADR_SPACE_SYSTEM_MEMORYllba class="line" name="L58">  581372a hrclass="line" name="L58">  58/* stuff 13las>13<3a href="+codss="sref">__acplengthf="drivers/acpilengthllbae=cf">acpi_in_deburesf="drivers/acpires83" - id=rk_struct acpi_in_deburesf="drivers/acpires83" - id=rk_struct   58137cessoef="+codpf (rk_struct acpi_in_debuENFORCE_RESOURCES_NOf="drivers/acpiENFORCE_RESOURCES_NOllba"class="line" name="L60">  6013<5ct" class="se=u32" css="sref">__acpwarnf="drivers/acpiwarn83" e=c1 class="line" name="L58">  581376"sref">wait< ="sref">acpi_od *acpi_irq_han/osl.check_address_rangef="drivers/acpi/osl.check_address_rangef">s(r">acpi_irq_hanspace_idf="drivers/acpispace_idllba,erk_struct     58137" claclass="line" name="L58">  581378a href="+codpf (rk_struct   601379a href="+code=u32" cpf (rk_struct acpi_in_debuENFORCE_RESOURCES_NOf="drivers/acpiENFORCE_RESOURCES_NOllba"d class="line" name="L60">  60wait acpi_in_debuENFORCE_RESOURCES_LAXf="drivers/acpiENFORCE_RESOURCES_LAXllba"class="line" name="L60">  60138wait< ="sref">acpi_oprintkf="drivers/acpiprintkf">s(rk_struct "ACPI: This confl"ct may"  601382a href="+code=u32" c=u32" cccccccccf">wait< spans="commestr"ng">" cause random problems and system"  601383a href="+code=u32" ccccccccccccccccf">wait< spans="commestr"ng">" instability\n"  58138cessoef="+code=u32" ccccccccc ="sref">acpi_oprintkf="drivers/acpiprintkf">s(rk_struct "ACPI: If an*ACPI e" nam is available"  601385ct" class="se=u32" ccccccccf">wait< spans="commestr"ng">" for this device, you should use it instead of"  601386a href="+code=u32" ce=u32" c">wait< spans="commestr"ng">" the   t na e" nam\n"  581387llback" clasf">wait<}class="line" name="L58">  58 *  but W13aas>1388essoef="+code=u32" cpf (rk_struct acpi_in_debuENFORCE_RESOURCES_STRICT"drivers/acpi/oENFORCE_RESOURCES_STRICTllba"class="line" name="L60">  601389a href="+code=u32" cef="+codrejax_a-f">acpi_in_debuEBUSYf="drivers/acpiEBUSYllba class="line" name="L58">  58/*13las>139aa href="+cod}class="line" name="L58">  58 * This l13las>13l  58 * interr13las>1392a hr}class="line" name="L58">  581393a hrf">acpi_irq_hanEXPORT_SYMBOLf="drivers/acpiEXPORT_SYMBOLf">s(rk_struct s" class="line" name="L58">  58139e claclass="line" name="L58">  581395a hrp" cf">acpi_irq_han/osl.check_regionf="drivers/acpi/osl.check_regionf">s(rk_struct sess="sref">__acpstar f="drivers/acpistar llba,erk_struct sess="sref">__acpnf="drivers/acpinf">s,class="line" name="L58">  581396a href="+code=u32" cccccccconstdchareef">acpi_irq_hancodef="drivers/acpinodellba"class="line" name="L60">  601397llba class="line" name="L60">  601398essoef="+codstruc cf">acpi_irq_hanresourcef="drivers/acpiresourcea hrerk_struct   60 *
13sss>1399a href="+code=u32" c.rk_struct acpi_in_debustar f="drivers/acpistar llba,class="line" name="L60">  60 *
140><>140allback" clasf">wait<.rk_struct acpi_in_debustar f="drivers/acpistar llba +ess="sref">__acpnf="drivers/acpinf">s - 1,class="line" name="L60">  60 * This l140as>140 acpi_in_debucodef="drivers/acpinodellba,class="line" name="L60">  60 * interr140as>1402a href="+code=u32" c.rk_struct sc=cf">acpi_in_debuIORESOURCE_IOf="drivers/acpiIORESOURCE_IOllba,class="line" name="L60">  601403a href="+cod} class="line" name="L58">  58140e claclass="line" name="L58">  581405ct" class="srejax_af">acpi_irq_han/osl.check_resource_confl"ctf="drivers/acpi/osl.check_resource_confl"ctf">s(&pi_os_dpc {resf="drivers/acpires83" " class="line" name="L58">  581406"sre}class="line" name="L58">  58140" claf">acpi_irq_hanEXPORT_SYMBOLf="drivers/acpiEXPORT_SYMBOLf">s(rk_struct s" class="line" name="L58">  58140L49" class="line" name="L49">  49 *
140ss>1409a hr/*  70 * ~~~~~~14las>141allba * Let e" name know whether the resource checks are effect na  70 *14aas>141 */  70 *  This 14las>1412a hrp" cf">acpi_irq_han/osl.resources_are.enforcedf="drivers/acpi/osl.resources_are.enforcedf">s(cont"class="line" name="L58">  58 *  it un14las>141his p class="line" name="L60">  60 *  the F14las>1414ct" class="srejax_af">acpi_irq_han/osl.enforce_resourcesf="drivers/acpi/osl.enforce_resources83" e==cf">acpi_in_debuENFORCE_RESOURCES_STRICT"drivers/acpi/oENFORCE_RESOURCES_STRICTllba class="line" name="L58">  58 *  (at y14las>1415ct" }class="line" name="L58">  58 *14las>1416llba<">acpi_irq_hanEXPORT_SYMBOLf="drivers/acpiEXPORT_SYMBOLf">s(rk_struct s" class="line" name="L58">  58 *  This 14las>141" claclass="line" name="L58">  58 *  but W14las>1418esso/*  70 *  MERCH14las>1419a hr * Deallocate the memory for a spinlock.  70 *  GNU G14las>142allba */  70 *14las>142__acp/osl.os_delete_lockf="drivers/acpi/osl.os_delete_lockf">s(rk_struct    60 *  This 14aas>1422a hr class="line" name="L60">  60 *  along14las>1423a href="+codss="sref">__acpACPI_FREE"drivers/acpi/oACPI_FREEf">s(rk_struct   58 *  Found14las>142e cla}class="line" name="L58">  58 *14las>1425ct" class="line" name="L58">  58 * ~~~~~~14las>1426llba/*  70 *14las>1427llba * Acquire a spinlock.  70 */1428esso *  701429a hr * handle is a pointer to the spinlock_t.  70 */  70143L52" class="line" name="L52">  521432a hrf">acpi_irq_han/osl.cpu_flagsf="drivers/acpi/osl.cpu_flagsa hrerk_struct s(rk_struct    60 *  it un14aas>143his p class="line" name="L60">  60143cessoef="+cod ="sref">acpi_o/osl.cpu_flagsf="drivers/acpi/osl.cpu_flagsa hrerk_struct s class="line" name="L58">  581435essoef="+cod ="sref">acpi_ospin_lock_irqsaves="drivers/acpispin_lock_irqsavef">s(rk_struct  s" class="line" name="L58">  581436a href="+codrejax_af">acpi_irq_hanflagsf="drivers/acpiflagsf">s class="line" name="L58">  581437llba}class="line" name="L58">  58143L49" class="line" name="L49">  49s""class="li, but yous""jbove.  70144 */  701442a hrclass="line" name="L58">  581443a hrcontess="sref">__acp/osl.os_rC42rs/_lockf="drivers/acpi/osl.os_rC42rs/_lockf">s(rk_struct    s"class="line" name="L60">  60 *  the F14aas>144cesso class="line" name="L60">  601445essoef="+cod ="sref">acpi_ospin_unlock_irqrestores="drivers/acpispin_unlock_irqrestoref">s(rk_struct  s" class="line" name="L58">  581446"sre}class="line" name="L58">  58144" claclass="line" name="L58">  58144L49" #ifndefdss="sref">__acpACPI_USE_LOCAL_CACHE"drivers/acpi/oACPI_USE_LOCAL_CACHE claclass="line" name="L58">  58144L70" class="line" name="L70">  70s""class="li, but you  70145 *  701452a hr * FUNCTION:+cod/osl.os_create_cacha  701453a hr *  70145e cla * PARAMETERS:+cclud="+cod- Asciicclud=for the cacha  701455ct"  *              size="+cod- Size=of each cachad objectf"span class="line" name="L70">  701456llba *              depth"+cod- Maximum depth"of the cacha (in objects) &ld=ignored id=r"span class="line" name="L70">  701457llba * asssssssssssscacha +cod- Where the  ewscacha object is rejax_ed  701458esso *  701459a hr * RETURN:+cododstatu#83span class="line" name="L70">  70 *  70146 *lDESCRIPTION:+Createactcacha object  701462a hr *  701463a hr ******************************************************************************/  70146e claclass="line" name="L58">  5814 5ct" rk_struct   58 *14aas>1466llba<">acpi_irq_han/osl.os_create_cachaf="drivers/acpi/osl.os_create_cachas(chareef">acpi_irq_hancodef="drivers/acpinodellba,d ="sref">acpi_oulass="commes/acpiu16llbad ="sref">acpi_osizef="drivers/acpisizef">s,d ="sref">acpi_oulass="commes/acpiu16llbad ="sref">acpi_odepthss="commes/acpidepthllba,erk_struct acpi_odachaf="drivers/acpicachas"class="line" name="L60">  601467llba class="line" name="L60">  601468a href="+codef">acpi_irq_handachaf="drivers/acpicachasc=cf">acpi_in_debukmem.cacha_createf="drivers/acpikmem.cacha_createf">s(rk_struct acpi_osizef="drivers/acpisizef">s,d0,d0,d ="sref">acpi_oNULLf="drivers/acpiNULL83" " class="line" name="L58">  581469a href="+codpf (ef">acpi_irq_handachaf="drivers/acpicachasc==cfk_struct   60wait__acpAE_ERROR"drivers/acpi/oAE_ERRORf">s class="line" name="L58">  5814<  581472a href="+code=u32" crejax_ass="sref">__acpAE_OK"drivers/acpi/oAE_OKf">s class="line" name="L58">  58/* stuff 14las>14<3a hr}class="line" name="L58">  58147e claclass="line" name="L58">  581475ct" /*******************************************************************************  701476llba *  701477llba * FUNCTION:+cod/osl.os_purge_cacha  701478esso *  701479a hr * PARAMETERS:+cCacha +cod="+cod- Handle to cacha object  70 *  70148 *lRETURN:+cododStatu#83span class="line" name="L70">  701482a hr *  701483a hr *lDESCRIPTION:+Frs""jll objects within the requestedccacha.  70148e cla *  701485ct"  ******************************************************************************/  70148L77" class="line" name="L77">  77148" claf">acpi_irq_han/osl.statu#f="drivers/acpi/osl.statu#83" ess="sref">__acp/osl.os_purge_cachaf="drivers/acpi/osl.os_purge_cachas(rk_struct acpi_odachaf="drivers/acpicachas"class="line" name="L60">  60 *  but W14aas>1488llba class="line" name="L60">  601489llback" clas ="sref">acpi_okmem.cacha_shrinkf="drivers/acpikmem.cacha_shrinks(rk_struct s" class="line" name="L58">  58/*14las>149nllback" clasrejax_a(rk_struct s" class="line" name="L58">  58 * This l14las>149L52" }class="line" name="L58">  58 * interr14las>1492a hrclass="line" name="L58">  581493a hr/*******************************************************************************  70149e cla *  701495ct"  * FUNCTION:+cod/osl.os_delete_cacha  701496llba *  701497llba * PARAMETERS:+cCacha +cod="+cod- Handle to cacha object  701498esso *  70 *
14sss>1499a hr * RETURN:+cododStatu#83span class="line" name="L70">  70 *
150><>150allba *  70 * This l150as>150 *lDESCRIPTION:+Frs""jll objects within the requestedccacha and delete the  70 * interr150as>1502a hr * classsssssssscacha object.  701503a hr *  70150e cla ******************************************************************************/  701505ct" class="line" name="L58">  581506llba<">acpi_irq_han/osl.statu#f="drivers/acpi/osl.statu#83" ess="sref">__acp/osl.os_delete_cachaf="drivers/acpi/osl.os_delete_cachas(rk_struct acpi_odachaf="drivers/acpicachas"class="line" name="L60">  601507llba class="line" name="L60">  601508essoef="+codss="sref">__acpkmem.cacha_destroyf="drivers/acpikmem.cacha_destroys(rk_struct s" class="line" name="L58">  58 *
150ss>1509a href="+codrejax_a(rk_struct s" class="line" name="L58">  58 * ~~~~~~15las>151 ct" }class="line" name="L58">  58 *15aas>151L52" class="line" name="L52">  52 *  This 15las>1512a hr/*******************************************************************************  70 *  it un15las>1513a hr *  70 *  the F15las>151e cla * FUNCTION:+cod/osl.os_rC42rs/_object  70 *  (at y15las>1515ct"  *  70 *15las>1516llba * PARAMETERS:+cCacha +cod="- Handle to cacha object  70 *  This 15las>1517llba *              Object cod="- Tha object to be re42rs/d  70 *  but W15las>1518esso *  70 *  MERCH15las>1519a hr * RETURN:+cododNone  70 *  GNU G15las>152allba *  70 *15las>152 *lDESCRIPTION:+aC42rs/acn object to the specifiedccacha.  If cacha is full,  70 *  This 15aas>1522a hr * classsssssssstha object is deleted.  70 *  along15las>1523a hr *  70 *  Found15las>152e cla ******************************************************************************/  70 *15las>1525ct" class="line" name="L58">  58 * ~~~~~~15las>1526llba<">acpi_irq_han/osl.statu#f="drivers/acpi/osl.statu#83" ess="sref">__acp/osl.os_rC42rs/_objectf="drivers/acpi/osl.os_rC42rs/_objects(rk_struct acpi_odachaf="drivers/acpicachas, conteef">acpi_irq_hanobjectf="drivers/acpiobjects"class="line" name="L60">  60 *15las>1527llba class="line" name="L60">  60 */1528essoef="+codss="sref">__acpkmem.cacha_frs"f="drivers/acpikmem.cacha_frs"s(rk_struct s,d ="sref">acpi_oobjectf="drivers/acpiobjects" class="line" name="L58">  581529a href="+codrejax_a(rk_struct s" class="line" name="L58">  58  58153  581532a hrclass="line" name="L58">  58 *  it un15aas>1533a hrf">acpi_irq_han/osl.statu#f="drivers/acpi/osl.statu#83" ess="sref">__acp__inits="drivers/acpi__initf">sess="sref">__acp/osl.os_initializef="drivers/acpi/osl.os_initializes(cont"class="line" name="L58">  58153cesso class="line" name="L60">  601535essoef="+cod ="sref">acpi_o/osl.os_map_generic_addressf="drivers/acpi/osl.os_map_generic_addresss(&pi_os_dpc {/osl.gbl_FADT"drivers/acpi/o/osl.gbl_FADTs.rk_struct s" class="line" name="L58">  581536"sref">wait< ="sref">acpi_o/osl.os_map_generic_addressf="drivers/acpi/osl.os_map_generic_addresss(&pi_os_dpc {/osl.gbl_FADT"drivers/acpi/o/osl.gbl_FADTs.rk_struct s" class="line" name="L58">  581537"sref">wait< ="sref">acpi_o/osl.os_map_generic_addressf="drivers/acpi/osl.os_map_generic_addresss(&pi_os_dpc {/osl.gbl_FADT"drivers/acpi/o/osl.gbl_FADTs.rk_struct s" class="line" name="L58">  581538essoef="+codss="sref">__acp/osl.os_map_generic_addressf="drivers/acpi/osl.os_map_generic_addresss(&pi_os_dpc {/osl.gbl_FADT"drivers/acpi/o/osl.gbl_FADTs.rk_struct s" class="line" name="L58">  58  70__acpAE_OK"drivers/acpi/oAE_OKf">s class="line" name="L58">  58154L52" }class="line" name="L58">  581542a hrclass="line" name="L58">  581543a hrf">acpi_irq_han/osl.statu#f="drivers/acpi/osl.statu#83" ess="sref">__acp__inits="drivers/acpi__initf">sess="sref">__acp/osl.os_initialize1f="drivers/acpi/osl.os_initialize1s(cont"class="line" name="L58">  58 *  the F15aas>154cesso class="line" name="L60">  601545essoef="+cod ="sref">acpi_ok"L60d_wqf="drivers/acpik"L60d_wqsc=cf">acpi_in_debualloc_workqueuef="drivers/acpi/lloc_workqueues(rspans="commestr"ng">"k"L60d"  581546"sref">wait< ="sref">acpi_ok"L60_notify_wqf="drivers/acpik"L60_notify_wqsc=cf">acpi_in_debualloc_workqueuef="drivers/acpi/lloc_workqueues(rspans="commestr"ng">"k"L60_notify"  581547"sref">wait< ="sref">acpi_ok"L60_hotplug_wqf="drivers/acpik"L60_hotplug_wqsc=cf">acpi_in_debualloc_workqueuef="drivers/acpi/lloc_workqueues(rspans="commestr"ng">"k"L60_hotplug"  581548essoef="+codss="sref">__acpBUG_ONf="drivers/acpiBUG_ONs(!f">acpi_irq_hank"L60d_wqf="drivers/acpik"L60d_wqs" class="line" name="L58">  581549llback" clas ="sref">acpi_oBUG_ONf="drivers/acpiBUG_ONs(!f">acpi_irq_hank"L60_notify_wqf="drivers/acpik"L60_notify_wqs" class="line" name="L58">  58acpi_oBUG_ONf="drivers/acpiBUG_ONs(!f">acpi_irq_hank"L60_hotplug_wqf="drivers/acpik"L60_hotplug_wqs" class="line" name="L58">  581551essoef="+codss="sref">__acp/osl.install_interface_handlerf="drivers/acpi/osl.install_interface_handlers(rk_struct s" class="line" name="L58">  581552essoef="+codss="sref">__acp/osl.osi_sejap_latef="drivers/acpi/osl.osi_sejap_lates(" class="line" name="L58">  581553llback" clasrejax_ass="sref">__acpAE_OK"drivers/acpi/oAE_OKf">s class="line" name="L58">  58155e cla}class="line" name="L58">  581555ct" class="line" name="L58">  581556llba<">acpi_irq_han/osl.statu#f="drivers/acpi/osl.statu#83" ess="sref">__acp/osl.os_terminatef="drivers/acpi/osl.os_terminates(cont"class="line" name="L58">  581557llba class="line" name="L60">  601558a href="+codpf (rk_struct s"d class="line" name="L60">  601559a href="+code=u32" css="sref">__acp/osl.os_rCmove_interrupt_handlerf="drivers/acpi/osl.os_rCmove_interrupt_handlers(rk_struct s.rk_struct s,class="line" name="L60">  60wait s" class="line" name="L58">  58156  581562a hrclass="line" name="L58">  5815 3a href="+codss="sref">__acp/osl.os_unmap_generic_addressf="drivers/acpi/osl.os_unmap_generic_addresss(&pi_os_dpc {/osl.gbl_FADT"drivers/acpi/o/osl.gbl_FADTs.rk_struct s" class="line" name="L58">  58156cessoef="+codss="sref">__acp/osl.os_unmap_generic_addressf="drivers/acpi/osl.os_unmap_generic_addresss(&pi_os_dpc {/osl.gbl_FADT"drivers/acpi/o/osl.gbl_FADTs.rk_struct s" class="line" name="L58">  581565essoef="+cod ="sref">acpi_o/osl.os_unmap_generic_addressf="drivers/acpi/osl.os_unmap_generic_addresss(&pi_os_dpc {/osl.gbl_FADT"drivers/acpi/o/osl.gbl_FADTs.rk_struct s" class="line" name="L58">  58 *15aas>1566"sref">wait< ="sref">acpi_o/osl.os_unmap_generic_addressf="drivers/acpi/osl.os_unmap_generic_addresss(&pi_os_dpc {/osl.gbl_FADT"drivers/acpi/o/osl.gbl_FADTs.rk_struct s" class="line" name="L58">  58156" claclass="line" name="L58">  581568essoef="+codss="sref">__acpdestroy_workqueuef="drivers/acpidestroy_workqueues(rk_struct s" class="line" name="L58">  581569llback" clas ="sref">acpi_odestroy_workqueuef="drivers/acpidestroy_workqueues(rk_struct s" class="line" name="L58">  58acpi_odestroy_workqueuef="drivers/acpidestroy_workqueues(rk_struct s" class="line" name="L58">  58157L52" class="line" name="L52">  521572a href="+codrejax_ass="sref">__acpAE_OK"drivers/acpi/oAE_OKf">s class="line" name="L58">  58/* stuff 15las>15<3a hr}class="line" name="L58">  58157e claclass="line" name="L58">  581575ct" rk_struct __acp/osl.os_prepare.sleepf="drivers/acpi/osl.os_prepare.sleeps(rk_struct __acpsleep.statef="drivers/acpisleep.states,d ="sref">acpi_oue <acpi_opm1a_control<s,class="line" name="L60">  601576a href="+code=u32" ce=u32" c">waitacpi_oue <acpi_opm1b_control<s"class="line" name="L58">  581577llba class="line" name="L60">  601578a href="+codp" cf">acpi_irq_hanrc<sc=c0 class="line" name="L58">  581579a href="+codpf (ss="sref">__acp__/osl.os_prepare.sleepf="drivers/acpi__/osl.os_prepare.sleeps"class="line" name="L58">  58waitacpi_irq_hanrc<sc=css="sref">__acp__/osl.os_prepare.sleepf="drivers/acpi__/osl.os_prepare.sleeps(ss="sref">__acpsleep.statef="drivers/acpisleep.states,class="line" name="L58">  58158wait< clasf">waitacpi_irq_hanpm1a_control<s,c ="sref">acpi_opm1b_control<s" class="line" name="L58">  581582a href="+codpf (ss="sref">__acprc<sc&ld= 0"class="line" name="L58">  581583a href="+code=u32" crejax_ass="sref">__acpAE_ERROR"drivers/acpi/oAE_ERRORf">s class="line" name="L58">  58158cessoef="+codLlsedpf (ss="sref">__acprc<sc&gd= 0"class="line" name="L58">  581585ct" class="se=u32" crejax_ass="sref">__acpAE_CTRL_SKIP"drivers/acpi/oAE_CTRL_SKIPf">s class="line" name="L58">  58158L77" class="line" name="L77">  771587llback" clasrejax_ass="sref">__acpAE_OK"drivers/acpi/oAE_OKf">s class="line" name="L58">  58 *  but W15aas>1588llba}class="line" name="L58">  58158L70" class="line" name="L70">  70/*15las>159nllbacontess="sref">__acp/osl.os_set_prepare.sleepf="drivers/acpi/osl.os_set_prepare.sleeps(p" c(ef">acpi_irq_hanfunc<s"(rk_struct __acpsleep.statef="drivers/acpisleep.states,class="line" name="L70">  70 * This l15las>159wait ="sref">acpi_oue <acpi_opm1a_ctrl<s,d ="sref">acpi_oue <acpi_opm1b_ctrl<s)"class="line" name="L58">  58 * interr15las>1592a hr class="line" name="L60">  601593a href="+codss="sref">__acp__/osl.os_prepare.sleepf="drivers/acpi__/osl.os_prepare.sleepsc=css="sref">__acpfunc<s class="line" name="L58">  58159e cla}class="line" name="L58">  581595ct" 
Tha original LXR software bystha lass="linhttp://sourceforge.net/projects/lxr">LXR com#unitys,dthis experi#L22al nameion byslass="linmailto:lxr@refux.no">lxr@refux.nos.
lxr.refux.no kindly hostedcbyslass="linhttp://www.redpill-refpro.no">Redpill Lefpro ASs,dprovider"of Lefuxcconsulting and operations services since 1995.