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

Re: [Xen-devel] [RFC PATCH 02/31] pm: move processor_perf.h file to the xen/include/xen location



On Thu, 9 Nov 2017, Oleksandr Tyshchenko wrote:
> From: Oleksandr Dmytryshyn <oleksandr.dmytryshyn@xxxxxxxxxxxxxxx>
> 
> Cpufreq driver should be more generalizable (not ACPI-specific).
> Thus this file should be placed to more convenient location.
> 
> This is a rebased version of the original patch:
> https://lists.xen.org/archives/html/xen-devel/2014-11/msg00934.html
> 
> Signed-off-by: Oleksandr Dmytryshyn <oleksandr.dmytryshyn@xxxxxxxxxxxxxxx>
> Signed-off-by: Oleksandr Tyshchenko <oleksandr_tyshchenko@xxxxxxxx>
> CC: Jan Beulich <jbeulich@xxxxxxxx>
> CC: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
> CC: Stefano Stabellini <sstabellini@xxxxxxxxxx>
> CC: Julien Grall <julien.grall@xxxxxxxxxx>

Reviewed-by: Stefano Stabellini <sstabellini@xxxxxxxxxx>


> ---
>  MAINTAINERS                               |  2 +-
>  xen/arch/x86/platform_hypercall.c         |  2 +-
>  xen/include/acpi/cpufreq/processor_perf.h | 63 
> -------------------------------
>  xen/include/xen/cpufreq.h                 |  2 +-
>  xen/include/xen/processor_perf.h          | 63 
> +++++++++++++++++++++++++++++++
>  5 files changed, 66 insertions(+), 66 deletions(-)
>  delete mode 100644 xen/include/acpi/cpufreq/processor_perf.h
>  create mode 100644 xen/include/xen/processor_perf.h
> 
> diff --git a/MAINTAINERS b/MAINTAINERS
> index 524e067..9794a81 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -294,8 +294,8 @@ F:        xen/arch/x86/acpi/
>  X:   xen/arch/x86/acpi/boot.c
>  X:   xen/arch/x86/acpi/lib.c
>  F:   xen/drivers/cpufreq/
> -F:   xen/include/acpi/cpufreq/
>  F:   xen/include/xen/cpufreq.h
> +F:   xen/include/xen/processor_perf.h
>  
>  PUBLIC I/O INTERFACES AND PV DRIVERS DESIGNS
>  M:  Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>
> diff --git a/xen/arch/x86/platform_hypercall.c 
> b/xen/arch/x86/platform_hypercall.c
> index ebc2f39..17c8304 100644
> --- a/xen/arch/x86/platform_hypercall.c
> +++ b/xen/arch/x86/platform_hypercall.c
> @@ -25,7 +25,7 @@
>  #include <xen/symbols.h>
>  #include <asm/current.h>
>  #include <public/platform.h>
> -#include <acpi/cpufreq/processor_perf.h>
> +#include <xen/processor_perf.h>
>  #include <asm/edd.h>
>  #include <asm/mtrr.h>
>  #include <asm/io_apic.h>
> diff --git a/xen/include/acpi/cpufreq/processor_perf.h 
> b/xen/include/acpi/cpufreq/processor_perf.h
> deleted file mode 100644
> index d8a1ba6..0000000
> --- a/xen/include/acpi/cpufreq/processor_perf.h
> +++ /dev/null
> @@ -1,63 +0,0 @@
> -#ifndef __XEN_PROCESSOR_PM_H__
> -#define __XEN_PROCESSOR_PM_H__
> -
> -#include <public/platform.h>
> -#include <public/sysctl.h>
> -#include <xen/acpi.h>
> -
> -#define XEN_PX_INIT 0x80000000
> -
> -int powernow_cpufreq_init(void);
> -unsigned int powernow_register_driver(void);
> -unsigned int get_measured_perf(unsigned int cpu, unsigned int flag);
> -void cpufreq_residency_update(unsigned int, uint8_t);
> -void cpufreq_statistic_update(unsigned int, uint8_t, uint8_t);
> -int  cpufreq_statistic_init(unsigned int);
> -void cpufreq_statistic_exit(unsigned int);
> -void cpufreq_statistic_reset(unsigned int);
> -
> -int  cpufreq_limit_change(unsigned int);
> -
> -int  cpufreq_add_cpu(unsigned int);
> -int  cpufreq_del_cpu(unsigned int);
> -
> -struct processor_performance {
> -    uint32_t state;
> -    uint32_t platform_limit;
> -    struct xen_pct_register control_register;
> -    struct xen_pct_register status_register;
> -    uint32_t state_count;
> -    struct xen_processor_px *states;
> -    struct xen_psd_package domain_info;
> -    uint32_t shared_type;
> -
> -    uint32_t init;
> -};
> -
> -struct processor_pminfo {
> -    uint32_t acpi_id;
> -    uint32_t id;
> -    struct processor_performance    perf;
> -};
> -
> -extern struct processor_pminfo *processor_pminfo[NR_CPUS];
> -
> -struct px_stat {
> -    uint8_t total;        /* total Px states */
> -    uint8_t usable;       /* usable Px states */
> -    uint8_t last;         /* last Px state */
> -    uint8_t cur;          /* current Px state */
> -    uint64_t *trans_pt;   /* Px transition table */
> -    pm_px_val_t *pt;
> -};
> -
> -struct pm_px {
> -    struct px_stat u;
> -    uint64_t prev_state_wall;
> -    uint64_t prev_idle_wall;
> -};
> -
> -DECLARE_PER_CPU(struct pm_px *, cpufreq_statistic_data);
> -
> -int cpufreq_cpu_init(unsigned int cpuid);
> -#endif /* __XEN_PROCESSOR_PM_H__ */
> diff --git a/xen/include/xen/cpufreq.h b/xen/include/xen/cpufreq.h
> index ed38a6c..30c70c9 100644
> --- a/xen/include/xen/cpufreq.h
> +++ b/xen/include/xen/cpufreq.h
> @@ -21,7 +21,7 @@
>  #include <xen/errno.h>
>  #include <xen/cpumask.h>
>  
> -#include <acpi/cpufreq/processor_perf.h>
> +#include <xen/processor_perf.h>
>  
>  DECLARE_PER_CPU(spinlock_t, cpufreq_statistic_lock);
>  
> diff --git a/xen/include/xen/processor_perf.h 
> b/xen/include/xen/processor_perf.h
> new file mode 100644
> index 0000000..d8a1ba6
> --- /dev/null
> +++ b/xen/include/xen/processor_perf.h
> @@ -0,0 +1,63 @@
> +#ifndef __XEN_PROCESSOR_PM_H__
> +#define __XEN_PROCESSOR_PM_H__
> +
> +#include <public/platform.h>
> +#include <public/sysctl.h>
> +#include <xen/acpi.h>
> +
> +#define XEN_PX_INIT 0x80000000
> +
> +int powernow_cpufreq_init(void);
> +unsigned int powernow_register_driver(void);
> +unsigned int get_measured_perf(unsigned int cpu, unsigned int flag);
> +void cpufreq_residency_update(unsigned int, uint8_t);
> +void cpufreq_statistic_update(unsigned int, uint8_t, uint8_t);
> +int  cpufreq_statistic_init(unsigned int);
> +void cpufreq_statistic_exit(unsigned int);
> +void cpufreq_statistic_reset(unsigned int);
> +
> +int  cpufreq_limit_change(unsigned int);
> +
> +int  cpufreq_add_cpu(unsigned int);
> +int  cpufreq_del_cpu(unsigned int);
> +
> +struct processor_performance {
> +    uint32_t state;
> +    uint32_t platform_limit;
> +    struct xen_pct_register control_register;
> +    struct xen_pct_register status_register;
> +    uint32_t state_count;
> +    struct xen_processor_px *states;
> +    struct xen_psd_package domain_info;
> +    uint32_t shared_type;
> +
> +    uint32_t init;
> +};
> +
> +struct processor_pminfo {
> +    uint32_t acpi_id;
> +    uint32_t id;
> +    struct processor_performance    perf;
> +};
> +
> +extern struct processor_pminfo *processor_pminfo[NR_CPUS];
> +
> +struct px_stat {
> +    uint8_t total;        /* total Px states */
> +    uint8_t usable;       /* usable Px states */
> +    uint8_t last;         /* last Px state */
> +    uint8_t cur;          /* current Px state */
> +    uint64_t *trans_pt;   /* Px transition table */
> +    pm_px_val_t *pt;
> +};
> +
> +struct pm_px {
> +    struct px_stat u;
> +    uint64_t prev_state_wall;
> +    uint64_t prev_idle_wall;
> +};
> +
> +DECLARE_PER_CPU(struct pm_px *, cpufreq_statistic_data);
> +
> +int cpufreq_cpu_init(unsigned int cpuid);
> +#endif /* __XEN_PROCESSOR_PM_H__ */
> -- 
> 2.7.4
> 

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.