Fwd: [RFC PATCH] _TPC support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



---------- Forwarded message ----------
From: Luming Yu <luming.yu@xxxxxxxxx>
Date: Apr 25, 2007 10:23 PM
Subject: Re: [RFC PATCH] _TPC support
To: Shaohua Li <shaohua.li@xxxxxxxxx>


On 3/20/07, Shaohua Li <shaohua.li@xxxxxxxxx> wrote:
On Mon, 2007-03-19 at 17:30 +0800, Luming Yu wrote:
> adds _TPC support which support Throttling Present Capabilities
> change for ACPI processor driver
>
> signed-off-by: Luming Yu <Luming.yu@xxxxxxxxx>
> --
>
>  drivers/acpi/processor_core.c       |    4 ++++
>  drivers/acpi/processor_throttling.c |   30
> ++++++++++++++++++++++++++++--
>  include/acpi/processor.h            |    3 +++
>  3 files changed, 35 insertions(+), 2 deletions(-)
>
>
> diff --git a/drivers/acpi/processor_core.c
> b/drivers/acpi/processor_core.c
> index ddc9e20..b2093ca 100644
> --- a/drivers/acpi/processor_core.c
> +++ b/drivers/acpi/processor_core.c
> @@ -67,6 +67,7 @@ #define ACPI_PROCESSOR_FILE_THROTTLING        "
>  #define ACPI_PROCESSOR_FILE_LIMIT      "limit"
>  #define ACPI_PROCESSOR_NOTIFY_PERFORMANCE 0x80
>  #define ACPI_PROCESSOR_NOTIFY_POWER    0x81
> +#define ACPI_PROCESSOR_NOTIFY_THROTTLING       0x82
>
>  #define ACPI_PROCESSOR_LIMIT_USER      0
>  #define ACPI_PROCESSOR_LIMIT_THERMAL   1
> @@ -702,6 +703,9 @@ static void acpi_processor_notify(acpi_h
>                 acpi_processor_cst_has_changed(pr);
>                 acpi_bus_generate_event(device, event, 0);
>                 break;
> +       case ACPI_PROCESSOR_NOTIFY_THROTTLING:
> +               acpi_processor_tstate_has_changed(pr);
> +               acpi_bus_generate_event(device, event, 0);
>         default:
>                 ACPI_DEBUG_PRINT((ACPI_DB_INFO,
>                                   "Unsupported event [0x%x]\n",
> event));
> diff --git a/drivers/acpi/processor_throttling.c
> b/drivers/acpi/processor_throttling.c
> index b334860..0528b27 100644
> --- a/drivers/acpi/processor_throttling.c
> +++ b/drivers/acpi/processor_throttling.c
> @@ -44,6 +44,27 @@ #define ACPI_PROCESSOR_CLASS
>  #define _COMPONENT              ACPI_PROCESSOR_COMPONENT
>  ACPI_MODULE_NAME("processor_throttling");
>
> +static int acpi_processor_get_platform_limit(struct acpi_processor
> *pr)
> +{
> +       acpi_status status = 0;
> +       unsigned long tpc = 0;
> +
> +       if(!pr)
> +               return -EINVAL;
> +       status = acpi_evaluate_integer(pr->handle, "_TPC", NULL,
> &tpc);
> +       if(ACPI_FAILURE(status) && status != AE_NOT_FOUND){
> +               ACPI_EXCEPTION((AE_INFO, status, "Evaluating _TPC"));
> +               return -ENODEV;
> +       }
> +       pr->throttling_platform_limit = (int)tpc;
> +       return 0;
> +}
I think we should reset throttling here, as limit is changed, previous
throttling setting might not be feasible.

It may make sense to change the current throttling level to be in line
with the changes of the throttling platform limit. Through I expect it
would be initiated from user land (a event has be sent to  user space)
-
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux IBM ACPI]     [Linux Power Management]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux