All of lore.kernel.org
 help / color / mirror / Atom feed
From: Len Brown <lenb@kernel.org>
To: Dag Bakke <dag@bakke.com>
Cc: linux-acpi@vger.kernel.org, arjan@linux.intel.com
Subject: Re: [PATCH] Enable C3 Power State on Dell Inspiron 8200
Date: Tue, 26 Jun 2007 17:30:12 -0400	[thread overview]
Message-ID: <200706261730.12935.lenb@kernel.org> (raw)
In-Reply-To: <468024A5.4010505@bakke.com>

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 <dag@bakke.com>
> 
> --- 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 majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 

  reply	other threads:[~2007-07-02  7:05 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-06-25 20:25 [PATCH] Enable C3 Power State on Dell Inspiron 8200 Dag Bakke
2007-06-26 21:30 ` Len Brown [this message]
2007-07-02 16:02   ` Dag Bakke

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=200706261730.12935.lenb@kernel.org \
    --to=lenb@kernel.org \
    --cc=arjan@linux.intel.com \
    --cc=dag@bakke.com \
    --cc=linux-acpi@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.