> >> - if (pcie_port_runtime_suspend_allowed(dev)) >> + if (pcie_port_runtime_suspend_allowed(dev)) { >> + pm_runtime_allow(&dev->dev); > > PCI drivers typically have left this decision up to the userspace. I'm > wondering whether it is good idea to deviate from that here? Of course > this allows immediate power savings but could potentially cause problems > as well. > No distro has ever shipped userspace to do this, I really think this is a bad design. We have wasted countless watts of power on this stupid idea that people will run powertop, only a few people in the world run powertop, lots of people use Linux. The kernel should power stuff down not wait for the user to run powertop, At least for the GPU it's in the area of 8W of power, and I've got the GPU drivers doing this themselves, I could have the GPU driver call runtime allow for it's host bridge I suppose, if we insist on the userspace cares, but I'd prefer not doing so. > I think we need to add corresponding call to pm_runtime_forbid() in > pcie_portdrv_remove(). Yes most likely. Dave. > >> pm_runtime_put_noidle(&dev->dev); >> + } >> >> return 0; >> } >> @@ -436,6 +438,8 @@ static void pcie_portdrv_err_resume(struct pci_dev *dev) >> * LINUX Device Driver Model >> */ >> static const struct pci_device_id port_pci_ids[] = { >> + /* Intel Skylake PCIE graphics port */ >> + { PCI_VDEVICE(INTEL, 0x0c01), .driver_data = PCIE_PORT_SPT }, >> /* Intel Broxton */ >> { PCI_VDEVICE(INTEL, 0x1ad6), .driver_data = PCIE_PORT_SPT }, >> { PCI_VDEVICE(INTEL, 0x1ad7), .driver_data = PCIE_PORT_SPT }, >> -- >> 2.5.0 >> > -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html