Re: [PATCH 1/4] cpufreq: allow driver-specific flags

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

 



On 5 October 2014 06:11, Mike Turquette <mike.turquette@xxxxxxxxxx> wrote:
> For reference, here is a patch that I've had locally in my tree for a
> couples months. I'm using it while prototyping some ways to integrate
> CPUfreq with the scheduler. It is almost identical to Thomas's approach
> but it doesn't try to mask off some flags. Additionally it does NOT
> change the u8 return type, which is currently how struct
> cpufreq_driver->flags is defined today. This is probably not good and
> should be an unsigned int or unsigned long so that the api is a bit more
> forward-looking.

Probably yes.

> From 0053dfc6b09fa0c5923b7dcba23b67c1c005cb88 Mon Sep 17 00:00:00 2001
> From: Mike Turquette <mturquette@xxxxxxxxxx>
> Date: Sun, 3 Aug 2014 21:25:38 -0700
> Subject: [PATCH] cpufreq: new function to query driver for flags
>
> Signed-off-by: Mike Turquette <mturquette@xxxxxxxxxx>
> ---
>  drivers/cpufreq/cpufreq.c | 9 +++++++++
>  include/linux/cpufreq.h   | 1 +
>  2 files changed, 10 insertions(+)
>
> diff --git a/drivers/cpufreq/cpufreq.c b/drivers/cpufreq/cpufreq.c
> index 1abb44d..515e905 100644
> --- a/drivers/cpufreq/cpufreq.c
> +++ b/drivers/cpufreq/cpufreq.c
> @@ -2003,6 +2003,15 @@ int cpufreq_driver_target(struct cpufreq_policy *policy,
>  }
>  EXPORT_SYMBOL_GPL(cpufreq_driver_target);
>
> +u8 cpufreq_driver_get_flags(void)
> +{
> +       if (!cpufreq_driver)
> +               return 0;

Probably you need to return some error here. How would the caller know if
there is no cpufreq-driver there..

> +       return cpufreq_driver->flags;
> +}
> +EXPORT_SYMBOL_GPL(cpufreq_driver_get_flags);
> +
>  /*
>   * when "event" is CPUFREQ_GOV_LIMITS
>   */
> diff --git a/include/linux/cpufreq.h b/include/linux/cpufreq.h
> index 221f0eb..5a97f5f 100644
> --- a/include/linux/cpufreq.h
> +++ b/include/linux/cpufreq.h
> @@ -417,6 +417,7 @@ int cpufreq_driver_target(struct cpufreq_policy *policy,
>  int __cpufreq_driver_target(struct cpufreq_policy *policy,
>                                    unsigned int target_freq,
>                                    unsigned int relation);
> +u8 cpufreq_driver_get_flags(void);
>  int cpufreq_register_governor(struct cpufreq_governor *governor);
>  void cpufreq_unregister_governor(struct cpufreq_governor *governor);
>
> --
> 1.8.3.2
>
--
To unsubscribe from this list: send the line "unsubscribe linux-arm-msm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [Linux for Sparc]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux