Sorry I was confused because you used the term "C-state" which is normally ACPI (x86/ia64)
specific. If someone says C states I assume ACPI and usually x86 by default
due to lack of deeper sleep states on most ia64s.
On x86 the trend is for the hardware/firmware/SMM doing more and more of this on its own,
as in deciding by itself how deep it wants to sleep.
-Andi
--