[PATCH 3/3] nvme: Enable autonomous power state transitions

Andy Lutomirski luto at amacapital.net
Tue Aug 30 13:21:20 PDT 2016


On Mon, Aug 29, 2016 at 4:16 PM, Andy Lutomirski <luto at amacapital.net> wrote:
> On Aug 29, 2016 8:07 AM, "J Freyensee"
> <james_p_freyensee at linux.intel.com> wrote:
>>
>> On Mon, 2016-08-29 at 02:25 -0700, Andy Lutomirski wrote:
>> > NVME devices can advertise multiple power states.  These states can
>> > be either "operational" (the device is fully functional but possibly
>> > slow) or "non-operational" (the device is asleep until woken up).
>> > Some devices can automatically enter a non-operational state when
>> > idle for a specified amount of time and then automatically wake back
>> > up when needed.
>> >

>>
>> > +     /*
>> > +      * By default, allow up to 25ms of APST-induced
>> > latency.  This will
>> > +      * have no effect on non-APST supporting controllers (i.e.
>> > any
>> > +      * controller with APSTA == 0).
>> > +      */
>> > +     ctrl->apst_max_latency_ns = 25000000;
>>
>> Is it possible to make that a #define please?
>
> I'll make it a module parameter as Keith suggested.

One question, though: should we call this and the sysfs parameter
apst_max_latency or should it be more generically
power_save_max_latency?  The idea is that we might want to support
non-automonous transitions some day or even runtime D3.  Or maybe
those should be separately configured if used.

--Andy



More information about the Linux-nvme mailing list