Re: Put unused PCI devices in D3

From: Pavel Machek
Date: Fri Oct 03 2008 - 15:42:58 EST


Hi!

> My laptop computer has half a dozen unused PCI devices that could be put
> in the D3 power state, but they loiter in D0. The audio codec, the
> ethernet adapter, the unused PCI Express port, all the USB controllers,
> the IEEE1394 controller, the SD/MMC card controller, and the cardbus
> bridge all support D3(hot) power state.
>
> Currently it looks to me from browsing the code that D3 is only used in
> Linux when the whole machine is headed for S3, and the drivers are asked
> to suspend. I think the drivers should be able to enter D3 in other
> circumstances:
>
> * During pci_unregister_driver ... i.e. on module unload
> * When a network interface is downed
> * If the device is a bridge or hub with no downstream device
> * Whenever userspace requests D3 via sysfs

Well, patch that would put all unused devices into D3 would be
certainly 'interesting'. Then we could measure power savings and
perhaps do it... (or not if it breaks machines as Mathew suggests).

> So, what fundamental problem prevents me from, for example, calling
> pci_set_power_state() from ohci1394's __exit?

Patch would be welcome.

--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/