[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20080930000923.GA29775@srcf.ucam.org>
Date: Tue, 30 Sep 2008 01:09:23 +0100
From: Matthew Garrett <mjg59@...f.ucam.org>
To: "Jeffrey W. Baker" <jwbaker@...il.com>
Cc: linux-kernel@...r.kernel.org
Subject: Re: Put unused PCI devices in D3
On Mon, Sep 29, 2008 at 01:11:03PM -0700, Jeffrey W. Baker wrote:
> 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
The fact that Linux isn't using a device doesn't inherently mean that
the system isn't using it. For example, the smbus controller will
probably still be used by ACPI even if there's no Linux driver loaded.
> * When a network interface is downed
Yes. Drivers are moving towards this model.
> * If the device is a bridge or hub with no downstream device
Potential problems with hotplugging? But sure, this kind of thing is
being implemented in USB and SCSI.
> * Whenever userspace requests D3 via sysfs
This functionality was explicitly removed a few years back.
> So, what fundamental problem prevents me from, for example, calling
> pci_set_power_state() from ohci1394's __exit?
Nothing I'm aware of. It sounds pretty safe in that case. But that would
require you to load and unload the driver - better to have the driver
loaded the entire time and make sure it does as much runtime power
management as possible. I don't know enough about the firewire OHCI
hardware, but can you power down most of the chip and still get hotplug
events?
--
Matthew Garrett | mjg59@...f.ucam.org
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists