Does this system have a _CST in its DSDT?

Can you attach the output of acpidump to a bugzilla.kernel.org entry?
Also, the complete output from dmesg -s64000

thanks,
-Len

On Monday 25 June 2007 16:25, Dag Bakke wrote:
> The attached patch makes the kernel ignore the fact that P_LVL3_LAT is
> set to 2000 in the relevant ACPI table, and enforces the C3 power state
> anyway. I have not observed any ill effects with this patch on my
> P4m-equipped Inspiron 8200, and would like to see this patch applied
> upstream.
> 
> It saves ~2.5 watts on an idle system, so should be well worth it.
> 
> The patch was written by Arjan van de Ven based on my initial tests, and
>  the patch has been tested by myself.
> It applies to 2.6.22-rc5 and likely also -rc6.
> 
> 
> Dag Bakke
> 
> 
> Tested-by: Dag Bakke <[EMAIL PROTECTED]>
> 
> --- linux/drivers/acpi/processor_idle.c.org   2007-06-10
> 14:18:27.000000000 -0700
> +++ linux/drivers/acpi/processor_idle.c       2007-06-10 14:27:45.000000000 
> -0700
> @@ -67,6 +67,8 @@ ACPI_MODULE_NAME("processor_idle");
>  #define C2_OVERHEAD                  1       /* 1us */
>  #define C3_OVERHEAD                  1       /* 1us */
> 
> +static int forced_c3;
> +
>  void acpi_max_cstate_changed(void)
>  {
>       /* Driver will reset devices' max cstate limit */
> @@ -115,6 +117,20 @@ static int set_max_cstate(struct dmi_sys
>       return 0;
>  }
> 
> +/*
> + * Some (Dell) machines have a too large C3 latency set, but it still
> works completely.
> + * Dell provides a driver for other operating systems to hack around
> this bug, so we know
> + * it's safe.
> + */
> +static int dmi_force_c3(struct dmi_system_id *id)
> +{
> +     forced_c3 = 1;
> +
> +     printk(KERN_NOTICE PREFIX "%s detected - Force enabling C3.", 
> id->ident);
> +
> +     return 0;
> +}
> +
>  /* Actually this shouldn't be __cpuinitdata, would be better to fix the
>     callers to only run once -AK */
>  static struct dmi_system_id __cpuinitdata processor_power_dmi_table[] = {
> @@ -173,6 +189,9 @@ static struct dmi_system_id __cpuinitdat
>         DMI_MATCH(DMI_BIOS_VENDOR,"Phoenix Technologies LTD"),
>         DMI_MATCH(DMI_BIOS_VERSION,"SHE845M0.86C.0013.D.0302131307")},
>        (void *)2},
> +     { dmi_force_c3, "Dell Inspiron 8200", {
> +       DMI_MATCH(DMI_SYS_VENDOR,"Dell Computer Corporation"),
> +       DMI_MATCH(DMI_PRODUCT_NAME,"Inspiron 8200") }, NULL},
>       {},
>  };
> 
> @@ -474,11 +493,12 @@ static void acpi_processor_power_verify_
>        * C3 latency must be less than or equal to 1000
>        * microseconds.
>        */
> -     else if (cx->latency > ACPI_PROCESSOR_MAX_C3_LATENCY) {
> +     if (cx->latency > ACPI_PROCESSOR_MAX_C3_LATENCY && !forced_c3) {
>               ACPI_DEBUG_PRINT((ACPI_DB_INFO,
>                                 "latency too large [%d]\n", cx->latency));
>               return;
> -     }
> +     } else if (forced_c3)
> +             cx->latency = ACPI_PROCESSOR_MAX_C3_LATENCY;
> 
>       /*
>        * PIIX4 Erratum #18: We don't support C3 when Type-F (fast)
> -
> To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
> the body of a message to [EMAIL PROTECTED]
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 
-
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to