linux/drivers/acpi/pci_root.c
<<
.1" "v3/spaval "v3/formal "v3a .1" "v href="../linux+v3.8v1o/drivers/acpi/pci_root.c">.1" "v3img src="../.static/gfx/right.png" alt=">>">.13/spaval.13spav class="lxr_search">.1" .1" "v3input typ> hidden" nam> navtarget" > ">.1" "v3input typ> text" nam> search" id search">.1" "v3butt20"typ> submit">Search.1" "vPrefsl "v3/a>.13/spaval" "v v3/dival" "v v3form acon v="ajax+*" method="post" onsubmit="return false;">.13input typ> hidden" nam> ajax_lookup" id ajax_lookup" > ">." "v v3/formal." "v v3div class="headingbott2m">l 3div id file_contents"a
 L1">v v13/a>3spav class="comment">/*3/spaval
 L2">v v23/a>3spav class="comment"> *  pci_root.c - ACPI PCI Root Bridge Driver ($Revisn v: 40 $)3/spaval
 L3">v v33/a>3spav class="comment"> *3/spaval
 L4">v v43/a>3spav class="comment"> *  Copyright (C) 2001, 2002 Andy Grover <andrew.grover@intel.com>3/spaval
 L5">v v53/a>3spav class="comment"> *  Copyright (C) 2001, 2002 Paul Diefenbaugh <paul.s.diefenbaugh@intel.com>3/spaval
 L6">v v63/a>3spav class="comment"> *3/spaval
 L7">v v73/a>3spav class="comment"> * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~3/spaval
 L8">v v83/a>3spav class="comment"> *3/spaval
 L9">v v93/a>3spav class="comment"> *  This program is free software; you cav redistribute it and/or modify3/spaval
 L10">v 3spav class="comment"> *  it under the terms of the GNU General Public License as published by3/spaval
 L11">v 113/a>3spav class="comment"> *  the Free Software Foundaon v; either vers.20"2 of the License, or (at3/spaval
 L12">v 123/a>3spav class="comment"> *  your tion v) any later vers.20.3/spaval
 L13">v 133/a>3spav class="comment"> *3/spaval
 L14">v 143/a>3spav class="comment"> *  This program is distributed in the hope that it will be useful, but3/spaval
 L15">v 153/a>3spav class="comment"> *  WITHOUT ANY WARRANTY; without even the implied warranty of3/spaval
 L16">v 163/a>3spav class="comment"> *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU3/spaval
 L17">v 173/a>3spav class="comment"> *  General Public License for more details.3/spaval
 L18">v 183/a>3spav class="comment"> *3/spaval
 L19">v 193/a>3spav class="comment"> *  You should have received a copy of the GNU General Public License along3/spaval
 L20">v 2opta>3spav class="comment"> *  with this program; if not, write to the Free Software Foundaon v, Inc.,3/spaval
 L21">v 213/a>3spav class="comment"> *  59 Temple Place, Suite 330, Bost v, MA 02111-1307 USA.3/spaval
 L22">v 223/a>3spav class="comment"> *3/spaval
 L23">v 233/a>3spav class="comment"> * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~3/spaval
 L24">v 243/a>3spav class="comment"> */3/spaval
 L25">v 253/a>l
 L26">v 263/a>#include <linux/kernel.h3/a>>l
 L27">v 273/a>#include <linux/module.h3/a>>l
 L28">v 283/a>#include <linux/init.h3/a>>l
 L29">v 293/a>#include <linux/typ>s.h3/a>>l
 L30">v 303/a>#include <linux/mutex.h3/a>>l
 L31">v 313/a>#include <linux/pm.h3/a>>l
 L32">v 323/a>#include <linux/pm_runtime.h3/a>>l
 L33">v 333/a>#include <linux/pci.h3/a>>l
 L34">v 343/a>#include <linux/pci-acpi.h3/a>>l
 L35">v 353/a>#include <linux/pci-aspm.h3/a>>l
 L36">v 363/a>#include <linux/acpi.h3/a>>l
 L37">v 373/a>#include <linux/slab.h3/a>>l
 L38">v 383/a>#include <acpi/acpi_bus.h3/a>>l
 L39">v 393/a>#include <acpi/acpi_drivers.h3/a>>l
 L40">v 403/a>#include <acpi/apei.h3/a>>l
 L41">v 413/a>l
 L42">v 423/a>#definev3a href="+code=PREFIX" class="sref">PREFIX3/a> 3spav class="string">"ACPI: "3/spaval
 L43">v 433/a>l
 L44">v 443/a>#definev3a href="+code=_COMPONENT" class="sref">_COMPONENT3/a>              3a href="+code=ACPI_PCI_COMPONENT" class="sref">ACPI_PCI_COMPONENT3/a>l
 L45">v 453/a>3a href="+code=ACPI_MODULE_NAME" class="sref">ACPI_MODULE_NAME3/a>(3spav class="string">"pci_root"3/spava);l
 L46">v 463/a>#definev3a href="+code=ACPI_PCI_ROOT_CLASS" class="sref">ACPI_PCI_ROOT_CLASS3/a>             3spav class="string">"pci_bridge"3/spaval
 L47">v 473/a>#definev3a href="+code=ACPI_PCI_ROOT_DEVICE_NAME" class="sref">ACPI_PCI_ROOT_DEVICE_NAME3/a>       3spav class="string">"PCI Root Bridge"3/spaval
 L48">v 483/a>static intv3a href="+code=acpi_pci_root_add" class="sref">acpi_pci_root_add3/a>(structv3a href="+code=acpi_device" class="sref">acpi_device3/a> *3a href="+code=device" class="sref">device3/a>);l
 L49">v 493/a>static intv3a href="+code=acpi_pci_root_remove" class="sref">acpi_pci_root_remove3/a>(structv3a href="+code=acpi_device" class="sref">acpi_device3/a> *3a href="+code=device" class="sref">device3/a>, intv3a href="+code=typ>" class="sref">typ>3/a>);l
 L50">v 503/a>static intv3a href="+code=acpi_pci_root_start" class="sref">acpi_pci_root_start3/a>(structv3a href="+code=acpi_device" class="sref">acpi_device3/a> *3a href="+code=device" class="sref">device3/a>);l
 L51">v 513/a>l
 L52">v 523/a>#definev3a href="+code=ACPI_PCIE_REQ_SUPPORT" class="sref">ACPI_PCIE_REQ_SUPPORT3/a> (3a href="+code=OSC_EXT_PCI_CONFIG_SUPPORT" class="sref">OSC_EXT_PCI_CONFIG_SUPPORT3/a> \l
 L53">v 533/a>                                |v3a href="+code=OSC_ACTIVE_STATE_PWR_SUPPORT" class="sref">OSC_ACTIVE_STATE_PWR_SUPPORT3/a> \l
 L54">v 543/a>                                |v3a href="+code=OSC_CLOCK_PWR_CAPABILITY_SUPPORT" class="sref">OSC_CLOCK_PWR_CAPABILITY_SUPPORT3/a> \l
 L55">v 553/a>                                |v3a href="+code=OSC_MSI_SUPPORT" class="sref">OSC_MSI_SUPPORT3/a>)l
 L56">v 563/a>l
 L57">v 573/a>static const structv3a href="+code=acpi_device_id" class="sref">acpi_device_id3/a> 3a href="+code=root_device_ids" class="sref">root_device_ids3/a>[] = {l
 L58">v 583/a>        {3spav class="string">"PNP0A03"3/spava, 0},l
 L59">v 593/a>        {3spav class="string">""3/spava, 0},l
 L60">v 603/a>};l
 L61">v 613/a>3a href="+code=MODULE_DEVICE_TABLE" class="sref">MODULE_DEVICE_TABLE3/a>(3a href="+code=acpi" class="sref">acpi3/a>, 3a href="+code=root_device_ids" class="sref">root_device_ids3/a>);l
 L62">v 623/a>l
 L63">v 633/a>static structv3a href="+code=acpi_driver" class="sref">acpi_driver3/a> 3a href="+code=acpi_pci_root_driver" class="sref">acpi_pci_root_driver3/a> = {l
 L64">v 643/a>        .3a href="+code=nam>" class="sref">nam>3/a> = 3spav class="string">"pci_root"3/spava,l
 L65">v 653/a>        .3a href="+code=class" class="sref">class3/a> = 3a href="+code=ACPI_PCI_ROOT_CLASS" class="sref">ACPI_PCI_ROOT_CLASS3/a>,l
 L66">v 663/a>        .3a href="+code=ids" class="sref">ids3/a> = 3a href="+code=root_device_ids" class="sref">root_device_ids3/a>,l
 L67">v 673/a>        .3a href="+code=ops" class="sref">ops3/a> = {l
 L68">v 683/a>                .3a href="+code=add" class="sref">add3/a> = 3a href="+code=acpi_pci_root_add" class="sref">acpi_pci_root_add3/a>,l
 L69">v 693/a>                .3a href="+code=remove" class="sref">remove3/a> = 3a href="+code=acpi_pci_root_remove" class="sref">acpi_pci_root_remove3/a>,l
 L70">v 703/a>                .3a href="+code=start" class="sref">start3/a> = 3a href="+code=acpi_pci_root_start" class="sref">acpi_pci_root_start3/a>,l
 L71">v 713/a>                },l
 L72">v 723/a>};l
 L73">v 733/a>l
 L74">v 743/a>3spav class="comment">/* Lock to protectvboth acpi_pci_roots and acpi_pci_drivers lists */3/spaval
 L75">v 753/a>static 3a href="+code=DEFINE_MUTEX" class="sref">DEFINE_MUTEX3/a>(3a href="+code=acpi_pci_root_lock" class="sref">acpi_pci_root_lock3/a>);l
 L76">v 763/a>static 3a href="+code=LIST_HEAD" class="sref">LIST_HEAD3/a>(3a href="+code=acpi_pci_roots" class="sref">acpi_pci_roots3/a>);l
 L77">v 773/a>static 3a href="+code=LIST_HEAD" class="sref">LIST_HEAD3/a>(3a href="+code=acpi_pci_drivers" class="sref">acpi_pci_drivers3/a>);l
 L78">v 783/a>l
 L79">v 793/a>static 3a href="+code=DEFINE_MUTEX" class="sref">DEFINE_MUTEX3/a>(3a href="+code=osc_lock" class="sref">osc_lock3/a>);l
 L80">v 803/a>l
 L81">v 813/a>intv3a href="+code=acpi_pci_register_driver" class="sref">acpi_pci_register_driver3/a>(structv3a href="+code=acpi_pci_driver" class="sref">acpi_pci_driver3/a> *3a href="+code=driver" class="sref">driver3/a>)l
 L82">v 823/a>{l
 L83">v 833/a>        intv3a href="+code=n" class="sref">n3/a> = 0;l
 L84">v 843/a>        structv3a href="+code=acpi_pci_root" class="sref">acpi_pci_root3/a> *3a href="+code=root" class="sref">root3/a>;l
 L85">v 853/a>l
 L86">v 863/a>        3a href="+code=mutex_lock" class="sref">mutex_lock3/a>(&3a href="+code=acpi_pci_root_lock" class="sref">acpi_pci_root_lock3/a>);l
 L87">v 873/a>        3a href="+code=list_add_tail" class="sref">list_add_tail3/a>(&3a href="+code=driver" class="sref">driver3/a>->3a href="+code=node" class="sref">node3/a>, &3a href="+code=acpi_pci_drivers" class="sref">acpi_pci_drivers3/a>);l
 L88">v 883/a>        if (3a href="+code=driver" class="sref">driver3/a>->3a href="+code=add" class="sref">add3/a>)l
 L89">v 893/a>                3a href="+code=list_for_each_entry" class="sref">list_for_each_entry3/a>(3a href="+code=root" class="sref">root3/a>, &3a href="+code=acpi_pci_roots" class="sref">acpi_pci_roots3/a>, 3a href="+code=node" class="sref">node3/a>) {l
 L90">v 903/a>                        3a href="+code=driver" class="sref">driver3/a>->3a href="+code=add" class="sref">add3/a>(3a href="+code=root" class="sref">root3/a>);l
 L91">v 913/a>                        3a href="+code=n" class="sref">n3/a>++;l
 L92">v 923/a>                }l
 L93">v 933/a>        3a href="+code=mutex_unlock" class="sref">mutex_unlock3/a>(&3a href="+code=acpi_pci_root_lock" class="sref">acpi_pci_root_lock3/a>);l
 L94">v 943/a>l
 L95">v 953/a>        return 3a href="+code=n" class="sref">n3/a>;l
 L96">v 963/a>}l
 L97">v 973/a>3a href="+code=EXPORT_SYMBOL" class="sref">EXPORT_SYMBOL3/a>(3a href="+code=acpi_pci_register_driver" class="sref">acpi_pci_register_driver3/a>);l
 L98">v 983/a>l
 L99">v 993/a>voidv3a href="+code=acpi_pci_unregister_driver" class="sref">acpi_pci_unregister_driver3/a>(structv3a href="+code=acpi_pci_driver" class="sref">acpi_pci_driver3/a> *3a href="+code=driver" class="sref">driver3/a>)l
 L100">v1003/a>{l
 L101">v1013/a>        structv3a href="+code=acpi_pci_root" class="sref">acpi_pci_root3/a> *3a href="+code=root" class="sref">root3/a>;l
 L102">v1023/a>l
 L103">v1033/a>        3a href="+code=mutex_lock" class="sref">mutex_lock3/a>(&3a href="+code=acpi_pci_root_lock" class="sref">acpi_pci_root_lock3/a>);l
 L104">v1043/a>        3a href="+code=list_del" class="sref">list_del3/a>(&3a href="+code=driver" class="sref">driver3/a>->3a href="+code=node" class="sref">node3/a>);l
 L105">v1053/a>        if (3a href="+code=driver" class="sref">driver3/a>->3a href="+code=remove" class="sref">remove3/a>)l
 L106">v1063/a>                3a href="+code=list_for_each_entry" class="sref">list_for_each_entry3/a>(3a href="+code=root" class="sref">root3/a>, &3a href="+code=acpi_pci_roots" class="sref">acpi_pci_roots3/a>, 3a href="+code=node" class="sref">node3/a>)l
 L107">v1073/a>                        3a href="+code=driver" class="sref">driver3/a>->3a href="+code=remove" class="sref">remove3/a>(3a href="+code=root" class="sref">root3/a>);l
 L108">v1083/a>        3a href="+code=mutex_unlock" class="sref">mutex_unlock3/a>(&3a href="+code=acpi_pci_root_lock" class="sref">acpi_pci_root_lock3/a>);l
 L109">v1093/a>}l
 L110">v13a href="+code=EXPORT_SYMBOL" class="sref">EXPORT_SYMBOL3/a>(3a href="+code=acpi_pci_unregister_driver" class="sref">acpi_pci_unregister_driver3/a>);l
 L111">v1113/a>l
 L112">v1123/a>3a href="+code=acpi_handle" class="sref">acpi_handle3/a> 3a href="+code=acpi_get_pci_rootbridge_handle" class="sref">acpi_get_pci_rootbridge_handle3/a>(unsigned intv3a href="+code=seg" class="sref">seg3/a>, unsigned intv3a href="+code=bus" class="sref">bus3/a>)l
 L113">v1133/a>{l
 L114">v1143/a>        structv3a href="+code=acpi_pci_root" class="sref">acpi_pci_root3/a> *3a href="+code=root" class="sref">root3/a>;l
 L115">v1153/a>        3a href="+code=acpi_handle" class="sref">acpi_handle3/a> 3a href="+code=handle" class="sref">handle3/a> = 3a href="+code=NULL" class="sref">NULL3/a>;l
 L116">v1163/a>        l
 L117">v1173/a>        3a href="+code=mutex_lock" class="sref">mutex_lock3/a>(&3a href="+code=acpi_pci_root_lock" class="sref">acpi_pci_root_lock3/a>);l
 L118">v1183/a>        3a href="+code=list_for_each_entry" class="sref">list_for_each_entry3/a>(3a href="+code=root" class="sref">root3/a>, &3a href="+code=acpi_pci_roots" class="sref">acpi_pci_roots3/a>, 3a href="+code=node" class="sref">node3/a>)l
 L119">v1193/a>                if ((3a href="+code=root" class="sref">root3/a>->3a href="+code=segment" class="sref">segment3/a> == (3a href="+code=u16" class="sref">u163/a>)v3a href="+code=seg" class="sref">seg3/a>) &&l
 L120">v1203/a>                    (3a href="+code=root" class="sref">root3/a>->3a href="+code=secondary" class="sref">secondary3/a>.3a href="+code=start" class="sref">start3/a> == (3a href="+code=u16" class="sref">u163/a>)v3a href="+code=bus" class="sref">bus3/a>)) {l
 L121">v1213/a>                        3a href="+code=handle" class="sref">handle3/a> = 3a href="+code=root" class="sref">root3/a>->3a href="+code=device" class="sref">device3/a>->3a href="+code=handle" class="sref">handle3/a>;l
 L122">v1223/a>                        break;l
 L123">v1233/a>                }l
 L124">v1243/a>        3a href="+code=mutex_unlock" class="sref">mutex_unlock3/a>(&3a href="+code=acpi_pci_root_lock" class="sref">acpi_pci_root_lock3/a>);l
 L125">v1253/a>        return 3a href="+code=handle" class="sref">handle3/a>;l
 L126">v1263/a>}l
 L127">v1273/a>l
 L128">v1283/a>3a href="+code=EXPORT_SYMBOL_GPL" class="sref">EXPORT_SYMBOL_GPL3/a>(3a href="+code=acpi_get_pci_rootbridge_handle" class="sref">acpi_get_pci_rootbridge_handle3/a>);l
 L129">v1293/a>l
 L130">v13opta>3spav class="comment">/**3/spaval
 L131">v1313/a>3spav class="comment"> * acpi_is_root_bridge - determinevwhether av ACPI CA node is a PCI root bridge3/spaval
 L132">v1323/a>3spav class="comment"> * @handle - the ACPI CA node in quest.20.3/spaval
 L133">v1333/a>3spav class="comment"> *3/spaval
 L134">v1343/a>3spav class="comment"> * Note: we could make this API take a structvacpi_device * instead, but3/spaval
 L135">v1353/a>3spav class="comment"> * for now, it's more convenient to operate on av acpi_handle.3/spaval
 L136">v1363/a>3spav class="comment"> */3/spaval
 L137">v1373/a>intv3a href="+code=acpi_is_root_bridge" class="sref">acpi_is_root_bridge3/a>(3a href="+code=acpi_handle" class="sref">acpi_handle3/a> 3a href="+code=handle" class="sref">handle3/a>)l
 L138">v1383/a>{l
 L139">v1393/a>        intv3a href="+code=ret" class="sref">ret3/a>;l
 L140">v1403/a>        structv3a href="+code=acpi_device" class="sref">acpi_device3/a> *3a href="+code=device" class="sref">device3/a>;l
 L141">v1413/a>l
 L142">v1423/a>        3a href="+code=ret" class="sref">ret3/a> = 3a href="+code=acpi_bus_get_device" class="sref">acpi_bus_get_device3/a>(3a href="+code=handle" class="sref">handle3/a>, &3a href="+code=device" class="sref">device3/a>);l
 L143">v1433/a>        if (3a href="+code=ret" class="sref">ret3/a>)l
 L144">v1443/a>                return 0;l
 L145">v1453/a>l
 L146">v1463/a>        3a href="+code=ret" class="sref">ret3/a> = 3a href="+code=acpi_match_device_ids" class="sref">acpi_match_device_ids3/a>(3a href="+code=device" class="sref">device3/a>, 3a href="+code=root_device_ids" class="sref">root_device_ids3/a>);l
 L147">v1473/a>        if (3a href="+code=ret" class="sref">ret3/a>)l
 L148">v1483/a>                return 0;l
 L149">v1493/a>        elsel
 L150">v1503/a>                return 1;l
 L151">v1513/a>}l
 L152">v1523/a>3a href="+code=EXPORT_SYMBOL_GPL" class="sref">EXPORT_SYMBOL_GPL3/a>(3a href="+code=acpi_is_root_bridge" class="sref">acpi_is_root_bridge3/a>);l
 L153">v1533/a>l
 L154">v1543/a>static 3a href="+code=acpi_status" class="sref">acpi_status3/a>l
 L155">v1553/a>3a href="+code=get_root_bridge_busnr_callback" class="sref">get_root_bridge_busnr_callback3/a>(structv3a href="+code=acpi_resource" class="sref">acpi_resource3/a> *3a href="+code=resource" class="sref">resource3/a>, voidv*3a href="+code=data" class="sref">data3/a>)l
 L156">v1563/a>{l
 L157">v1573/a>        structv3a href="+code=resource" class="sref">resource3/a> *3a href="+code=res" class="sref">res3/a> = 3a href="+code=data" class="sref">data3/a>;l
 L158">v1583/a>        structv3a href="+code=acpi_resource_address64" class="sref">acpi_resource_address643/a> 3a href="+code=address" class="sref">address3/a>;l
 L159">v1593/a>l
 L160">v1603/a>        if (3a href="+code=resource" class="sref">resource3/a>->3a href="+code=typ>" class="sref">typ>3/a> != 3a href="+code=ACPI_RESOURCE_TYPE_ADDRESS16" class="sref">ACPI_RESOURCE_TYPE_ADDRESS163/a> &&l
 L161">v1613/a>            3a href="+code=resource" class="sref">resource3/a>->3a href="+code=typ>" class="sref">typ>3/a> != 3a href="+code=ACPI_RESOURCE_TYPE_ADDRESS32" class="sref">ACPI_RESOURCE_TYPE_ADDRESS323/a> &&l
 L162">v1623/a>            3a href="+code=resource" class="sref">resource3/a>->3a href="+code=typ>" class="sref">typ>3/a> != 3a href="+code=ACPI_RESOURCE_TYPE_ADDRESS64" class="sref">ACPI_RESOURCE_TYPE_ADDRESS643/a>)l
 L163">v1633/a>                return 3a href="+code=AE_OK" class="sref">AE_OK3/a>;l
 L164">v1643/a>l
 L165">v1653/a>        3a href="+code=acpi_resource_to_address64" class="sref">acpi_resource_to_address643/a>(3a href="+code=resource" class="sref">resource3/a>, &3a href="+code=address" class="sref">address3/a>);l
 L166">v1663/a>        if ((3a href="+code=address" class="sref">address3/a>.3a href="+code=address_length" class="sref">address_length3/a> > 0) &&l
 L167">v1673/a>            (3a href="+code=address" class="sref">address3/a>.3a href="+code=resource_typ>" class="sref">resource_typ>3/a> == 3a href="+code=ACPI_BUS_NUMBER_RANGE" class="sref">ACPI_BUS_NUMBER_RANGE3/a>)) {l
 L168">v1683/a>                3a href="+code=res" class="sref">res3/a>->3a href="+code=start" class="sref">start3/a> = 3a href="+code=address" class="sref">address3/a>.3a href="+code=minimum" class="sref">minimum3/a>;l
 L169">v1693/a>                3a href="+code=res" class="sref">res3/a>->3a href="+code=end" class="sref">end3/a> = 3a href="+code=address" class="sref">address3/a>.3a href="+code=minimum" class="sref">minimum3/a> + 3a href="+code=address" class="sref">address3/a>.3a href="+code=address_length" class="sref">address_length3/a> - 1;l
 L170">v1703/a>        }l
 L171">v1713/a>l
 L172">v1723/a>        return 3a href="+code=AE_OK" class="sref">AE_OK3/a>;l
 L173">v1733/a>}l
 L174">v1743/a>l
 L175">v1753/a>static 3a href="+code=acpi_status" class="sref">acpi_status3/a>v3a href="+code=try_get_root_bridge_busnr" class="sref">try_get_root_bridge_busnr3/a>(3a href="+code=acpi_handle" class="sref">acpi_handle3/a> 3a href="+code=handle" class="sref">handle3/a>,l
 L176">v1763/a>                                             structv3a href="+code=resource" class="sref">resource3/a> *3a href="+code=res" class="sref">res3/a>)l
 L177">v1773/a>{l
 L178">v1783/a>        3a href="+code=acpi_status" class="sref">acpi_status3/a>v3a href="+code=status" class="sref">status3/a>;l
 L179">v1793/a>l
 L180">v1803/a>        3a href="+code=res" class="sref">res3/a>->3a href="+code=start" class="sref">start3/a> = -1;l
 L181">v1813/a>        3a href="+code=status" class="sref">status3/a> =l
 L182">v1823/a>            3a href="+code=acpi_walk_resources" class="sref">acpi_walk_resources3/a>(3a href="+code=handle" class="sref">handle3/a>, 3a href="+code=METHOD_NAME__CRS" class="sref">METHOD_NAME__CRS3/a>,l
 L183">v1833/a>                                3a href="+code=get_root_bridge_busnr_callback" class="sref">get_root_bridge_busnr_callback3/a>, 3a href="+code=res" class="sref">res3/a>);l
 L184">v1843/a>        if (3a href="+code=ACPI_FAILURE" class="sref">ACPI_FAILURE3/a>(3a href="+code=status" class="sref">status3/a>))l
 L185">v1853/a>                return 3a href="+code=status" class="sref">status3/a>;l
 L186">v1863/a>        if (3a href="+code=res" class="sref">res3/a>->3a href="+code=start" class="sref">start3/a> == -1)l
 L187">v1873/a>                return 3a href="+code=AE_ERROR" class="sref">AE_ERROR3/a>;l
 L188">v1883/a>        return 3a href="+code=AE_OK" class="sref">AE_OK3/a>;l
 L189">v1893/a>}l
 L190">v1903/a>l
 L191">v1913/a>static voidv3a href="+code=acpi_pci_bridge_scan" class="sref">acpi_pci_bridge_scan3/a>(structv3a href="+code=acpi_device" class="sref">acpi_device3/a> *3a href="+code=device" class="sref">device3/a>)l
 L192">v1923/a>{l
 L193">v1933/a>        intv3a href="+code=status" class="sref">status3/a>;l
 L194">v1943/a>        structv3a href="+code=acpi_device" class="sref">acpi_device3/a> *3a href="+code=child" class="sref">child3/a> = 3a href="+code=NULL" class="sref">NULL3/a>;l
 L195">v1953/a>l
 L196">v1963/a>        if (3a href="+code=device" class="sref">device3/a>->3a href="+code=flags" class="sref">flags3/a>.3a href="+code=bus_address" class="sref">bus_address3/a>)l
 L197">v1973/a>                if (3a href="+code=device" class="sref">device3/a>->3a href="+code=parent" class="sref">parent3/a> && 3a href="+code=device" class="sref">device3/a>->3a href="+code=parent" class="sref">parent3/a>->3a href="+code=ops" class="sref">ops3/a>.3a href="+code=bind" class="sref">bind3/a>) {l
 L198">v1983/a>                        3a href="+code=status" class="sref">status3/a> = 3a href="+code=device" class="sref">device3/a>->3a href="+code=parent" class="sref">parent3/a>->3a href="+code=ops" class="sref">ops3/a>.3a href="+code=bind" class="sref">bind3/a>(3a href="+code=device" class="sref">device3/a>);l
 L199">v1993/a>                        if (!3a href="+code=status" class="sref">status3/a>) {l
 L200">v2003/a>                                3a href="+code=list_for_each_entry" class="sref">list_for_each_entry3/a>(3a href="+code=child" class="sref">child3/a>, &3a href="+code=device" class="sref">device3/a>->3a href="+code=children" class="sref">children3/a>, 3a href="+code=node" class="sref">node3/a>)l
 L201">v2013/a>                                        3a href="+code=acpi_pci_bridge_scan" class="sref">acpi_pci_bridge_scan3/a>(3a href="+code=child" class="sref">child3/a>);l
 L202">v2023/a>                        }l
 L203">v2033/a>                }l
 L204">v2043/a>}l
 L205">v2053/a>l
 L206">v2063/a>static 3a href="+code=u8" class="sref">u83/a>v3a href="+code=pci_osc_uuid_str" class="sref">pci_osc_uuid_str3/a>[] = 3spav class="string">"33DB4D5B-1FF7-401C-9657-7441C03DD766"3/spava;l
 L207">v2073/a>l
 L208">v2083/a>static 3a href="+code=acpi_status" class="sref">acpi_status3/a>v3a href="+code=acpi_pci_run_osc" class="sref">acpi_pci_run_osc3/a>(3a href="+code=acpi_handle" class="sref">acpi_handle3/a> 3a href="+code=handle" class="sref">handle3/a>,l
 L209">v2093/a>                                    const 3a href="+code=u32" class="sref">u323/a> *3a href="+code=capbuf" class="sref">capbuf3/a>, 3a href="+code=u32" class="sref">u323/a> *3a href="+code=retval" class="sref">retval3/a>)l
 L210">v2103/a>{l
 L211">v2113/a>        structv3a href="+code=acpi_osc_context" class="sref">acpi_osc_context3/a> 3a href="+code=context" class="sref">context3/a> = {l
 L212">v2123/a>                .3a href="+code=uuid_str" class="sref">uuid_str3/a> = 3a href="+code=pci_osc_uuid_str" class="sref">pci_osc_uuid_str3/a>,l
 L213">v2133/a>                .3a href="+code=rev" class="sref">rev3/a> = 1,l
 L214">v2143/a>                .3a href="+code=cap" class="sref">cap3/a>.3a href="+code=length" class="sref">length3/a> = 12,l
 L215">v2153/a>                .3a href="+code=cap" class="sref">cap3/a>.3a href="+code=pointer" class="sref">pointer3/a> = (voidv*)3a href="+code=capbuf" class="sref">capbuf3/a>,l
 L216">v2163/a>        };l
 L217">v2173/a>        3a href="+code=acpi_status" class="sref">acpi_status3/a>v3a href="+code=status" class="sref">status3/a>;l
 L218">v2183/a>l
 L219">v2193/a>        3a href="+code=status" class="sref">status3/a> = 3a href="+code=acpi_run_osc" class="sref">acpi_run_osc3/a>(3a href="+code=handle" class="sref">handle3/a>, &3a href="+code=context" class="sref">context3/a>);l
 L220">v2203/a>        if (3a href="+code=ACPI_SUCCESS" class="sref">ACPI_SUCCESS3/a>(3a href="+code=status" class="sref">status3/a>)) {l
 L221">v2213/a>                *3a href="+code=retval" class="sref">retval3/a> = *((3a href="+code=u32" class="sref">u323/a> *)(3a href="+code=context" class="sref">context3/a>.3a href="+code=ret" class="sref">ret3/a>.3a href="+code=pointer" class="sref">pointer3/a> + 8));l
 L222">v2223/a>                3a href="+code=kfree" class="sref">kfree3/a>(3a href="+code=context" class="sref">context3/a>.3a href="+code=ret" class="sref">ret3/a>.3a href="+code=pointer" class="sref">pointer3/a>);l
 L223">v2233/a>        }l
 L224">v2243/a>        return 3a href="+code=status" class="sref">status3/a>;l
 L225">v2253/a>}l
 L226">v2263/a>l
 L227">v2273/a>static 3a href="+code=acpi_status" class="sref">acpi_status3/a>v3a href="+code=acpi_pci_query_osc" class="sref">acpi_pci_query_osc3/a>(structv3a href="+code=acpi_pci_root" class="sref">acpi_pci_root3/a> *3a href="+code=root" class="sref">root3/a>,l
 L228">v2283/a>                                        3a href="+code=u32" class="sref">u323/a> 3a href="+code=support" class="sref">support3/a>,l
 L229">v2293/a>                                        3a href="+code=u32" class="sref">u323/a> *3a href="+code=control" class="sref">control3/a>)l
 L230">v2303/a>{l
 L231">v2313/a>        3a href="+code=acpi_status" class="sref">acpi_status3/a>v3a href="+code=status" class="sref">status3/a>;l
 L232">v2323/a>        3a href="+code=u32" class="sref">u323/a> 3a href="+code=result" class="sref">result3/a>, 3a href="+code=capbuf" class="sref">capbuf3/a>[3];l
 L233">v2333/a>l
 L234">v2343/a>        3a href="+code=support" class="sref">support3/a> &= 3a href="+code=OSC_PCI_SUPPORT_MASKS" class="sref">OSC_PCI_SUPPORT_MASKS3/a>;l
 L235">v2353/a>        3a href="+code=support" class="sref">support3/a> |= 3a href="+code=root" class="sref">root3/a>->3a href="+code=osc_support_set" class="sref">osc_support_set3/a>;l
 L236">v2363/a>l
 L237">v2373/a>        3a href="+code=capbuf" class="sref">capbuf3/a>[3a href="+code=OSC_QUERY_TYPE" class="sref">OSC_QUERY_TYPE3/a>] = 3a href="+code=OSC_QUERY_ENABLE" class="sref">OSC_QUERY_ENABLE3/a>;l
 L238">v2383/a>        3a href="+code=capbuf" class="sref">capbuf3/a>[3a href="+code=OSC_SUPPORT_TYPE" class="sref">OSC_SUPPORT_TYPE3/a>] = 3a href="+code=support" class="sref">support3/a>;l
 L239">v2393/a>        if (3a href="+code=control" class="sref">control3/a>) {l
 L240">v2403/a>                *3a href="+code=control" class="sref">control3/a> &= 3a href="+code=OSC_PCI_CONTROL_MASKS" class="sref">OSC_PCI_CONTROL_MASKS3/a>;l
 L241">v2413/a>                3a href="+code=capbuf" class="sref">capbuf3/a>[3a href="+code=OSC_CONTROL_TYPE" class="sref">OSC_CONTROL_TYPE3/a>] = *3a href="+code=control" class="sref">control3/a> | 3a href="+code=root" class="sref">root3/a>->3a href="+code=osc_control_set" class="sref">osc_control_set3/a>;l
 L242">v2423/a>        } else {l
 L243">v2433/a>                3spav class="comment">/* Run _OSC query for all possible controls. */3/spaval
 L244">v2443/a>                3a href="+code=capbuf" class="sref">capbuf3/a>[3a href="+code=OSC_CONTROL_TYPE" class="sref">OSC_CONTROL_TYPE3/a>] = 3a href="+code=OSC_PCI_CONTROL_MASKS" class="sref">OSC_PCI_CONTROL_MASKS3/a>;l
 L245">v2453/a>        }l
 L246">v2463/a>l
 L247">v2473/a>        3a href="+code=status" class="sref">status3/a> = 3a href="+code=acpi_pci_run_osc" class="sref">acpi_pci_run_osc3/a>(3a href="+code=root" class="sref">root3/a>->3a href="+code=device" class="sref">device3/a>->3a href="+code=handle" class="sref">handle3/a>, 3a href="+code=capbuf" class="sref">capbuf3/a>, &3a href="+code=result" class="sref">result3/a>);l
 L248">v2483/a>        if (3a href="+code=ACPI_SUCCESS" class="sref">ACPI_SUCCESS3/a>(3a href="+code=status" class="sref">status3/a>)) {l
 L249">v2493/a>                3a href="+code=root" class="sref">root3/a>->3a href="+code=osc_support_set" class="sref">osc_support_set3/a> = 3a href="+code=support" class="sref">support3/a>;l
 L250">v2503/a>                if (3a href="+code=control" class="sref">control3/a>)l
 L251">v2513/a>                        *3a href="+code=control" class="sref">control3/a> = 3a href="+code=result" class="sref">result3/a>;l
 L252">v2523/a>        }l
 L253">v2533/a>        return 3a href="+code=status" class="sref">status3/a>;l
 L254">v2543/a>}l
 L255">v2553/a>l
 L256">v2563/a>static 3a href="+code=acpi_status" class="sref">acpi_status3/a>v3a href="+code=acpi_pci_osc_support" class="sref">acpi_pci_osc_support3/a>(structv3a href="+code=acpi_pci_root" class="sref">acpi_pci_root3/a> *3a href="+code=root" class="sref">root3/a>, 3a href="+code=u32" class="sref">u323/a> 3a href="+code=flags" class="sref">flags3/a>)l
 L257">v2573/a>{l
 L258">v2583/a>        3a href="+code=acpi_status" class="sref">acpi_status3/a>v3a href="+code=status" class="sref">status3/a>;l
 L259">v2593/a>        3a href="+code=acpi_handle" class="sref">acpi_handle3/a> 3a href="+code=tmp" class="sref">tmp3/a>;l
 L260">v2603/a>l
 L261">v2613/a>        3a href="+code=status" class="sref">status3/a> = 3a href="+code=acpi_get_handle" class="sref">acpi_get_handle3/a>(3a href="+code=root" class="sref">root3/a>->3a href="+code=device" class="sref">device3/a>->3a href="+code=handle" class="sref">handle3/a>, 3spav class="string">"_OSC"3/spava, &3a href="+code=tmp" class="sref">tmp3/a>);l
 L262">v2623/a>        if (3a href="+code=ACPI_FAILURE" class="sref">ACPI_FAILURE3/a>(3a href="+code=status" class="sref">status3/a>))l
 L263">v2633/a>                return 3a href="+code=status" class="sref">status3/a>;l
 L264">v2643/a>        3a href="+code=mutex_lock" class="sref">mutex_lock3/a>(&3a href="+code=osc_lock" class="sref">osc_lock3/a>);l
 L265">v2653/a>        3a href="+code=status" class="sref">status3/a> = 3a href="+code=acpi_pci_query_osc" class="sref">acpi_pci_query_osc3/a>(3a href="+code=root" class="sref">root3/a>, 3a href="+code=flags" class="sref">flags3/a>, 3a href="+code=NULL" class="sref">NULL3/a>);l
 L266">v2663/a>        3a href="+code=mutex_unlock" class="sref">mutex_unlock3/a>(&3a href="+code=osc_lock" class="sref">osc_lock3/a>);l
 L267">v2673/a>        return 3a href="+code=status" class="sref">status3/a>;l
 L268">v2683/a>}l
 L269">v2693/a>l
 L270">v2703/a>structv3a href="+code=acpi_pci_root" class="sref">acpi_pci_root3/a> *3a href="+code=acpi_pci_find_root" class="sref">acpi_pci_find_root3/a>(3a href="+code=acpi_handle" class="sref">acpi_handle3/a> 3a href="+code=handle" class="sref">handle3/a>)l
 L271">v2713/a>{l
 L272">v2723/a>        structv3a href="+code=acpi_pci_root" class="sref">acpi_pci_root3/a> *3a href="+code=root" class="sref">root3/a>;l
 L273">v2733/a>        structv3a href="+code=acpi_device" class="sref">acpi_device3/a> *3a href="+code=device" class="sref">device3/a>;l
 L274">v2743/a>l
 L275">v2753/a>        if (3a href="+code=acpi_bus_get_device" class="sref">acpi_bus_get_device3/a>(3a href="+code=handle" class="sref">handle3/a>, &3a href="+code=device" class="sref">device3/a>) ||l
 L276">v2763/a>            3a href="+code=acpi_match_device_ids" class="sref">acpi_match_device_ids3/a>(3a href="+code=device" class="sref">device3/a>, 3a href="+code=root_device_ids" class="sref">root_device_ids3/a>))l
 L277">v2773/a>                return 3a href="+code=NULL" class="sref">NULL3/a>;l
 L278">v2783/a>l
 L279">v2793/a>        3a href="+code=root" class="sref">root3/a> = 3a href="+code=acpi_driver_data" class="sref">acpi_driver_data3/a>(3a href="+code=device" class="sref">device3/a>);l
 L280">v2803/a>l
 L281">v2813/a>        return 3a href="+code=root" class="sref">root3/a>;l
 L282">v2823/a>}l
 L283">v2833/a>3a href="+code=EXPORT_SYMBOL_GPL" class="sref">EXPORT_SYMBOL_GPL3/a>(3a href="+code=acpi_pci_find_root" class="sref">acpi_pci_find_root3/a>);l
 L284">v2843/a>l
 L285">v2853/a>structv3a href="+code=acpi_handle_node" class="sref">acpi_handle_node3/a> {l
 L286">v2863/a>        structv3a href="+code=list_head" class="sref">list_head3/a> 3a href="+code=node" class="sref">node3/a>;l
 L287">v2873/a>        3a href="+code=acpi_handle" class="sref">acpi_handle3/a> 3a href="+code=handle" class="sref">handle3/a>;l
 L288">v2883/a>};l
 L289">v2893/a>l
 L290">v29opta>3spav class="comment">/**3/spaval
 L291">v2913/a>3spav class="comment"> * acpi_get_pci_dev - convert ACPI CA handle to structvpci_dev3/spaval
 L292">v2923/a>3spav class="comment"> * @handle: the handle in quest.203/spaval
 L293">v2933/a>3spav class="comment"> *3/spaval
 L294">v2943/a>3spav class="comment"> * Given av ACPI CA handle, the desired PCI device is located in the3/spaval
 L295">v2953/a>3spav class="comment"> * list of PCI devices.3/spaval
 L296">v2963/a>3spav class="comment"> *3/spaval
 L297">v2973/a>3spav class="comment"> * If the device is found, its reference count is increased and this3/spaval
 L298">v2983/a>3spav class="comment"> * funct.20 returns a pointer to its data structure.  The caller must3/spaval
 L299">v2993/a>3spav class="comment"> * decrement the reference count by callingvpci_dev_put().3/spaval
 L300">v30opta>3spav class="comment"> * If no device is found, %NULL is returned.3/spaval
 L301">v3013/a>3spav class="comment"> */3/spaval
 L302">v3023/a>structv3a href="+code=pci_dev" class="sref">pci_dev3/a> *3a href="+code=acpi_get_pci_dev" class="sref">acpi_get_pci_dev3/a>(3a href="+code=acpi_handle" class="sref">acpi_handle3/a> 3a href="+code=handle" class="sref">handle3/a>)l
 L303">v3033/a>{l
 L304">v3043/a>        intv3a href="+code=dev" class="sref">dev3/a>, 3a href="+code=fn" class="sref">fn3/a>;l
 L305">v3053/a>        unsigned longvlongv3a href="+code=adr" class="sref">adr3/a>;l
 L306">v3063/a>        3a href="+code=acpi_status" class="sref">acpi_status3/a>v3a href="+code=status" class="sref">status3/a>;l
 L307">v3073/a>        3a href="+code=acpi_handle" class="sref">acpi_handle3/a> 3a href="+code=phandle" class="sref">phandle3/a>;l
 L308">v3083/a>        structv3a href="+code=pci_bus" class="sref">pci_bus3/a> *3a href="+code=pbus" class="sref">pbus3/a>;l
 L309">v3093/a>        structv3a href="+code=pci_dev" class="sref">pci_dev3/a> *3a href="+code=pdev" class="sref">pdev3/a> = 3a href="+code=NULL" class="sref">NULL3/a>;l
 L310">v3103/a>        structv3a href="+code=acpi_handle_node" class="sref">acpi_handle_node3/a> *3a href="+code=node" class="sref">node3/a>, *3a href="+code=tmp" class="sref">tmp3/a>;l
 L311">v3113/a>        structv3a href="+code=acpi_pci_root" class="sref">acpi_pci_root3/a> *3a href="+code=root" class="sref">root3/a>;l
 L312">v3123/a>        3a href="+code=LIST_HEAD" class="sref">LIST_HEAD3/a>(3a href="+code=device_list" class="sref">device_list3/a>);l
 L313">v3133/a>l
 L314">v3143/a>        3spav class="comment">/*3/spaval
 L315">v3153/a>3spav class="comment">         * Walk up the ACPI CA nam>space until we reach a PCI root bridge.3/spaval
 L316">v3163/a>3spav class="comment">         */3/spaval
 L317">v3173/a>        3a href="+code=phandle" class="sref">phandle3/a> = 3a href="+code=handle" class="sref">handle3/a>;l
 L318">v3183/a>        while (!3a href="+code=acpi_is_root_bridge" class="sref">acpi_is_root_bridge3/a>(3a href="+code=phandle" class="sref">phandle3/a>)) {l
 L319">v3193/a>                3a href="+code=node" class="sref">node3/a> = 3a href="+code=kzalloc" class="sref">kzalloc3/a>(sizeof(structv3a href="+code=acpi_handle_node" class="sref">acpi_handle_node3/a>), 3a href="+code=GFP_KERNEL" class="sref">GFP_KERNEL3/a>);l
 L320">v3203/a>                if (!3a href="+code=node" class="sref">node3/a>)l
 L321">v3213/a>                        goto 3a href="+code=out" class="sref">out3/a>;l
 L322">v3223/a>l
 L323">v3233/a>                3a href="+code=INIT_LIST_HEAD" class="sref">INIT_LIST_HEAD3/a>(&3a href="+code=node" class="sref">node3/a>->3a href="+code=node" class="sref">node3/a>);l
 L324">v3243/a>                3a href="+code=node" class="sref">node3/a>->3a href="+code=handle" class="sref">handle3/a> = 3a href="+code=phandle" class="sref">phandle3/a>;l
 L325">v3253/a>                3a href="+code=list_add" class="sref">list_add3/a>(&3a href="+code=node" class="sref">node3/a>->3a href="+code=node" class="sref">node3/a>, &3a href="+code=device_list" class="sref">device_list3/a>);l
 L326">v3263/a>l
 L327">v3273/a>                3a href="+code=status" class="sref">status3/a> = 3a href="+code=acpi_get_parent" class="sref">acpi_get_parent3/a>(3a href="+code=phandle" class="sref">phandle3/a>, &3a href="+code=phandle" class="sref">phandle3/a>);l
 L328">v3283/a>                if (3a href="+code=ACPI_FAILURE" class="sref">ACPI_FAILURE3/a>(3a href="+code=status" class="sref">status3/a>))l
 L329">v3293/a>                        goto 3a href="+code=out" class="sref">out3/a>;l
 L330">v3303/a>        }l
 L331">v3313/a>l
 L332">v3323/a>        3a href="+code=root" class="sref">root3/a> = 3a href="+code=acpi_pci_find_root" class="sref">acpi_pci_find_root3/a>(3a href="+code=phandle" class="sref">phandle3/a>);l
 L333">v3333/a>        if (!3a href="+code=root" class="sref">root3/a>)l
 L334">v3343/a>                goto 3a href="+code=out" class="sref">out3/a>;l
 L335">v3353/a>l
 L336">v3363/a>        3a href="+code=pbus" class="sref">pbus3/a> = 3a href="+code=root" class="sref">root3/a>->3a href="+code=bus" class="sref">bus3/a>;l
 L337">v3373/a>l
 L338">v3383/a>        3spav class="comment">/*3/spaval
 L339">v3393/a>3spav class="comment">         * Now, walk back down the PCI device tree until we return to our3/spaval
 L340">v34opta>3spav class="comment">         * original handle. Assumes that everythingvbetween the PCI root3/spaval
 L341">v3413/a>3spav class="comment">         * bridge and the device we're lookingvfor mustvbe a P2P bridge.3/spaval
 L342">v3423/a>3spav class="comment">         */3/spaval
 L343">v3433/a>        3a href="+code=list_for_each_entry" class="sref">list_for_each_entry3/a>(3a href="+code=node" class="sref">node3/a>, &3a href="+code=device_list" class="sref">device_list3/a>, 3a href="+code=node" class="sref">node3/a>) {l
 L344">v3443/a>                3a href="+code=acpi_handle" class="sref">acpi_handle3/a> 3a href="+code=hnd" class="sref">hnd3/a> = 3a href="+code=node" class="sref">node3/a>->3a href="+code=handle" class="sref">handle3/a>;l
 L345">v3453/a>                3a href="+code=status" class="sref">status3/a> = 3a href="+code=acpi_evaluate_integer" class="sref">acpi_evaluate_integer3/a>(3a href="+code=hnd" class="sref">hnd3/a>, 3spav class="string">"_ADR"3/spava, 3a href="+code=NULL" class="sref">NULL3/a>, &3a href="+code=adr" class="sref">adr3/a>);l
 L346">v3463/a>                if (3a href="+code=ACPI_FAILURE" class="sref">ACPI_FAILURE3/a>(3a href="+code=status" class="sref">status3/a>))l
 L347">v3473/a>                        goto 3a href="+code=out" class="sref">out3/a>;l
 L348">v3483/a>                3a href="+code=dev" class="sref">dev3/a> = (3a href="+code=adr" class="sref">adr3/a> >> 16) & 0xffff;l
 L349">v3493/a>                3a href="+code=fn" class="sref">fn3/a>  = 3a href="+code=adr" class="sref">adr3/a> & 0xffff;l
 L350">v3503/a>l
 L351">v3513/a>                3a href="+code=pdev" class="sref">pdev3/a> = 3a href="+code=pci_get_slot" class="sref">pci_get_slot3/a>(3a href="+code=pbus" class="sref">pbus3/a>, 3a href="+code=PCI_DEVFN" class="sref">PCI_DEVFN3/a>(3a href="+code=dev" class="sref">dev3/a>, 3a href="+code=fn" class="sref">fn3/a>));l
 L352">v3523/a>                if (!3a href="+code=pdev" class="sref">pdev3/a> || 3a href="+code=hnd" class="sref">hnd3/a> == 3a href="+code=handle" class="sref">handle3/a>)l
 L353">v3533/a>                        break;l
 L354">v3543/a>l
 L355">v3553/a>                3a href="+code=pbus" class="sref">pbus3/a> = 3a href="+code=pdev" class="sref">pdev3/a>->3a href="+code=subordinate" class="sref">subordinate3/a>;l
 L356">v3563/a>                3a href="+code=pci_dev_put" class="sref">pci_dev_put3/a>(3a href="+code=pdev" class="sref">pdev3/a>);l
 L357">v3573/a>l
 L358">v3583/a>                3spav class="comment">/*3/spaval
 L359">v3593/a>3spav class="comment">                 * This funct.20 mayvbe called for a non-PCI device that has a3/spaval
 L360">v36opta>3spav class="comment">                 * PCI parent (eg. a disk under a PCI SATA controller).  In that3/spaval
 L361">v3613/a>3spav class="comment">                 * case pdev->subordinate willvbe NULL for the parent.3/spaval
 L362">v3623/a>3spav class="comment">                 */3/spaval
 L363">v3633/a>                if (!3a href="+code=pbus" class="sref">pbus3/a>) {l
 L364">v3643/a>                        3a href="+code=dev_dbg" class="sref">dev_dbg3/a>(&3a href="+code=pdev" class="sref">pdev3/a>->3a href="+code=dev" class="sref">dev3/a>, 3spav class="string">"Not a PCI-to-PCI bridge\n"3/spava);l
 L365">v3653/a>                        3a href="+code=pdev" class="sref">pdev3/a> = 3a href="+code=NULL" class="sref">NULL3/a>;l
 L366">v3663/a>                        break;l
 L367">v3673/a>                }l
 L368">v3683/a>        }l
 L369">v3693/a>3a href="+code=out" class="sref">out3/a>:l
 L370">v3703/a>        3a href="+code=list_for_each_entry_safe" class="sref">list_for_each_entry_safe3/a>(3a href="+code=node" class="sref">node3/a>, 3a href="+code=tmp" class="sref">tmp3/a>, &3a href="+code=device_list" class="sref">device_list3/a>, 3a href="+code=node" class="sref">node3/a>)l
 L371">v3713/a>                3a href="+code=kfree" class="sref">kfree3/a>(3a href="+code=node" class="sref">node3/a>);l
 L372">v3723/a>l
 L373">v3733/a>        return 3a href="+code=pdev" class="sref">pdev3/a>;l
 L374">v3743/a>}l
 L375">v3753/a>3a href="+code=EXPORT_SYMBOL_GPL" class="sref">EXPORT_SYMBOL_GPL3/a>(3a href="+code=acpi_get_pci_dev" class="sref">acpi_get_pci_dev3/a>);l
 L376">v3763/a>l
 L377">v3773/a>3spav class="comment">/**3/spaval
 L378">v3783/a>3spav class="comment"> * acpi_pci_osc_control_set - Request control of PCI root _OSC features.3/spaval
 L379">v3793/a>3spav class="comment"> * @handle: ACPI handle of a PCI root bridge (or PCIe Root Complex).3/spaval
 L380">v38opta>3spav class="comment"> * @mask: Mask of _OSC bits to request control of, place to store control mask.3/spaval
 L381">v3813/a>3spav class="comment"> * @req: Mask of _OSC bits the control of is essential to the caller.3/spaval
 L382">v3823/a>3spav class="comment"> *3/spaval
 L383">v3833/a>3spav class="comment"> * Run _OSC query for @mask and if that is successful, compare the returned3/spaval
 L384">v3843/a>3spav class="comment"> * mask of control bits with @req.  If all of the @req bits are set in the3/spaval
 L385">v3853/a>3spav class="comment"> * returned mask, run _OSC request for it.3/spaval
 L386">v3863/a>3spav class="comment"> *3/spaval
 L387">v3873/a>3spav class="comment"> * The variable at the @mask address mayvbe modified regardless of whether or3/spaval
 L388">v3883/a>3spav class="comment"> * not the funct.20 returns success.  On success it willvcontain the mask of3/spaval
 L389">v3893/a>3spav class="comment"> * _OSC bits the BIOS has granted control of, but its contents are meaningless3/spaval
 L390">v39opta>3spav class="comment"> * on failure.3/spaval
 L391">v3913/a>3spav class="comment"> **/3/spaval
 L392">v3923/a>3a href="+code=acpi_status" class="sref">acpi_status3/a>v3a href="+code=acpi_pci_osc_control_set" class="sref">acpi_pci_osc_control_set3/a>(3a href="+code=acpi_handle" class="sref">acpi_handle3/a> 3a href="+code=handle" class="sref">handle3/a>, 3a href="+code=u32" class="sref">u323/a> *3a href="+code=mask" class="sref">mask3/a>, 3a href="+code=u32" class="sref">u323/a> 3a href="+code=req" class="sref">req3/a>)l
 L393">v3933/a>{l
 L394">v3943/a>        structv3a href="+code=acpi_pci_root" class="sref">acpi_pci_root3/a> *3a href="+code=root" class="sref">root3/a>;l
 L395">v3953/a>        3a href="+code=acpi_status" class="sref">acpi_status3/a>v3a href="+code=status" class="sref">status3/a>;l
 L396">v3963/a>        3a href="+code=u32" class="sref">u323/a> 3a href="+code=ctrl" class="sref">ctrl3/a>, 3a href="+code=capbuf" class="sref">capbuf3/a>[3];l
 L397">v3973/a>        3a href="+code=acpi_handle" class="sref">acpi_handle3/a> 3a href="+code=tmp" class="sref">tmp3/a>;l
 L398">v3983/a>l
 L399">v3993/a>        if (!3a href="+code=mask" class="sref">mask3/a>)l
 L400">v4003/a>                return 3a href="+code=AE_BAD_PARAMETER" class="sref">AE_BAD_PARAMETER3/a>;l
 L401">v4013/a>l
 L402">v4023/a>        3a href="+code=ctrl" class="sref">ctrl3/a> = *3a href="+code=mask" class="sref">mask3/a> & 3a href="+code=OSC_PCI_CONTROL_MASKS" class="sref">OSC_PCI_CONTROL_MASKS3/a>;l
 L403">v4033/a>        if ((3a href="+code=ctrl" class="sref">ctrl3/a> & 3a href="+code=req" class="sref">req3/a>) != 3a href="+code=req" class="sref">req3/a>)l
 L404">v4043/a>                return 3a href="+code=AE_TYPE" class="sref">AE_TYPE3/a>;l
 L405">v4053/a>l
 L406">v4063/a>        3a href="+code=root" class="sref">root3/a> = 3a href="+code=acpi_pci_find_root" class="sref">acpi_pci_find_root3/a>(3a href="+code=handle" class="sref">handle3/a>);l
 L407">v4073/a>        if (!3a href="+code=root" class="sref">root3/a>)l
 L408">v4083/a>                return 3a href="+code=AE_NOT_EXIST" class="sref">AE_NOT_EXIST3/a>;l
 L409">v4093/a>l
 L410">v4103/a>        3a href="+code=status" class="sref">status3/a> = 3a href="+code=acpi_get_handle" class="sref">acpi_get_handle3/a>(3a href="+code=handle" class="sref">handle3/a>, 3spav class="string">"_OSC"3/spava, &3a href="+code=tmp" class="sref">tmp3/a>);l
 L411">v4113/a>        if (3a href="+code=ACPI_FAILURE" class="sref">ACPI_FAILURE3/a>(3a href="+code=status" class="sref">status3/a>))l
 L412">v4123/a>                return 3a href="+code=status" class="sref">status3/a>;l
 L413">v4133/a>l
 L414">v4143/a>        3a href="+code=mutex_lock" class="sref">mutex_lock3/a>(&3a href="+code=osc_lock" class="sref">osc_lock3/a>);l
 L415">v4153/a>l
 L416">v4163/a>        *3a href="+code=mask" class="sref">mask3/a> = 3a href="+code=ctrl" class="sref">ctrl3/a> | 3a href="+code=root" class="sref">root3/a>->3a href="+code=osc_control_set" class="sref">osc_control_set3/a>;l
 L417">v4173/a>        3spav class="comment">/* No need to evaluate _OSC if the control was already granted. */3/spaval
 L418">v4183/a>        if ((3a href="+code=root" class="sref">root3/a>->3a href="+code=osc_control_set" class="sref">osc_control_set3/a> & 3a href="+code=ctrl" class="sref">ctrl3/a>) == 3a href="+code=ctrl" class="sref">ctrl3/a>)l
 L419">v4193/a>                goto 3a href="+code=out" class="sref">out3/a>;l
 L420">v4203/a>l
 L421">v4213/a>        3spav class="comment">/* Need to check the available controls bits before requestingvthem. */3/spaval
 L422">v4223/a>        while (*3a href="+code=mask" class="sref">mask3/a>) {l
 L423">v4233/a>                3a href="+code=status" class="sref">status3/a> = 3a href="+code=acpi_pci_query_osc" class="sref">acpi_pci_query_osc3/a>(3a href="+code=root" class="sref">root3/a>, 3a href="+code=root" class="sref">root3/a>->3a href="+code=osc_support_set" class="sref">osc_support_set3/a>, 3a href="+code=mask" class="sref">mask3/a>);l
 L424">v4243/a>                if (3a href="+code=ACPI_FAILURE" class="sref">ACPI_FAILURE3/a>(3a href="+code=status" class="sref">status3/a>))l
 L425">v4253/a>                        goto 3a href="+code=out" class="sref">out3/a>;l
 L426">v4263/a>                if (3a href="+code=ctrl" class="sref">ctrl3/a> == *3a href="+code=mask" class="sref">mask3/a>)l
 L427">v4273/a>                        break;l
 L428">v4283/a>                3a href="+code=ctrl" class="sref">ctrl3/a> = *3a href="+code=mask" class="sref">mask3/a>;l
 L429">v4293/a>        }l
 L430">v4303/a>l
 L431">v4313/a>        if ((3a href="+code=ctrl" class="sref">ctrl3/a> & 3a href="+code=req" class="sref">req3/a>) != 3a href="+code=req" class="sref">req3/a>) {l
 L432">v4323/a>                3a href="+code=status" class="sref">status3/a> = 3a href="+code=AE_SUPPORT" class="sref">AE_SUPPORT3/a>;l
 L433">v4333/a>                goto 3a href="+code=out" class="sref">out3/a>;l
 L434">v4343/a>        }l
 L435">v4353/a>l
 L436">v4363/a>        3a href="+code=capbuf" class="sref">capbuf3/a>[3a href="+code=OSC_QUERY_TYPE" class="sref">OSC_QUERY_TYPE3/a>] = 0;l
 L437">v4373/a>        3a href="+code=capbuf" class="sref">capbuf3/a>[3a href="+code=OSC_SUPPORT_TYPE" class="sref">OSC_SUPPORT_TYPE3/a>] = 3a href="+code=root" class="sref">root3/a>->3a href="+code=osc_support_set" class="sref">osc_support_set3/a>;l
 L438">v4383/a>        3a href="+code=capbuf" class="sref">capbuf3/a>[3a href="+code=OSC_CONTROL_TYPE" class="sref">OSC_CONTROL_TYPE3/a>] = 3a href="+code=ctrl" class="sref">ctrl3/a>;l
 L439">v4393/a>        3a href="+code=status" class="sref">status3/a> = 3a href="+code=acpi_pci_run_osc" class="sref">acpi_pci_run_osc3/a>(3a href="+code=handle" class="sref">handle3/a>, 3a href="+code=capbuf" class="sref">capbuf3/a>, 3a href="+code=mask" class="sref">mask3/a>);l
 L440">v4403/a>        if (3a href="+code=ACPI_SUCCESS" class="sref">ACPI_SUCCESS3/a>(3a href="+code=status" class="sref">status3/a>))l
 L441">v4413/a>                3a href="+code=root" class="sref">root3/a>->3a href="+code=osc_control_set" class="sref">osc_control_set3/a> = *3a href="+code=mask" class="sref">mask3/a>;l
 L442">v4423/a>3a href="+code=out" class="sref">out3/a>:l
 L443">v4433/a>        3a href="+code=mutex_unlock" class="sref">mutex_unlock3/a>(&3a href="+code=osc_lock" class="sref">osc_lock3/a>);l
 L444">v4443/a>        return 3a href="+code=status" class="sref">status3/a>;l
 L445">v4453/a>}l
 L446">v4463/a>3a href="+code=EXPORT_SYMBOL" class="sref">EXPORT_SYMBOL3/a>(3a href="+code=acpi_pci_osc_control_set" class="sref">acpi_pci_osc_control_set3/a>);l
 L447">v4473/a>l
 L448">v4483/a>static intv3a href="+code=acpi_pci_root_add" class="sref">acpi_pci_root_add3/a>(structv3a href="+code=acpi_device" class="sref">acpi_device3/a> *3a href="+code=device" class="sref">device3/a>)l
 L449">v4493/a>{l
 L450">v4503/a>        unsigned longvlongv3a href="+code=segment" class="sref">segment3/a>, 3a href="+code=bus" class="sref">bus3/a>;l
 L451">v4513/a>        3a href="+code=acpi_status" class="sref">acpi_status3/a>v3a href="+code=status" class="sref">status3/a>;l
 L452">v4523/a>        intv3a href="+code=result" class="sref">result3/a>;l
 L453">v4533/a>        structv3a href="+code=acpi_pci_root" class="sref">acpi_pci_root3/a> *3a href="+code=root" class="sref">root3/a>;l
 L354">v3543/a43/a>l45     3a href="+code=mutex_lodle" class="sref">acpi_handle3/a> 3a href="+code=handle" class="sref">handle3/a>, 3a href="drivers/acpi/pci_root.c#L395" id
4F445" class="line" nam>
 L355">v3543/a> 4              a href="+code=acpi_device" class="sref">acpi_device3/a> *3a href="+code=device" chil="sref">acpi_pcichil= href="drivers/acpi/pci_root.c#L395" id
4F446" class="line" nam>
 L356">v3543/a> 45     3a href="+code=u32" class="sref">u323/a> 3a href="+code=ctrl" clflag="sref">status3/flag= href="+code=bus" clasase_flag="sref">status3/sase_flag= href="drivers/acpi/pci_root.c#L395" id
4F447" class="line" nam>
 L357">v3543/a>l4a href="drivers/acpi/pci_root.c#L358" id
4L358" cla4s="line" nam>
 L358">v3543/a> 45     3a href="+code=capbuf" ass="sref">root3/a> = 3a href="+code=acpi_pci class="sref">kzalloc3/a>(sizeof(structv3a href="+code=acpi_handle_n" class="sref">acpi_pci_root3/a> *3a hreef="+code=GFP_KERNEL" class="sref">GFP_KERNEL3/a>);l
 L359">v3543/a>345     if (!3a href="+code=mask" class="sref">root3/a>)l
 L360">v364pta>346             return 3a href=-"+code=EXPORT_SYNOMEM"sref">EXPORT_SYNOMEM href="drivers/acpi/pci_root.c#L395" id
4L361" cla4s="line" nam>
 L361">v3643/a>346 href="drivers/acpi/pci_root.c#L402" id
 L362" cla4s="line" nam>
 L362">v3643/a>346     3a href="+code=ctrl" cl class="sref">segment3/a>, 3a hre href="drivers/acpi/pci_root.c#L437" id
 L363" cla4s="line" nam>
 L363">v3643/a> 46     3a href="+code=mutex_unclass="sref">status3/a> = 3a href="+code=acpi_evaluate_integer" class="sref">acpi_evaluate_integer3/a>(3a href="+code=hnd" claclass="sref">device3/a>)lhandle3/a>;lhandle3/METHOD_NAME__SEG href="+code=GFP_KERNass="sref">NULL3/a>, &3a="drivers/acpi/pci_root.c#L437" id
 LN" class4s="line" nam>
 L364">v3643/a> 4                      3a href================href="+code=osc_lock class="sref">segment3/a>, 3a hreef="drivers/acpi/pci_root.c#L320" id
4L365" cla4s="line" nam>
 L365">v3643/a> 4              ref="+code=ACPI_FAILURE" class="sref">ACPI_FAILURE3/a>(3a href="+code=status" class="sref">status3/a>))lstatus3/a> = 3a hreef="+code=req" claXIST3/aFOUN="sref">INIT_LISXIST3/aFOUN=
 L366">v3643/a> 4                      "+code=req" clapr/a>="sref">osc_lockpr/a>=href="+code=status" a>);_ER="sref">AE_BAD_Pa>);_ER=href="+code=ctrl" clPREFIX"sref">AE_BAD_PPREFIXhref="ss="string">"_OSC&quocanlookite _OSC if tSEG3/spava);l
 L367">v3643/a> 4              }lresult3/a>;lEXPORT_SYNODEV href="drivers/acpi/pci_root.c#L395" id
4L358" cla4s="line" nam>
 L368">v3643/a> 46             3a href=href="+code=out" claes="sref">hnd3/a> en= href="drivers/acpi/pci_root.c#L395" id
4L369" cla4s="line" nam>
 L369">v3643/a>346     }l
 L370">v3743/a> 47 href="drivers/acpi/pci_root.c#L431" id
 L371" cla4s="line" nam>
 L371">v3743/a> 47     3spav class="comment">/* Need to C avai_CRS firstsiredn _BBNl of tno _BBN, defal
 L372">v3743/a>l47     3a href="+code=root" class="sref">root3/a> = 3a hrhref="+code=subordinaecondas="sref">list_foraecondas=a hr."+code=ctrl" clflag="sref">status3/flag= hreef="+code=acpi_evaIORESOURCE_BU="sref">ACPI_SUCIORESOURCE_BU= href="drivers/acpi/pci_root.c#L395" id
4L373" cla4s="line" nam>
 L373">v3743/a> 47     3a href="+code=mutex_unclass="sref">status3/a> = 3a href="+code=acpi_eva3/a>le3/3/a>(or PCI *3an="sref">acpi_eva3/a>le3/3/a>(or PCI *3an=href="+code=hnd" claclass="sref">device3/a>)lhandle3/a>;lroot3/a> = 3a hrhref="+code=subordinaecondas="sref">list_foraecondas=a href="drivers/acpi/pci_root.c#L365" id
4L374" cla4s="line" nam>
 L374">v3743/a>}474            ref="+code=ACPI_FAILURE" class="sref">ACPI_FAILURE3/a>(3a href="+code=status" class="sref">status3/a>))l
 L375">v3743/a>347             3a href="ss="comment">/*3/spaval
 L376">v3743/a>l47av class="comment">         */3/spavvvvvvvvv* We evalubothilabla>)rtthat en=@req bit PCI&queam *3a rangl
 L377">v3743/a>34pav class="comment">/**3/spa */3/spavvvvvvvvv*  th/a>(rpa hi_CBA (MMCONFIG sase mayvbe ef=sovconueally il
 L378">v3743/a>34pav class="comment"> * acpi_p*/3/spavvvvvvvvv* set3/seck thbe/spa_CRSl of twit Pnlookitet3/avcon/spae,the @wl
 L379">v3743/a>34pav class="comment"> * @handl*/3/spavvvvvvvvv* cant Pessfahat e [_BBN-0xFF] or [0-0xFF]l
 L380">v384pta>34pav class="comment"> * @mask:*/3/spavvvvvvvvv*l
 L381">v3843/a>348             3a href="+code=root" class="sref">root3/a>->3a href="+code=osc_contaecondas="sref">list_foraecondas=a hr."+code=ctrl" cles="sref">hnd3/a> en= hre hrexFFf="drivers/acpi/pci_root.c#L365" id
4L382" cla4s="line" nam>
 L382">v3843/a>348             3a href="+code=status" pr/a>="sref">osc_lockpr/a>=href="+code=status" a>);_WARNING"sref">handle3/a>);_WARNINGhref="+code=ctrl" clFW_BUG"sref">handle3/FW_BUGhref="+code=ctrl" clPREFIX"sref">AE_BAD_PPREFIXhref="drivers/acpi/pci_root.c#L365" id
4L373" cla4s="line" nam>
 L383">v3843/a>348                     break;l"ss="string">"_OSC&quono aecondas= *3a rangl/spa_CRS3/spava);l
 L384">v3843/a>348             3a href="+code=acpi_hanclass="sref">status3/a> = 3a href="+code=acpi_evaluate_integer" class="sref">acpi_evaluate_integer3/a>(3a href="+code=hnd" claclass="sref">device3/a>)lhandle3/a>;lhandle3/METHOD_NAME__BBNmp;3a="drivers/acpi/pci_root.c#L437" id
 L385" cla4s="line" nam>
 L385">v3843/a>348                     goto 3a                 break;l"+code=GFP_KERNass="sref">NULL3/a>, &3a=href="+code=osc_lockss="sref">bus3/a>;l
 L386">v3843/a>348             if (3a href="+code=ACPI_FAILURE" class="sref">ACPI_SUCCESS3/a>(3a href="+code=status" class="sref">status3/a>))l
 L387">v3843/a>348                     break;l<"+code=root" class="sref">root3/a>->3a href="+code=osc_contaecondas="sref">list_foraecondas=a hr."+code=ctrl" cla>)rt"sref">status3/a>)r3a href="+code=acpi_pciss="sref">bus3/a>;l
 L388">v3843/a>348             3a href=else ref="+code=ACPI_FAIclass="sref">status3/a> = 3a hreff="+code=req" claXIST3/aFOUN="sref">INIT_LISXIST3/aFOUN=
 L389">v3843/a>348                     goto 3a "+code=root" class="sref">root3/a>->3a href="+code=osc_contaecondas="sref">list_foraecondas=a hr."+code=ctrl" cla>)rt"sref">status3/a>)r3a href=ef="drivers/acpi/pci_root.c#L437" id
 L390" cla4s="line" nam>
 L390">v394pta>349             return 3else f="drivers/acpi/pci_root.c#L432" id
 L391" cla4s="line" nam>
 L391">v3943/a>349                     goto 3a "+code=req" clapr/a>="sref">osc_lockpr/a>=href="+code=status" a>);_ER="sref">AE_BAD_Pa>);_ER=href="+code=ctrl" clPREFIX"sref">AE_BAD_PPREFIXhref="ss="string">"_OSC&quocanlookite _OSC if tBBN3/spava);l
 L392">v3943/a>349             3a href=goto 3a "+code=root" clalass="sref">result3/a>;lEXPORT_SYNODEV href="drivers/acpi/pci_root.c#L395" id
