|
@@ -123,7 +123,7 @@ acpi_hw_derive_pci_id(struct acpi_pci_id *pci_id,
|
|
|
acpi_handle root_pci_device, acpi_handle pci_region)
|
|
|
{
|
|
|
acpi_status status;
|
|
|
- struct acpi_pci_device *list_head = NULL;
|
|
|
+ struct acpi_pci_device *list_head;
|
|
|
|
|
|
ACPI_FUNCTION_TRACE(hw_derive_pci_id);
|
|
|
|
|
@@ -177,13 +177,13 @@ acpi_hw_build_pci_list(acpi_handle root_pci_device,
|
|
|
acpi_handle parent_device;
|
|
|
acpi_status status;
|
|
|
struct acpi_pci_device *list_element;
|
|
|
- struct acpi_pci_device *list_head = NULL;
|
|
|
|
|
|
/*
|
|
|
* Ascend namespace branch until the root_pci_device is reached, building
|
|
|
* a list of device nodes. Loop will exit when either the PCI device is
|
|
|
* found, or the root of the namespace is reached.
|
|
|
*/
|
|
|
+ *return_list_head = NULL;
|
|
|
current_device = pci_region;
|
|
|
while (1) {
|
|
|
status = acpi_get_parent(current_device, &parent_device);
|
|
@@ -198,7 +198,6 @@ acpi_hw_build_pci_list(acpi_handle root_pci_device,
|
|
|
/* Finished when we reach the PCI root device (PNP0A03 or PNP0A08) */
|
|
|
|
|
|
if (parent_device == root_pci_device) {
|
|
|
- *return_list_head = list_head;
|
|
|
return (AE_OK);
|
|
|
}
|
|
|
|
|
@@ -213,9 +212,9 @@ acpi_hw_build_pci_list(acpi_handle root_pci_device,
|
|
|
|
|
|
/* Put new element at the head of the list */
|
|
|
|
|
|
- list_element->next = list_head;
|
|
|
+ list_element->next = *return_list_head;
|
|
|
list_element->device = parent_device;
|
|
|
- list_head = list_element;
|
|
|
+ *return_list_head = list_element;
|
|
|
|
|
|
current_device = parent_device;
|
|
|
}
|