Garrett D'Amore <gdam...@sun.com> wrote:
> I know that all USB host controllers interrupt *really* frequently.
>  (1000Hz.)  This is a flaw in the way those interfaces were designed.  Its
> true when *any* device is plugged into the port, I believe.

It's not ture on a Linux system. Plugging a USB stick onto a Linux system,
we still can enter deep C-state.

>
> I'd expect that if you unplug all USB devices, you should be able to see
> deep C-states.  If you can't, then it does sound like a potential bug in the
> EHCI driver.
>
Conditionally, some system is okay like supermicro's NHM-EP.
some system is bad like Demodepot's NHM-EP.

While Linux works perfect on both systems.

If the device is going to be idle/not used, can we put it into a state
called "Selective Suspend",
instead of doing a regular wake-up to check on the device? Maybe it's
already supported and
this problem is caused by another case, I just don't know.

Sorry I don't have USB background, what I can only do is to do the comparision.

Hope USB experts can shed some lights on this issue. This makes a big energy
efficiency gap between solaris and other OSes.

Thanks,
-Aubrey


>    - Garrett
>
> (Yes, this is one of the things that I hate about USB.  It doesn't really
> have a native interrupt facility, but instead requires the host to "poll"
> the device very frequently to on an interrupt endpoint to simulate a true
> interrupt.)
>
> On 03/ 7/10 07:18 PM, Aubrey Li wrote:
>>
>> Hi,
>>
>> We catched this problem in a solaris power related characterization
>> report.
>> In an idle system, all the logical CPUs are ~99% in deep C-state while
>> the package
>> can't enter deep C-state. Theoretically, if all the logical CPUs in a
>> package can enter
>> deep C-state, the package should be able to enter deep C-state as well.
>>
>> The cases here:
>> 1) If we disabled USB2.0 in the BIOS, the problem is gone.
>> 2) Remove EHCI driver and reboot, the problem is gone.
>> 3) If we plugged a USB stick onto the box, without any read/write
>> operations, the package
>> C-state is throttled as well, this is not expected.
>>
>> If we boot the system with other OS, we didn't see any of these
>> problems. So these are more
>> likely the software problem.
>>
>> Any helps will be greatly appreciated.
>>
>> Thanks,
>> -Aubrey
>> _______________________________________________
>> driver-discuss mailing list
>> driver-discuss@opensolaris.org
>> http://mail.opensolaris.org/mailman/listinfo/driver-discuss
>>
>
> _______________________________________________
> driver-discuss mailing list
> driver-discuss@opensolaris.org
> http://mail.opensolaris.org/mailman/listinfo/driver-discuss
>
_______________________________________________
driver-discuss mailing list
driver-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/driver-discuss

Reply via email to