4L393" cla4s="line" nam>
 L393">v3943/a>{49                     break;lhnd3/a> en= href="drivers/acpi/pci_root.c#L395" id
4L394" cla4s="line" nam>
 L394">v3943/a> 49             3a href=f="drivers/acpi/pci_root.c#L430" id
 L395" cla4s="line" nam>
 L395">v3943/a> 4      3a href=f="drivers/acpi/pci_root.c#L430" id
 L376" cla4s="line" nam>
 L396">v3943/a> 49 href="drivers/acpi/pci_root.c#L377" id
4L397" cla4s="line" nam>
 L397">v3943/a> 4      3a href="+code=acpi_hanT_HEAD" class="sref">INIT_LIST_HEAD3/a>(&3a href="+code=node" class="sref">root3/a>->3a href="+code=osc_contass="sref">node3/a>);l
 L398">v3943/a>l49     3a href="+code=capbuf" ass="sref">root3/a> = 3a hrhref="+code=dev" class=ss="sref">device3/a>)ldevice3/a>)l
 L399">v3943/a> 49     3a href="+code=status" ass="sref">root3/a>->3a href="+code=osc_contaelass="sref">segment3/a>, 3a hre hr"+code=osc_contaelass="sref">segment3/a>, 3a hre ffff;l
 L400">v4053/a> 50     3a href="+code=status" clrcp="sref">list_foralrcp=href="+code=status" ice3/a> *3a_00">"sref">acpi_device3/a> *3a_00">href="+code=hnd" claclass="sref">device3/a>)lACPI_SUCCESS3ROL_RO3/aDEVICE_NAMEa href="drivers/acpi/pci_root.c#L372" id
5L401" cla5s="line" nam>
 L401">v4053/a>l50     3a href="+code=acpi_staclrcp="sref">list_foralrcp=href="+code=status" ice3/a> *3a_ref">"sref">acpi_device3/a> *3a_ref">href="+code=hnd" claclass="sref">device3/a>)lACPI_SUCCESS3ROL_RO3/aCLAs=a href="drivers/acpi/pci_root.c#L372" id
5L201" cla5s="line" nam>
 L392">v3953/a> 5      3a href="+code=ctrl" clclass="sref">device3/a>)ldevice3/acpi/p_data hre hr"+code=osc_contass="sref">root3/a>;l
 L403">v4053/a> 50 href="drivers/acpi/pci_root.c#L414" id
5L404" cla5s="line" nam>
 L404">v4053/a> 50     3a href="+code=mutex_lopr/a>="sref">osc_lockpr/a>=href="+code=status" a>);_INFO"sref">AE_BAD_Pa>);_INFOhref="+code=ctrl" clPREFIX"sref">AE_BAD_PPREFIXhref="ss="string">"_OSC&quoloo7;s [loo7;s] (dommaskloo7;04xkloo7;pR)3/spava);l
 L405">v4053/a>l50                    "+code=status" ice3/a> *3a_00">"sref">acpi_device3/a> *3a_00">href="+code=hnd" claclass="sref">device3/a>)lacpi_pci_roota> *3a_bi=href="+code=hnd" claclass="sref">device3/a>)l
 L396">v3953/a> 50             if (3a "+code=status" ass="sref">root3/a>->3a href="+code=osc_contaelass="sref">segment3/a>, 3a href=href="+code=osc_lockass="sref">root3/a> = 3a hrhref="+code=subordinaecondas="sref">list_foraecondas=a href="drivers/acpi/pci_root.c#L365" id
