Re: [PATCH v7 03/12] PCI: Request control of native PCIe hotplug only if supported

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Friday, May 18, 2018 3:07:26 PM CEST Bjorn Helgaas wrote:
> On Fri, May 18, 2018 at 07:57:07AM -0500, Bjorn Helgaas wrote:
> > On Fri, May 18, 2018 at 09:48:54AM +0200, Rafael J. Wysocki wrote:
> > > On Thursday, May 17, 2018 4:13:24 PM CEST Bjorn Helgaas wrote:
> > > > On Thu, May 17, 2018 at 12:28:54PM +0300, Mika Westerberg wrote:
> > 
> > > > >  	host_bridge = to_pci_host_bridge(bus->bridge);
> > > > >  	if (!(root->osc_control_set & OSC_PCI_EXPRESS_NATIVE_HP_CONTROL))
> > > > > -		host_bridge->native_hotplug = 0;
> > > > > +		host_bridge->native_pcie_hotplug = 0;
> > > > >  	if (!(root->osc_control_set & OSC_PCI_EXPRESS_AER_CONTROL))
> > > > >  		host_bridge->native_aer = 0;
> > > > >  	if (!(root->osc_control_set & OSC_PCI_EXPRESS_PME_CONTROL))
> > > > 
> > > > Rafael, I noticed that the PCI Firmware Spec, r3.2, sec 4.5.2.2, says
> > > > we're required to evaluate _OSC when resuming from S4.  I don't see a
> > > > path where we do that today.
> > > 
> > > No, we don't do that today.
> > > 
> > > > Am I missing it?  If not, what resume hook do we need to use to do
> > > > this?
> > > 
> > > We could do that in the ->restore_noirq callback of the host bridge
> > > device I suppose.  Basically, before resuming all of the PCI devices
> > > on the bus.
> > > 
> > > However, question is on what conditions.  Do the previous versions of the
> > > spec have this requirement or is it just a new thing?
> > 
> > I think the requirement has been there since the beginning of _OSC.
> > The first reference I can find is ACPI 3.0, sec 6.2.9, which says we
> > should evaluate _OSC on wake from S4 and when a Notify(<device>, 8) is
> > delivered.  AFAICT, this applies to all _OSC methods, not just those
> > for PCI host bridges.
> > 
> > The OSHP description (PCI Firmware Spec r3.2, sec 4.8) talks about
> > interrupt reconfiguration that may be needed when the OS takes over
> > control of SHPC.  I assume this kind of reconfiguration needs to be
> > done on wake from S4.
> 
> Forgot to mention: I wonder if this omission could be related to mysterious
> resume issues like https://bugzilla.kernel.org/show_bug.cgi?id=99751

I don't quite think so.  For this particular machine the _OSC done by the
restore kernel (see my previous reply in this thread) should be sufficient.

Besides, I don't think this one is about hibernation.





[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux