Re: [PATCH 4/4] ACPI PCI slot detection driver

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Alex Chiang
Date: Wednesday, March 12, 2008 - 8:24 pm

Hi Kenji-san,

* Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com>:

I think the piece that I did not explain clearly is that the spec
does not require checking _STA immediately before _SUN. The spec
says: 

	- you must check _STA before calling _INI
	- _INI must be called to initialize _SUN
	- _INI is called once, when the table is loaded

On HP's implementation, we do obey those rules. We call _INI on
the PCI bridge during boot, which then initializes the children
SxFy objects. From that point on, it is legal for us to call
_SUN.

The other issue is that the spec does not specify the *semantics*
of _STA. P/IBM firmware engineers think _STA should indicate card
presence, but Fujitsu firmware engineers think _STA should
indicate slot presence.

I don't think either firmware team is incorrect -- it is simply
the case that the specification was not precise enough, to the
point where separate teams following the same spec came up with
implementations with different behaviors and different semantics.

I believe that we both have compliant, legal firmware.


On HP and IBM machines, it *is* legal because we *did* call _STA,
then _INI, then _SUN. That is one interpretation of the spec.

On Fujitsu machines, the semantics of _STA are different, and it
is not legal to ignore _STA. That is another interpretation of
the spec.

Because I think we both have compliant, legal firmware, I think
the kernel should pick the most maintainable solution for the
different implementations. In my opinion, writing code for
"majority rule" and shorter DMI lists is the most maintainable
solution.

Let us try to find a compromise, ok? Right now, for the machines
we know about, there are more implementations where _INI lives at
the bridge level and correctly initialize _SUN, so it's easier to
follow my original approach.

If we can get this into linux-next and get more exposure on more
platforms, and we find out that the other interpretation of the
spec is more popular, then I will very happily ACK your patch,
and we can have DMI calls to handle HP/IBM machines.

Does that sound fair?

[Let's try and work out an answer here before working on shpchp
naming issues; I already agree that I need to fix that issue
before going upstream, but I want to focus here first.]

Thanks,

/ac

--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[PATCH 0/4, v7] PCI, ACPI: Physical PCI slot objects, Alex Chiang, (Thu Feb 28, 5:23 pm)
[PATCH 1/4] Remove path attribute from sgi_hotplug, Alex Chiang, (Thu Feb 28, 5:26 pm)
[PATCH 2/4] Construct one fakephp slot per pci slot, Alex Chiang, (Thu Feb 28, 5:27 pm)
[PATCH 3/4] Introduce pci_slot, Alex Chiang, (Thu Feb 28, 5:28 pm)
[PATCH 4/4] ACPI PCI slot detection driver, Alex Chiang, (Thu Feb 28, 5:29 pm)
Re: [PATCH 3/4] Introduce pci_slot, Greg KH, (Fri Feb 29, 10:24 pm)
Re: [PATCH 4/4] ACPI PCI slot detection driver, Greg KH, (Fri Feb 29, 10:25 pm)
Re: [PATCH 4/4] ACPI PCI slot detection driver, Matthew Wilcox, (Sat Mar 1, 7:43 am)
Re: [PATCH 1/4] Remove path attribute from sgi_hotplug, Jesse Barnes, (Mon Mar 3, 11:48 am)
Re: [PATCH 1/4] Remove path attribute from sgi_hotplug, Prarit Bhargava, (Mon Mar 3, 11:54 am)
Re: [PATCH 3/4] Introduce pci_slot, Alex Chiang, (Mon Mar 3, 1:56 pm)
Re: [PATCH 4/4] ACPI PCI slot detection driver, Greg KH, (Mon Mar 3, 10:49 pm)
Re: [PATCH 3/4] Introduce pci_slot, Greg KH, (Mon Mar 3, 10:58 pm)
Re: [PATCH 4/4] ACPI PCI slot detection driver, Jesse Barnes, (Tue Mar 4, 11:18 am)
Re: [PATCH 4/4] ACPI PCI slot detection driver, Greg KH, (Tue Mar 4, 12:30 pm)
Re: [PATCH 4/4] ACPI PCI slot detection driver, Jesse Barnes, (Tue Mar 4, 1:02 pm)
Re: [PATCH 4/4] ACPI PCI slot detection driver, Kristen Carlson Accardi, (Tue Mar 4, 1:12 pm)
Re: [PATCH 4/4] ACPI PCI slot detection driver, Alex Chiang, (Tue Mar 4, 3:58 pm)
Re: [PATCH 4/4] ACPI PCI slot detection driver, Alex Chiang, (Tue Mar 4, 4:09 pm)
Re: [PATCH 4/4] ACPI PCI slot detection driver, Greg KH, (Tue Mar 4, 4:15 pm)
[PATCH 3/4, v8] Introduce pci_slot, Alex Chiang, (Tue Mar 4, 4:30 pm)
Re: [PATCH 4/4] ACPI PCI slot detection driver, Alex Chiang, (Tue Mar 4, 4:46 pm)
Re: [PATCH 4/4] ACPI PCI slot detection driver, Kenji Kaneshige, (Tue Mar 4, 6:11 pm)
Re: [PATCH 4/4] ACPI PCI slot detection driver, Alex Chiang, (Wed Mar 5, 1:20 pm)
Re: [PATCH 4/4] ACPI PCI slot detection driver, Matthew Wilcox, (Wed Mar 5, 1:34 pm)
Re: [PATCH 4/4] ACPI PCI slot detection driver, Kenji Kaneshige, (Wed Mar 5, 7:07 pm)
Re: [PATCH 4/4] ACPI PCI slot detection driver, Kenji Kaneshige, (Tue Mar 11, 6:10 am)
[PATCH 3/(3+1)] ACPI PCI slot detection driver, Kenji Kaneshige, (Tue Mar 11, 6:13 am)
Re: [PATCH 3/(3+1)] ACPI PCI slot detection driver, Kenji Kaneshige, (Tue Mar 11, 6:17 am)
Re: [PATCH 4/4] ACPI PCI slot detection driver, Matthew Wilcox, (Tue Mar 11, 6:28 am)
Re: [PATCH 4/4] ACPI PCI slot detection driver, Jesse Barnes, (Tue Mar 11, 9:56 am)
Re: [PATCH 4/4] ACPI PCI slot detection driver, Kristen Carlson Accardi, (Tue Mar 11, 11:04 am)
Re: [PATCH 4/4] ACPI PCI slot detection driver, Alex Chiang, (Tue Mar 11, 12:14 pm)
Re: [PATCH 4/4] ACPI PCI slot detection driver, Kristen Carlson Accardi, (Tue Mar 11, 4:34 pm)
Re: [PATCH 4/4] ACPI PCI slot detection driver, Kenji Kaneshige, (Tue Mar 11, 9:08 pm)
Re: [PATCH 4/4] ACPI PCI slot detection driver, Kenji Kaneshige, (Tue Mar 11, 10:51 pm)
Re: [PATCH 4/4] ACPI PCI slot detection driver, Kenji Kaneshige, (Wed Mar 12, 3:50 am)
Re: [PATCH 4/4] ACPI PCI slot detection driver, Kenji Kaneshige, (Wed Mar 12, 4:33 am)
Re: [PATCH 4/4] ACPI PCI slot detection driver, Kenji Kaneshige, (Wed Mar 12, 5:59 am)
Re: [PATCH 4/4] ACPI PCI slot detection driver, Alex Chiang, (Wed Mar 12, 8:24 pm)
Re: [PATCH 4/4] ACPI PCI slot detection driver, Gary Hade, (Thu Mar 13, 7:16 pm)
Re: [PATCH 4/4] ACPI PCI slot detection driver, Kenji Kaneshige, (Thu Mar 13, 10:34 pm)
Re: [PATCH 4/4] ACPI PCI slot detection driver, Alex Chiang, (Tue Mar 18, 1:49 pm)