5L407" cla5s="line" nam>
 L407">v4053/a> 50 href="drivers/acpi/pci_root.c#L358" id
5L408" cla5s="line" nam>
 L408">v4053/a> 50     3spav class="comment">/*3/spaval
 L409">v4053/a>l50av class="comment">         * Now, wal briRoum. */Ttrol
 L410">v4153/a> 51av class="comment">         * original-----------------
 L411">v4153/a> 51av class="comment">         * bridge aE_OSC if hat parsf tPRT, refexistal
 L412">v4153/a> 51av class="comment">         */3/spaval
 L413">v4153/a>l51     3a href="+code=mutex_unclass="sref">status3/a> = 3a href="+code=acpi_evaluatele" class="sref">acpi_get_handle3/a>(3a href="+code=handle" class="sref">device3/a>)lhandle3/a>;lAE_SUPPOMETHOD_NAME__Ps= href=href="+code=osc_lockclass="sref">handle3/a>);l
 L414">v4153/a> 514            ref="+code=ACPI_FAILURE" class="sref">ACPI_SUCCESS3/a>(3a href="+code=status" class="sref">status3/a>))l
 L415">v4153/a>l51             3a href="+code=pbus" clalass="sref">result3/a>;lstatus3/luate.c#Lirq(str_prthref="+code=handle" class="sref">device3/a>)lhandle3/a>;lroot3/a>->3a href="+code=osc_contaelass="sref">segment3/a>, 3a href="drivers/acpi/pci_root.c#L441" id
5L605" cla5s="line" nam>
 L416">v4153/a> 51                     break;l<<<<<<<<<<<<<<<<<<<<<<<"+code=root" class="sref">root3/a>->3a href="+code=osc_contaecondas="sref">list_foraecondas=a hr."+code=ctrl" cla>)rt"sref">status3/a>)r3a href="drivers/acpi/pci_root.c#L407" id
5L407" cla5s="line" nam>
 L417">v4153/a> 51 href="drivers/acpi/pci_root.c#L358" id
5L418" cla5s="line" nam>
 L418">v4153/a> 51     3a href="+code=capbuf" ass="sref">root3/a> = 3a hrhref="+code=dev" clamcfg(str="sref">acpi_evamcfg(str= hreef="+code=acpi_evaluate.c#L3/a>(le3/mcfg(str="sref">acpi_evaluate.c#L3/a>(le3/mcfg(str=href="+code=handle" class="sref">device3/a>)lhandle3/a>;l
 L419">v4153/a> 51 href="drivers/acpi/pci_root.c#L410" id
5L420" cla5s="line" nam>
 L420">v4253/a>l52     3a href="ss="comment">/*3/spaval
 L421">v4253/a> 52av class="comment">         * bridge aAll set3/a>ed architecspava succeusf dle of ve set3/a>3/sp
 L422">v4253/a> 52av class="comment">         */3/spaval bridommassf=sovwl/spdic if tt.20iequest set3/a>3capabilitival
 L423">v4253/a> 52av class="comment"> * Run _O*/3/spaval
 L424">v4253/a> 52     3a href="+code=mutex_loflag="sref">status3/flag= hreef="+code=acpi_evasase_flag="sref">status3/sase_flag= hreef="+code=acpi_evaCONTROL_SEGMENT_GROUPS" class="sref">AE_SUPPOCONTROL_SEGMENT_GROUPS" class= href="drivers/acpi/pci_root.c#L395" id
5L425" cla5s="line" nam>
 L425">v4253/a> 5              "+code=acpi_evaluate.c#Lort_set3/a>"sref">acpi_evaluate.c#Lort_set3/a>href="+code=handle" ass="sref">root3/a> = 3a hrf="+code=GFP_KERNflag="sref">status3/flag= hreef="drivers/acpi/pci_root.c#L407" id
5L426" cla5s="line" nam>
 L426">v4253/a> 52 href="drivers/acpi/pci_root.c#L377" id
5L427" cla5s="line" nam>
 L427">v4253/a> 52     3spav class="comment">/* No need
 L428">v4253/a> 52av class="comment"> * acpi_p*/3/spav* TBD: check bri/a>(rftore/spaenumeraurns/configuraurns@req343"al
 L429">v4253/a> 52av class="comment">         * Now, wal
 L430">v4353/a>l5a href="drivers/acpi/pci_root.c#L431" id
5L431" cla5s="line" nam>
 L431">v4353/a> 53     3a href="+code=acpi_stack" class="sref">mutex_lock3/a>(&3a href="+code=osc_lockluate.c#L3/a>(ass="sref">mutex_loluate.c#L3/a>(ass= hreef="drivers/acpi/pci_root.c#L407" id
5L432" cla5s="line" nam>
 L432">v4353/a> 53     3a href="+code=ctrl" cl_eachstr_tai="sref">ctrl3/a>_eachstr_tai=p;3a href="+code=node" class="sref">root3/a>->3a href="+code=osc_contass="sref">node3/a>);l>"sref">acpi_device3/.c#L3/a>> hreef="drivers/acpi/pci_root.c#L407" id
5L423" cla5s="line" nam>
 L433">v4353/a> 53     3a href="+code=mutex_unlock" class="sref">mutex_unlock3/a>(&3a href="+code=osc_lockluate.c#L3/a>(ass="sref">mutex_loluate.c#L3/a>(ass= hreef="drivers/acpi/pci_root.c#L407" id
5L424" cla5s="line" nam>
 L434">v4353/a> 5      ="drivers/acpi/pci_root.c#L407" id
5L425" cla5s="line" nam>
 L435">v4353/a>l535    3spav class="comment">/* No need
 L436">v4353/a> 53av class="comment">         */3/spav* Scant bitR43" Br PCI
 L437">v4353/a> 53av class="comment">/**3/spa */3/spaval--------------------
 L438">v4353/a> 53av class="comment"> * acpi_p*/3/spav* Mustt Pett.20prispato any attempak thb3/avrned343" a>)l
 L439">v4353/a> 53av class="comment">         * Now, wal bri39">ss=cit Pva funcle3 crea>ed untilett.20/spaessfmade (hat 
 L440">v4453/a> 54av class="comment">         * originalthusvrned343" or PCIlooki20pcota> t Pva funcexistal
 L441">v4453/a> 54av class="comment">         * bridge l
 L442">v4453/a>354     3a href="+code=root" class="sref">root3/a> = 3a hrhref="+code=subordinss="sref">bus3/a>;lacpi_pci.c#Ltus3/acanlass=href="+code=handle" ass="sref">root3/a> = 3a href="drivers/acpi/pci_root.c#L407" id
5L443" cla5s="line" nam>
 L443">v4453/a> 5      3a href=href="+code=mask" class="sref">root3/a>)lbus3/a>;l
 L444">v4453/a> 54             3a href="+code=mutex_lopr/a>="sref">osc_lockpr/a>=href="+code=status" a>);_ER="sref">AE_BAD_Pa>);_ER=href="+code=ctrl" clPREFIX"sref">AE_BAD_PPREFIXhref="drivers/acpi/pci_root.c#L432" id
5L425" cla5s="line" nam>
 L445">v4453/a>}54                     goto 3a     "ss="string">"_OSC&quoBusvloo7;04x:loo7;02x funcpreto t0ieq bri39">ss=ci3/spava);l
 L446">v4453/a>354                     break;l<<<<<"+code=status" ass="sref">root3/a>->3a href="+code=osc_contaelass="sref">segment3/a>, 3a href=( longvlon/a>)"+code=root" class="sref">root3/a>->3a href="+code=osc_contaecondas="sref">list_foraecondas=a hr."+code=ctrl" cla>)rt"sref">status3/a>)r3a href="drivers/acpi/pci_root.c#L407" id
5L447" cla5s="line" nam>
 L447">v4453/a>l54             }lresult3/a>;lEXPORT_SYNODEV href="drivers/acpi/pci_root.c#L395" id
5L448" cla5s="line" nam>
 L448">v4453/a>s54             3a href=href="+code=out" claoutta>llass="sref">acpi_pcioutta>llass= href="drivers/acpi/pci_root.c#L395" id
5L439" cla5s="line" nam>
 L449">v4453/a>{54     }l
 L450">v4553/a> 55 href="drivers/acpi/pci_root.c#L431" id
5L451" cla5s="line" nam>
 L451">v4553/a> 55     3spav class="comment">/* Need to
 L452">v4553/a> 55av class="comment">         */3/spavalAttach dle - briCare xt
 L453">v4553/a> 55av class="comment"> * Run _O*/3/spaval-----------------------
 L354">v3543/a53/a>l55     ass="comment"> * acpi_p*/3/spav* Thusvb3/a. */3/s dle ohat  brid>)l
 L355">v3553/a> 5      ass="comment">         * bridge l
 L356">v3553/a> 55     3a href="+code=u32" claalass="sref">result3/a>;lacpi_pci_find_roob3/a>(3a href="+code=handle" class="sref">device3/a>)l
 L357">v3553/a>l55     if (!3a href"+code=u32" claalass="sref">result3/a>;l
 L358">v3553/a> 55             3a href=href="+code=out" claoutta>llass="sref">acpi_pcioutta>llass= href="drivers/acpi/pci_root.c#L395" id
5L359" cla5s="line" nam>
 L359">v3553/a>355 href="drivers/acpi/pci_root.c#L410" id
5L360" cla5s="line" nam>
 L360">v365pta>356     3a href="ss="comment">/*3/spaval
 L361">v3653/a>356av class="comment">         * bridge aScanthat b3/avspae_ADR-BaseckD>)l
 L362">v3653/a>356av class="comment">         */3/spaval
 L363">v3653/a> 56     3a href="+code=mutex_un_eachfor_each_   s="sref">list_for_eachfor_each_   s=href="+code=handle" chil="sref">acpi_pcichil= href=href="+code=osc_lockclass="sref">device3/a>)lacpi_pcichil=rena hrf="+code=GFP_KERNass="sref">node3/a>);l
 L364">v3653/a> 5                      "+code=acpi_evaluate.c#Lbr PCI acan"sref">acpi_pci_find_roobr PCI acanhref="+code=handle" chil="sref">acpi_pcichil= hreef="drivers/acpi/pci_root.c#L395" id
5L365" cla5s="line" nam>
 L365">v3653/a> 56 href="drivers/acpi/pci_root.c#L436" id
5L366" cla5s="line" nam>
 L366">v3653/a> 5              ass="comment">/* Need to Ipdic if set3/a>3/sp variousvuest capabilitivalval
 L367">v3653/a> 56     if (!3a href"+code=u32" cla.c#L xt_cfg(svai="sref">ctrl3/a>.c#L xt_cfg(svai=href=ef="drivers/acpi/pci_root.c#L441" id
5L358" cla5s="line" nam>
 L368">v3653/a> 56             3a href="+code=mutex_loflag="sref">status3/flag= hree|f="+code=acpi_evaCONTEXTTROL_MASFIG" class="sref">AE_SUPPOCONTEXTTROL_MASFIG" class= href="drivers/acpi/pci_root.c#L395" id
5L369" cla5s="line" nam>
 L369">v3653/a>356     if (!3a href"+code=u32" cla.c#e_aspm_set3/a>;entrol="sref">acpi_pci.c#e_aspm_set3/a>;entrol=href=ef="drivers/acpi/pci_root.c#L441" id
5L370" cla5s="line" nam>
 L370">v3753/a> 57             return 3"+code=mutex_loflag="sref">status3/flag= hree|f="+code=acpi_evaCONTACTIVE_STATE_PWR" class="sref">AE_SUPPOCONTACTIVE_STATE_PWR" class= hree|="drivers/acpi/pci_root.c#L441" id
5L361" cla5s="line" nam>
 L371">v3753/a> 57                     goto 3a "+code=req" claROL_TLOCK_PWR"CAPABILITY" class="sref">AE_SUPPOCONTTLOCK_PWR"CAPABILITY" class= href="drivers/acpi/pci_root.c#L395" id
5L372" cla5s="line" nam>
 L372">v3753/a>l57     3a href=href"+code=u32" cla.c#Lmsi;entrol="sref">acpi_pci.c#Lmsi;entrol=href=ef="drivers/acpi/pci_root.c#L441" id
5L363" cla5s="line" nam>
 L373">v3753/a> 57                     "+code=mutex_loflag="sref">status3/flag= hree|f="+code=acpi_evaCONTMSI" class="sref">AE_SUPPOCONTMSI" class= href="drivers/acpi/pci_root.c#L395" id
5LN" class5s="line" nam>
 L374">v3753/a>}574            ref="+code=ACPI_FAIflag="sref">status3/flag= hreeef="+code=req" clasase_flag="sref">status3/sase_flag= hreref="drivers/acpi/pci_root.c#L432" id
5L375" cla5s="line" nam>
 L375">v3753/a>357             3a href="+code=ctrl" cla>)ss="sref">status3/a> = 3a href="+code=acpi_pci_run_osc"ort_set3/a>"sref">acpi_evaluate.c#Lort_set3/a>href="+code=handle" ass="sref">root3/a> = 3a hrf="+code=GFP_KERNflag="sref">status3/flag= hreef="drivers/acpi/pci_root.c#L407" id
5L376" cla5s="line" nam>
 L376">v3753/a>l57             if (3a href="+code=ACPI_FAILURE" class="sref">ACPI_FAILURE3/a>(3a href="+code=status" class="sref">status3/a>))l
 L377">v3753/a>357                     break;l<"+code=root" cla>)_info"sref">device3/a>)_infohref="+code=handle" ass="sref">root3/a> = 3a hrhref="+code=subordinss="sref">bus3/a>;lbus3/a>;lr PCI"_OSC&quodle ouest set3/a>3spava);l
 L378">v3753/a>357             3a href=        break;l<"ss="string">"_OSC&quonotific irns@fai=ed, distro. */ROLe ASPM3/spava);l
 L379">v3753/a>357                     goto 3a "+code=root" cl.c#e_no_aspm"sref">acpi_pci.c#e_no_aspmhref=ef="drivers/acpi/pci_root.c#L365" id
5L380" cla5s="line" nam>
 L380">v385pta>358             return 3goto 3a "+code=root" clflag="sref">status3/flag= hreef="+code=acpi_evasase_flag="sref">status3/sase_flag= href="drivers/acpi/pci_root.c#L365" id
5L361" cla5s="line" nam>
 L381">v3853/a>358             3a href=f="drivers/acpi/pci_root.c#L430" id
5L382" cla5s="line" nam>
 L382">v3853/a>358             f="drivers/acpi/pci_root.c#L430" id
5L363" cla5s="line" nam>
 L383">v3853/a>358 href="drivers/acpi/pci_root.c#L414" id
5L384" cla5s="line" nam>
 L384">v3853/a>3584            ref=="+code=mask" cl.c#e_3/a>s_distrol="sref">acpi_pci.c#e_3/a>s_distrol=href="drivers/acpi/pci_root.c#L414" id
5L375" cla5s="line" nam>
 L385">v3853/a>358                 href= href=="+code=ACPI_FAIflag="sref">status3/flag= hree href="+code=req" claCESS3ROLE_REQ" class="sref">AE_SUPPORESS3ROLE_REQ" class= hrereff="+code=req" claXESS3ROLE_REQ" class="sref">AE_SUPPORESS3ROLE_REQ" class= hreref="drivers/acpi/pci_root.c#L432" id
5L376" cla5s="line" nam>
 L386">v3853/a>358             if (3a h"+code=root" clflag="sref">status3/flag= hreef="+code=acpi_evaCONTROL_EXPRESS"CAP_STRUCT3a _TYPE3/a"sref">AE_SUPPOCONTROL_EXPRESS"CAP_STRUCT3a _TYPE3/ahref="drivers/acpi/pci_root.c#L414" id
5L377" cla5s="line" nam>
 L387">v3853/a>358                     break;l<|="+code=acpi_evaCONTROL_EXPRESS"NATIVE_HP_TYPE3/a"sref">AE_SUPPOCONTROL_EXPRESS"NATIVE_HP_TYPE3/ahref="drivers/acpi/pci_root.c#L414" id
5L358" cla5s="line" nam>
 L388">v3853/a>358             3a href=break;l<|="+code=acpi_evaCONTROL_EXPRESS"PM _TYPE3/a"sref">AE_SUPPOCONTROL_EXPRESS"PM _TYPE3/a href="drivers/acpi/pci_root.c#L365" id
5L369" cla5s="line" nam>
 L389">v3853/a>358 href="drivers/acpi/pci_root.c#L410" id
5L390" cla5s="line" nam>
 L390">v395pta>359             return 3href"+code=u32" cla.c#Laer(svai=trol"sref">acpi_pci.c#Lter(svai=trolhref=efef="drivers/acpi/pci_root.c#L432" id
5L391" cla5s="line" nam>
 L391">v3953/a>359                     goto 3a href"+code=u32" clater(suatefirmware_first"sref">acpi_evaler(suatefirmware_firsthref=ef="drivers/acpi/pci_root.c#L441" id
5L392" cla5s="line" nam>
 L392">v3953/a>359             3a href=goto 3a if (3a h"+code=root" cla>)_dbg"sref">device3/a>)_dbghref="+code=handle" ass="sref">root3/a> = 3a hrhref="+code=subordinss="sref">bus3/a>;lbus3/a>;lr PCI
 L393">v3953/a>{59                     break;l"_OSC&quoROLe errors a>;l
 L394">v3953/a> 59             3a href=========else="drivers/acpi/pci_root.c#L365" id
5L375" cla5s="line" nam>
 L395">v3953/a> 59                     goto 3a     3a h"+code=root" clflag="sref">status3/flag= hree|f="+code=acpi_evaCONTROL_EXPRESS"AER_TYPE3/a"sref">AE_SUPPOCONTROL_EXPRESS"AER_TYPE3/a href="drivers/acpi/pci_root.c#L365" id
5L376" cla5s="line" nam>
 L396">v3953/a> 59             if (3a hf="drivers/acpi/pci_root.c#L430" id
5L397" cla5s="line" nam>
 L397">v3953/a> 59 href="drivers/acpi/pci_root.c#L358" id
5L398" cla5s="line" nam>
 L398">v3953/a>l59             3a href="+code=mutex_loa>)_info"sref">device3/a>)_infohref="+code=handle" ass="sref">root3/a> = 3a hrhref="+code=subordinss="sref">bus3/a>;lbus3/a>;lr PCI
 L399">v3953/a> 59                     goto 3a "ss="string">"_OSC&quoRequesm. */dle ouest set3/a> (0xloo7;02x)3/spava);lstatus3/flag= hreef="drivers/acpi/pci_root.c#L407" id
6L400" cla6s="line" nam>
 L400">v4063/a> 60 href="drivers/acpi/pci_root.c#L431" id
6L401" cla6s="line" nam>
 L401">v4063/a>l60             3a href="+code=root" cla>)ss="sref">status3/a> = 3a href="+code=acpi_pci_run_osc"ort_set" class="sref">acpi_pci_osc_control_set3/a>);ldevice3/a>)lhandle3/a>;lstatus3/flag= href="drivers/acpi/pci_root.c#L431" id
6L201" cla6s="line" nam>
 L392">v3963/a> 60             3a href=goto 3a if (3a h3a href="+code=root" clCONTROL_EXPRESS"CAP_STRUCT3a _TYPE3/a"sref">AE_SUPPOCONTROL_EXPRESS"CAP_STRUCT3a _TYPE3/ahrefef="drivers/acpi/pci_root.c#L407" id
6L301" cla6s="line" nam>
 L393">v3963/a> 60                     ref="+code=ACPI_FAILURE" class="sref">ACPI_SUCCESS3/a>(3a href="+code=status" class="sref">status3/a>))l
 L404">v4063/a> 60             3a href========="+code=mutex_loa>)_info"sref">device3/a>)_infohref="+code=handle" ass="sref">root3/a> = 3a hrhref="+code=subordinss="sref">bus3/a>;lbus3/a>;lr PCI
 L405">v4063/a>l60                             goto 3a "ss="string">"_OSC&quodle ouest set3/a> (0xloo7;02x) granted3/spava);lstatus3/flag= hreef="drivers/acpi/pci_root.c#L407" id
6L605" cla6s="line" nam>
 L396">v3963/a> 60             if (3a          ref="+code=ACPI_FAI_handlbl_FAD="sref">AE_SUPPO_handlbl_FAD=    ."+code=ctrl" clb/a>(flag="sref">status3/s/a>(flag= hree href="+code=req" claCESS3FAD=_NO_ASPM"sref">ACPI_FAILURE3/aD=_NO_ASPM hreref="drivers/acpi/pci_root.c#L432" id
6L407" cla6s="line" nam>
 L407">v4063/a> 60                     break;l>/*3/spaval
 L408">v4063/a> 60av class="comment"> * acpi_p*/3/spavvvvvvvvvvvvvvvvvvvvvvvvv* We f ve ASPM set3/a>, buon/sp /aD=/spdic ifa
 L409">v4063/a>l60av class="comment">         * Now, wvvvvvvvvvvvvvvvvvvvvvvvv* succeitlooki20unset3/a>ed. Cleareitl
 L410">v4163/a> 61av class="comment">         * originvvvvvvvvvvvvvvvvvvvvvvvv*l
 L411">v4163/a> 61                     goto 3a goto 3a "+code=mask" cl.c#e_clear_aspm"sref">acpi_pci.c#e_clear_aspmhref="+code=handle" ass="sref">root3/a> = 3a hrhref="+code=subordinss="sref">bus3/a>;l
 L412">v4163/a> 61             3a href=goto 3a f="drivers/acpi/pci_root.c#L430" id
6L413" cla6s="line" nam>
 L413">v4163/a>l61                     }3else f="drivers/acpi/pci_root.c#L432" id
6L414" cla6s="line" nam>
 L414">v4163/a> 61             3a href========="+code=mutex_loa>)_info"sref">device3/a>)_infohref="+code=handle" ass="sref">root3/a> = 3a hrhref="+code=subordinss="sref">bus3/a>;lbus3/a>;lr PCI
 L415">v4163/a>l61             3a href=3a href========="ss="string">"_OSC&quodle ouest requesm@fai=ed (loo7;s),3spava);l
 L416">v4163/a> 61                     break;l<<<<<<<<<"ss="string">"_OSC&quoa hrefed set3/a> mask: 0xloo7;02x3/spava);l
 L417">v4163/a> 61                     break;lAE_SUPPO_handformat_excepirnshref="+code=status" class="sref">status3/a>))lstatus3/flag= hreef="drivers/acpi/pci_root.c#L407" id
6L418" cla6s="line" nam>
 L418">v4163/a> 61             3a href=break;l<"+code=mask" cl.r_info"sref">device3/.r_infohref="ss="string">"_OSC&quodle ouest set3/a> /sp ROLe funclranted,3spava);l
 L419">v4163/a> 61                     goto 3a <<<<<<<<"ss="string">"_OSC&quodistro. */ASPM3/spava);l
 L420">v4263/a>l62             return 3goto 3a "+code=root" cl.c#e_no_aspm"sref">acpi_pci.c#e_no_aspmhref=ef="drivers/acpi/pci_root.c#L365" id
6L421" cla6s="line" nam>
 L421">v4263/a> 62             3a href=f="drivers/acpi/pci_root.c#L430" id
6L412" cla6s="line" nam>
 L422">v4263/a> 62             f3else f="drivers/acpi/pci_root.c#L432" id
6L423" cla6s="line" nam>
 L423">v4263/a> 62                     "+code=mutex_loa>)_info"sref">device3/a>)_infohref="+code=handle" ass="sref">root3/a> = 3a hrhref="+code=subordinss="sref">bus3/a>;lbus3/a>;lr PCI
 L424">v4263/a> 62             3a href=========<"ss="string">"_OSC&quoUntrolk threquesm@uest set3/a> spava);l
 L425">v4263/a> 62             3a href=3a href=="ss="string">"_OSC&quo(uest set3/a>3mask: 0xloo7;02x)3/spava);lstatus3/flag= hreef="drivers/acpi/pci_root.c#L407" id
6L426" cla6s="line" nam>
 L426">v4263/a> 62             f="drivers/acpi/pci_root.c#L430" id
6L407" cla6s="line" nam>
 L427">v4263/a> 62 href="drivers/acpi/pci_root.c#L358" id
6L418" cla6s="line" nam>
 L428">v4263/a> 62     3a href="+code=capbuf" .c#Ltus3/str_lacpi_eva.c#Ltus3/str_ldevice3/a>)lroot3/a>->3a href="+code=osc_contss="sref">bus3/a>;l
 L429">v4263/a> 62     if (!3a href"+code=u32" claclass="sref">device3/a>)ldevice3/wakeup    ."+code=ctrl" clflag="sref">status3/flag= hre."+code=ctrl" clrun_wake"sref">root3/a>-un_wake hree="drivers/acpi/pci_root.c#L407" id
6L430" cla6s="line" nam>
 L430">v4363/a>l63             return 3"+code=mutex_loa> *3a_se3/3un_wake"sref">root3/a>a> *3a_se3/3un_wakehref="+code=handle" ass="sref">root3/a> = 3a hrhref="+code=subordinss="sref">bus3/a>;lbus3/a>;lr PCIbus3/a>;3/uI hreef="drivers/acpi/pci_root.c#L407" id
6L431" cla6s="line" nam>
 L431">v4363/a> 63     ="drivers/acpi/pci_root.c#L407" id
6L412" cla6s="line" nam>
 L432">v4363/a> 63     3a href=a href=ef="drivers/acpi/pci_root.c#L437" id
6L423" cla6s="line" nam>
 L433">v4363/a> 63 href="drivers/acpi/pci_root.c#L414" id
6L424" cla6s="line" nam>
 L434">v4363/a> 6      "+code=acpi_evaoutta>llass="sref">acpi_pcioutta>llass= hre:="drivers/acpi/pci_root.c#L414" id
