On Tue, 2020-08-11 at 23:31 +0800, Zhang Rui wrote:
> There will be more platforms with different fixed energy units.
> Enhance the code to support different rapl unit quirks for different
> platforms.
This seems like one quirk per platform.
Should multiple quirks on individual platforms be supported?
> diff --git a/arch/x86/events/rapl.c b/arch/x86/events/rapl.c
[]
> @@ -130,11 +130,16 @@ struct rapl_pmus {
> struct rapl_pmu *pmus[];
> };
>
> +enum rapl_unit_quirk {
> + RAPL_UNIT_QUIRK_NONE,
> + RAPL_UNIT_QUIRK_INTEL_HSW,
> +};
> +
> struct rapl_model {
> struct perf_msr *rapl_msrs;
> unsigned long events;
> unsigned int msr_power_unit;
> - bool apply_quirk;
> + enum rapl_unit_quirk unit_quirk;
> };