From: Janosch M. <sc...@tz...> - 2005-04-18 12:29:28
|
> > This patch fakes an C1 state if the given states by the _CST object > > start with anything else than C1 (like on my M6NE here it start's with > > C2) > > It should not be needed. I've taken care that it work by testing > in almost all cases by overriding the DSDT when I wrote this part to > handle properly almost all cases (I forgot the case when C1 and C3, but > no C2 though, that why I wrote 'almost'). > > Normally, we register a C1 state no matter what before we check > the content of _CST, then we just skip if a C1 type is found. > > If your patch is needed, then the patch I send some times ago have not been > fully integrated in the original form, or maybe the wrong one was considered > (the first was buggy in that regard, but the second was OK). > Your first patch has been modified, and now my patch is needed. In your first implementation you did an (pr->power)++ before the loop that started the polling of the _CST object. At the moment all C-States are deleted (see the memset) and generated from scratch. Your idea sounds faster to me ! > I would prefer > memset(pr->power.states, 0, ACPI_PROCESSOR_MAX_POWER * sizeof(struct acpi_processor_cx)); > (without the loop) I agree, looks faster to me. A new patch is attached Janosch |