6L425" cla6s="line" nam>
 L435">v4363/a>l635    3spav cla+code=acpi_evack" class="sref">mutex_lock3/a>(&3a href="+code=osc_lockluate.c#L3/a>(ass="sref">mutex_loluate.c#L3/a>(ass= hreef="drivers/acpi/pci_root.c#L407" id
6L436" cla6s="line" nam>
 L436">v4363/a> 63     3a href="+code=u32" cla_eacha>l"sref">mutex_lo_eacha>lp;3a href="+code=osc_lockass="sref">root3/a> = 3a hrhref="+code=subordinass="sref">node3/a>);l
 L437">v4363/a> 63     3a href="+code=acpi_hanlock" class="sref">mutex_unlock3/a>(&3a href="+code=osc_lockluate.c#L3/a>(ass="sref">mutex_loluate.c#L3/a>(ass= hreef="drivers/acpi/pci_root.c#L407" id
6L438" cla6s="line" nam>
 L438">v4363/a> 63av cl="drivers/acpi/pci_root.c#L407" id
6L409" cla6s="line" nam>
 L439">v4363/a> 63     3a href="+code=status" luate.c#Lirq(a>llprt"sref">status3/luate.c#Lirq(a>llprthref="+code=handle" ass="sref">root3/a> = 3a hrhref="+code=subordinaelass="sref">segment3/a>, 3a href="+code=handle" ass="sref">root3/a> = 3a hrhref="+code=subordinaecondas="sref">list_foraecondas=a hr."+code=ctrl" cla>)rt"sref">status3/a>)r3a href="drivers/acpi/pci_root.c#L407" id
6L440" cla6s="line" nam>
 L440">v4463/a> 64av cla+code=ctrl" cles="sref">hnd3/a> en= hre:="drivers/acpi/pci_root.c#L414" id
6L441" cla6s="line" nam>
 L441">v4463/a> 64     3a href="+code=acpi_stakfre="sref">node3/a>kfre=href="+code=handle" ass="sref">root3/a> = 3a href="drivers/acpi/pci_root.c#L407" id
6L412" cla6s="line" nam>
 L442">v4463/a>364     3a href=a href="+code=handle" alass="sref">result3/a>;l
 L443">v4463/a> 6      f="drivers/acpi/pci_root.c#L430" id
6L444" cla6s="line" nam>
 L444">v4463/a> 64     ="drivers/acpi/pci_root.c#L407" id
6L425" cla6s="line" nam>
 L445">v4463/a>}64     a>))icn/a>="+code=acpi_evaluate.c#L3/a>(a>)rt"sref">status3/luate.c#L3/a>(a>)rthref=&quuc>="+code=acpi_evaluateclass="sref">device3/luateclass=    3*"+code=u32" claclass="sref">device3/a>)l
 L446">v4463/a>364     f="drivers/acpi/pci_root.c#L432" id
6L447" cla6s="line" nam>
 L447">v4463/a>l64             &quuc>="+code=acpi_evaluate.c#L432""sref">status3/luate.c#L3/a>    3*"+code=u32" claass="sref">root3/a> = 3a href="+code=acpi_pci_run_acpi/p_data"sref">device3/_run_acpi/p_dataa hr="+code=hnd" claclass="sref">device3/a>)l
 L448">v4463/a>s64             &quuc>="+code=acpi_evaluate.c#Lacpi/p"sref">status3/luate.c#Lacpi/p    3*"+code=u32" claccpi/p"sref">status3/acpi/p    f="drivers/acpi/pci_root.c#L407" id
6L409" cla6s="line" nam>
 L449">v4463/a>{64 href="drivers/acpi/pci_root.c#L410" id
6L450" cla6s="line" nam>
 L450">v4563/a> 65             ref="+code=ACPI_FAIcystem(a>)t="sref">device3/cystem(a>)t=     ef="+code=req" claSYSTEM_BOOTING"sref">device3/SYSTEM_BOOTING hree="drivers/acpi/pci_root.c#L407" id
6L451" cla6s="line" nam>
 L451">v4563/a> 65             3a href="+code=root" cl.c#Ltsongv/a>tsongver_l;ource="sref">bus3/a>;.c#Ltsongv/a>tsongver_l;ource=href="+code=handle" ass="sref">root3/a> = 3a hrhref="+code=subordinss="sref">bus3/a>;l
 L452">v4563/a> 65av cl="drivers/acpi/pci_root.c#L407" id
6L423" cla6s="line" nam>
 L453">v4563/a> 65     3a href="+code=mutex_unlock" ass="sref">mutex_lock3/a>(&3a href="+code=osc_lockluate.c#L3/a>(ass="sref">mutex_loluate.c#L3/a>(ass= hreef="drivers/acpi/pci_root.c#L407" id
6FN" class6ine" nam>
 L354">v3543/a63/a>l65     3a href="+code=mutex_lo_eachfor_each_   s="sref">list_for_eachfor_each_   s=href="+code=handle" ccpi/p"sref">status3/acpi/p    f=href="+code=osc_lockluate.c#Lacpi/pc"sref">status3/luate.c#Lacpi/ps href="+code=handle" ass="sref">node3/a>);l
 L355">v3563/a> 65             3a href=href"+code=u32" claccpi/p"sref">status3/acpi/p    href="+code=subordinad="sref">acpi_pci_dda hre="drivers/acpi/pci_root.c#L343" id
6F446" cla6s="line" nam>
 L356">v3563/a> 65                     break;l<"+code=u32" claccpi/p"sref">status3/acpi/p    href="+code=subordinad="sref">acpi_pci_dda hr="+code=handle" ass="sref">root3/a> = 3a href="drivers/acpi/pci_root.c#L407" id
6F447" cla6s="line" nam>
 L357">v3563/a>l65     3a href="+code=acpi_hanlock" class="sref">mutex_unlock3/a>(&3a href="+code=osc_lockluate.c#L3/a>(ass="sref">mutex_loluate.c#L3/a>(ass= hreef="drivers/acpi/pci_root.c#L407" id
6L358" cla6s="line" nam>
 L358">v3563/a> 65av cl="drivers/acpi/pci_root.c#L407" id
6L359" cla6s="line" nam>
 L359">v3563/a>365     3a href="ss="comment">/* Need to nheckto after hot-_ddlon/oapicn/s=a geacerlon*l
 L360">v366pta>366             ref="+code=ACPI_FAIcystem(a>)t="sref">device3/cystem(a>)t=     ef="+code=req" claSYSTEM_BOOTING"sref">device3/SYSTEM_BOOTING hree="drivers/acpi/pci_root.c#L407" id
6L361" cla6s="line" nam>
 L361">v3663/a>366             3a href="+code=root" cl.c#Lentrolobr PCI="sref">bus3/a>;.c#Lentrolobr PCI=href="+code=handle" ass="sref">root3/a> = 3a hrhref="+code=subordinss="sref">bus3/a>;l
 L362">v3663/a>366av cl="drivers/acpi/pci_root.c#L407" id
6L363" cla6s="line" nam>
 L363">v3663/a> 66     3a href="+code=mutex_un.c#Ll)lbus3/a>;.c#Ll)lroot3/a> = 3a hrhref="+code=subordinss="sref">bus3/a>;l
 L364">v3663/a> 66     ="drivers/acpi/pci_root.c#L407" id
6L365" cla6s="line" nam>
 L365">v3663/a> 66             a href=ef="drivers/acpi/pci_root.c#L437" id
6L366" cla6s="line" nam>
 L366">v3663/a> 6      f="drivers/acpi/pci_root.c#L430" id
6L447" cla6s="line" nam>
 L367">v3663/a> 66 href="drivers/acpi/pci_root.c#L358" id
6L358" cla6s="line" nam>
 L368">v3663/a> 66     a>))icn/a>="+code=acpi_evaluate.c#L3/a>(remov="sref">device3/luate.c#L3/a>(remov=href=&quuc>="+code=acpi_evaluateclass="sref">device3/luateclass=    3*"+code=u32" claclass="sref">device3/a>)l="+code=acpi_evatypI"sref">bus3/a>;3ypI hree="drivers/acpi/pci_root.c#L407" id
6L359" cla6s="line" nam>
 L369">v3663/a>366     f="drivers/acpi/pci_root.c#L432" id
6L370" cla6s="line" nam>
 L370">v3763/a> 67     3a href="+code=status" luateclass="sref">status3/luateclass=    3"+code=ctrl" cla>)ss="sref">status3/a>))l
 L371">v3763/a> 67     3a href="+code=acpi_staluateclass="sref">acpi_get_handa>;lhandle3/a>;l
 L372">v3763/a>l67     3a href=&quuc>="+code=acpi_evaluate.c#L432""sref">status3/luate.c#L3/a>    3*"+code=u32" claass="sref">root3/a> = 3a href="+code=acpi_pci_run_acpi/p_data"sref">device3/_run_acpi/p_dataa hr="+code=hnd" claclass="sref">device3/a>)l
 L373">v3763/a> 67             &quuc>="+code=acpi_evaluate.c#Lacpi/p"sref">status3/luate.c#Lacpi/p    3*"+code=u32" claccpi/p"sref">status3/acpi/p    f="drivers/acpi/pci_root.c#L407" id
6LN" class6s="line" nam>
 L374">v3763/a>}67     ="drivers/acpi/pci_root.c#L407" id
6L375" cla6s="line" nam>
 L375">v3763/a>3675    3spav cla+code=acpi_eva.c#LstopL3/a>(ss="sref">bus3/a>;.c#LstopL3/a>(ss=href="+code=handle" ass="sref">root3/a> = 3a hrhref="+code=subordinss="sref">bus3/a>;l
 L376">v3763/a>l67 href="drivers/acpi/pci_root.c#L377" id
6L377" cla6s="line" nam>
 L377">v3763/a>367     3a href="+code=acpi_hanlock" ass="sref">mutex_lock3/a>(&3a href="+code=osc_lockluate.c#L3/a>(ass="sref">mutex_loluate.c#L3/a>(ass= hreef="drivers/acpi/pci_root.c#L407" id
6L358" cla6s="line" nam>
 L378">v3763/a>367     3a href="+code=capbuf" _eachfor_each_   s=(rei/pc="sref">device3/_eachfor_each_   s=(rei/pc=href="+code=handle" ccpi/p"sref">status3/acpi/p    f=href="+code=osc_lockluate.c#Lacpi/pc"sref">status3/luate.c#Lacpi/ps href="+code=handle" ass="sref">node3/a>);l
 L379">v3763/a>367                     href"+code=u32" claccpi/p"sref">status3/acpi/p    href="+code=subordinremov="sref">device3/remov=hrefe="drivers/acpi/pci_root.c#L343" id
6L380" cla6s="line" nam>
 L380">v386pta>368             return 3goto 3a "+code=root" clccpi/p"sref">status3/acpi/p    href="+code=subordinremov="sref">device3/remov=href="+code=handle" ass="sref">root3/a> = 3a href="drivers/acpi/pci_root.c#L407" id
6L361" cla6s="line" nam>
 L381">v3863/a>368     3a href="+code=acpi_stack" clclass="sref">mutex_unlock3/a>(&3a href="+code=osc_lockluate.c#L3/a>(ass="sref">mutex_loluate.c#L3/a>(ass= hreef="drivers/acpi/pci_root.c#L407" id
6L382" cla6s="line" nam>
 L382">v3863/a>368av cl="drivers/acpi/pci_root.c#L407" id
6L363" cla6s="line" nam>
 L383">v3863/a>368     3a href="+code=mutex_una> *3a_se3/3un_wake"sref">root3/a>a> *3a_se3/3un_wakehref="+code=handle" ass="sref">root3/a> = 3a hrhref="+code=subordinss="sref">bus3/a>;lbus3/a>;lr PCIdevice3/falc= hreef="drivers/acpi/pci_root.c#L407" id
6LN" class6s="line" nam>
 L384">v3863/a>368     3a href="+code=mutex_lo.c#Ltus3/remov=_lacpi_eva.c#Ltus3/remov=_ldevice3/a>)l
 L385">v3863/a>368 href="drivers/acpi/pci_root.c#L436" id
6L376" cla6s="line" nam>
 L386">v3863/a>368     3a href="+code=u32" claa>)ss="sref">status3/a> = 3a href="+code=acpi_pci_run_le3/class="sref">acpi_get_handle3/class=a hr="+code=hnd" claclass="sref">device3/a>)lhandle3/a>;lAE_SUPPOMETHOD_NAME__Ps=    f=href="+code=osc_lockclass="sref">handle3/a>;l
 L387">v3863/a>368     if (!3a href"+code=u32" claLURE" class="sref">ACPI_SUCCESS3/a>(3a href="+code=status" class="sref">status3/a>))l
 L388">v3863/a>368             3a href="+code=osc_lockluate.c#Lirq(a>llprt"sref">status3/luate.c#Lirq(a>llprthref="+code=handle" ass="sref">root3/a> = 3a hrhref="+code=subordinaelass="sref">segment3/a>, 3a href="+code=handle" ass="sref">root3/a> = 3a hrhref="+code=subordinaecondas="sref">list_foraecondas=a hr."+code=ctrl" cla>)rt"sref">status3/a>)r3a href="drivers/acpi/pci_root.c#L407" id
6L369" cla6s="line" nam>
 L389">v3863/a>368 href="drivers/acpi/pci_root.c#L410" id
6L390" cla6s="line" nam>
 L390">v396pta>369     3a href="+code=status" .c#L4emov=_3/a>(ss="sref">bus3/a>;.c#L4emov=_3/a>(ss=href="+code=handle" ass="sref">root3/a> = 3a hrhref="+code=subordinss="sref">bus3/a>;l
 L391">v3963/a>369     ="drivers/acpi/pci_root.c#L407" id
6L392" cla6s="line" nam>
 L392">v3963/a>369     3a href="+code=root" cllock" ass="sref">mutex_lock3/a>(&3a href="+code=osc_lockluate.c#L3/a>(ass="sref">mutex_loluate.c#L3/a>(ass= hreef="drivers/acpi/pci_root.c#L407" id
6L363" cla6s="line" nam>
 L393">v3963/a>{69     3a href="+code=mutex_un_eacha>l"sref">mutex_lo_eacha>lp;3a href="+code=osc_lockass="sref">root3/a> = 3a hrhref="+code=subordinass="sref">node3/a>);l
 L394">v3963/a> 69     3a href="+code=mutex_lock" clclass="sref">mutex_unlock3/a>(&3a href="+code=osc_lockluate.c#L3/a>(ass="sref">mutex_loluate.c#L3/a>(ass= hreef="drivers/acpi/pci_root.c#L407" id
6L375" cla6s="line" nam>
 L395">v3963/a> 695    3spav cla+code=acpi_evakfre="sref">node3/a>kfre=href="+code=handle" ass="sref">root3/a> = 3a href="drivers/acpi/pci_root.c#L407" id
6L376" cla6s="line" nam>
 L396">v3963/a> 69             a href=ef="drivers/acpi/pci_root.c#L437" id
6L397" cla6s="line" nam>
 L397">v3963/a> 69 hreff="drivers/acpi/pci_root.c#L430" id
6L398" cla6s="line" nam>
 L398">v3963/a>l69av cl="drivers/acpi/pci_root.c#L407" id
6L369" cla6s="line" nam>
 L399">v3963/a> 69     a>))icn/a>="+code=acpi_eva__ini="sref">root3/a>__ini= hre="+code=acpi_staluate.c#L3/a>(ini="sref">root3/a>luate.c#L3/a>(ini=href=voidf="drivers/acpi/pci_root.c#L407" id
7L400" cla7s="line" nam>
 L400">v4073/a> 70 hreff="drivers/acpi/pci_root.c#L432" id
7L401" cla7s="line" nam>
 L401">v4073/a>l70     3a href="+code=acpi_staluateces>(ini="sref">root3/a>luateces>(ini=href=ef="drivers/acpi/pci_root.c#L407" id
7L201" cla7s="line" nam>
 L392">v3973/a> 70av cl="drivers/acpi/pci_root.c#L407" id
7L301" cla7s="line" nam>
 L393">v3973/a> 70             ref="+code=ACPI_FAI_hand.c#Laistrol="sref">acpi_pci_hand.c#Laistrol=hrefe="drivers/acpi/pci_root.c#L343" id
7L404" cla7s="line" nam>
 L404">v4073/a> 70             3a href=a href=ef="drivers/acpi/pci_root.c#L437" id
7L405" cla7s="line" nam>
 L405">v4073/a>l70 href="drivers/acpi/pci_root.c#L436" id
7L605" cla7s="line" nam>
 L396">v3973/a> 70     3a href="+code=u32" cla.c#Ltus3/crs_quirk="sref">bus3/a>;.c#Ltus3/crs_quirk=href=ef="drivers/acpi/pci_root.c#L407" id
7L705" cla7s="line" nam>
 L397">v3973/a> 70     if (!3a href"+code=u32" clatus3/lgeacerLacpi/p"sref">status3/luatelgeacerLacpi/pp;3a href="+code=osc_lockluate.c#L3/a>(acpi/p"sref">status3/luate.c#L3/a>(acpi/phrefe < 0e="drivers/acpi/pci_root.c#L343" id
7L805" cla7s="line" nam>
 L398">v3973/a> 70             3a href=a href=-"+code=EXPORT_SYNODEV"sref">EXPORT_SYNODEV href="drivers/acpi/pci_root.c#L395" id
7L409" cla7s="line" nam>
 L409">v4073/a>l70 href="drivers/acpi/pci_root.c#L410" id
7L410" cla7s="line" nam>
 L410">v4173/a> 710            a href=ef="drivers/acpi/pci_root.c#L437" id
7L401" cla7s="line" nam>
 L411">v4173/a> 71     f="drivers/acpi/pci_root.c#L430" id
7L412" cla7s="line" nam>
 L412">v4173/a> 71av cl="drivers/acpi/pci_root.c#L407" id
7L413" cla7s="line" nam>
 L413">v4173/a>l71     "+code=ctrl" claubsys(ini=/spa"sref">status3/aubsys(ini=/spahref="+code=handle" luate.c#L3/a>(ini="sref">root3/a>luate.c#L3/a>(ini=hrefef="drivers/acpi/pci_root.c#L407" id
7L414" cla7s="line" nam>
 L414">v4173/a> 71     
The original LXR software by /sp "drivers/http://;ourceforge.net/projects/lxp">LXR >/* uni=y href=this experi, 3aal i/pcrns@by "drivers/mailto:lxp@m> ux.nolo_xp@m> ux.noa hr.
_xp.m> ux.no kindly hoaced@by "drivers/http://www.redpill-m> pro.noloRedpill L> pro AS href=provider of L> ux set;l