Thread (79 messages) 79 messages, 12 authors, 2016-02-01

[PATCH V3 11/21] pci, acpi: Move ACPI host bridge device companion assignment to core code.

From: Tomasz Nowicki <hidden>
Date: 2016-01-20 14:44:02
Also in: linux-acpi, linux-pci, lkml

On 20.01.2016 15:22, Lorenzo Pieralisi wrote:
On Wed, Jan 20, 2016 at 02:40:08PM +0100, Tomasz Nowicki wrote:

[...]
quoted
quoted
quoted
quoted
quoted
+	/* Root bridge device needs to be sure of parent ACPI type */
+	ACPI_COMPANION_SET(&device->dev, device);
I do not understand why the code above is needed, can you elaborate
please ?
This makes sure that device->dev can be identified as ACPI device,
so we can use to_acpi_device_node() and assign companion safely
below.
I do not follow. If you refer to the fwnode handle type, that is
already set by ACPI core code (before acpi_pci_root_add() is called,
in acpi_init_device_object()).
acpi_init_device_object() sets ACPI fwnode handle type only for
"device", but not for "device->dev" which is what is passed as an
argument to pci_create_root_bus().

Without ACPI_COMPANION_SET(&device->dev, device) here, no one can be
sure if we have ACPI device in pci_create_root_bus().
Ok, got it. The question is whether this should be done in ACPI
core instead (is there a reason why it should *not* be done ?), but I
now understand your point.
I am not able to answer that question, but I see lots of changes in this 
area made by Rafael.

Rafael, can you please shed some light on this?

Thanks,
Tomasz
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help