linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* CONFIG_PCIEASPM needed for ASPM?
@ 2008-10-24  1:40 Luis R. Rodriguez
  2008-10-24  2:47 ` Shaohua Li
  0 siblings, 1 reply; 4+ messages in thread
From: Luis R. Rodriguez @ 2008-10-24  1:40 UTC (permalink / raw)
  To: Zhang Yanmin, Shaohua Li; +Cc: Linux-Kernel

I know, the question is silly right? I thought so too, but I started
reviewing the code and noticed most of it is just setting up values in
data structures for the kernel's awareness of capabilities, it also
updates the state in case of BIOS foobar, and there is also clock
retraining if possible to reduce latency. Is that it? Did I miss
something or is it really possible for devices to be able to use
L0s|L1 or L1 by just having a BIOS which does things correctly?

That is can our devices be using ASPM without any OS interaction,
without CONFIG_PCIEASPM enabled?

Thanks,

  Luis

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: CONFIG_PCIEASPM needed for ASPM?
  2008-10-24  1:40 CONFIG_PCIEASPM needed for ASPM? Luis R. Rodriguez
@ 2008-10-24  2:47 ` Shaohua Li
  2008-10-24  2:58   ` Luis R. Rodriguez
  0 siblings, 1 reply; 4+ messages in thread
From: Shaohua Li @ 2008-10-24  2:47 UTC (permalink / raw)
  To: Luis R. Rodriguez; +Cc: Zhang, Yanmin, Linux-Kernel

On Fri, Oct 24, 2008 at 09:40:27AM +0800, Luis R. Rodriguez wrote:
> I know, the question is silly right? I thought so too, but I started
> reviewing the code and noticed most of it is just setting up values in
> data structures for the kernel's awareness of capabilities, it also
> updates the state in case of BIOS foobar, and there is also clock
> retraining if possible to reduce latency. Is that it? Did I miss
> something or is it really possible for devices to be able to use
> L0s|L1 or L1 by just having a BIOS which does things correctly?
> 
> That is can our devices be using ASPM without any OS interaction,
> without CONFIG_PCIEASPM enabled?
you didn't miss anything. If BIOS enables ASPM, even OS doesn't do anything,
ASPM will be used. ASPM enter/leave is controlled by hardware, OS just
enables the capability.

Thanks,
Shaohua

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: CONFIG_PCIEASPM needed for ASPM?
  2008-10-24  2:47 ` Shaohua Li
@ 2008-10-24  2:58   ` Luis R. Rodriguez
  2008-10-24  5:42     ` Shaohua Li
  0 siblings, 1 reply; 4+ messages in thread
From: Luis R. Rodriguez @ 2008-10-24  2:58 UTC (permalink / raw)
  To: Shaohua Li; +Cc: Zhang, Yanmin, Linux-Kernel

On Thu, Oct 23, 2008 at 7:47 PM, Shaohua Li <shaohua.li@intel.com> wrote:
> On Fri, Oct 24, 2008 at 09:40:27AM +0800, Luis R. Rodriguez wrote:
>> I know, the question is silly right? I thought so too, but I started
>> reviewing the code and noticed most of it is just setting up values in
>> data structures for the kernel's awareness of capabilities, it also
>> updates the state in case of BIOS foobar, and there is also clock
>> retraining if possible to reduce latency. Is that it? Did I miss
>> something or is it really possible for devices to be able to use
>> L0s|L1 or L1 by just having a BIOS which does things correctly?
>>
>> That is can our devices be using ASPM without any OS interaction,
>> without CONFIG_PCIEASPM enabled?
> you didn't miss anything. If BIOS enables ASPM, even OS doesn't do anything,
> ASPM will be used.

I see, interesting... how about the clock selection and training? The
ASPM code has it, but without it will it have taken place in hardware
behind the scenes?

> ASPM enter/leave is controlled by hardware, OS just
> enables the capability.

What do you mean by the OS enabling the capability? All I see is
setting the capability bits on the pci struct so the OS can reflect
this internally and to userspace, say through lspci. Is that it?

  Luis

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: CONFIG_PCIEASPM needed for ASPM?
  2008-10-24  2:58   ` Luis R. Rodriguez
@ 2008-10-24  5:42     ` Shaohua Li
  0 siblings, 0 replies; 4+ messages in thread
From: Shaohua Li @ 2008-10-24  5:42 UTC (permalink / raw)
  To: Luis R. Rodriguez; +Cc: Zhang, Yanmin, Linux-Kernel

On Fri, Oct 24, 2008 at 10:58:06AM +0800, Luis R. Rodriguez wrote:
> On Thu, Oct 23, 2008 at 7:47 PM, Shaohua Li <shaohua.li@intel.com> wrote:
> > On Fri, Oct 24, 2008 at 09:40:27AM +0800, Luis R. Rodriguez wrote:
> >> I know, the question is silly right? I thought so too, but I started
> >> reviewing the code and noticed most of it is just setting up values in
> >> data structures for the kernel's awareness of capabilities, it also
> >> updates the state in case of BIOS foobar, and there is also clock
> >> retraining if possible to reduce latency. Is that it? Did I miss
> >> something or is it really possible for devices to be able to use
> >> L0s|L1 or L1 by just having a BIOS which does things correctly?
> >>
> >> That is can our devices be using ASPM without any OS interaction,
> >> without CONFIG_PCIEASPM enabled?
> > you didn't miss anything. If BIOS enables ASPM, even OS doesn't do anything,
> > ASPM will be used.
> 
> I see, interesting... how about the clock selection and training? The
> ASPM code has it, but without it will it have taken place in hardware
> behind the scenes?
this is just required when we setup ASPM, and not be done frequently. I
suggest you look at the spec of pcie.
 
> > ASPM enter/leave is controlled by hardware, OS just
> > enables the capability.
> 
> What do you mean by the OS enabling the capability? All I see is
> setting the capability bits on the pci struct so the OS can reflect
> this internally and to userspace, say through lspci. Is that it?
The driver does set some pci config space registers not just set capability
bits on the pci struct.

Thanks,
Shaohua

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2008-10-24  5:42 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-10-24  1:40 CONFIG_PCIEASPM needed for ASPM? Luis R. Rodriguez
2008-10-24  2:47 ` Shaohua Li
2008-10-24  2:58   ` Luis R. Rodriguez
2008-10-24  5:42     ` Shaohua Li

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).