On 05/31/2016 01:41 PM, Jacob Pan wrote:
> --- a/drivers/powercap/intel_rapl.c
> +++ b/drivers/powercap/intel_rapl.c
> @@ -1137,6 +1137,7 @@ static const struct x86_cpu_id rapl_ids[] __initconst = 
> {
>       RAPL_CPU(0x57, rapl_defaults_hsw_server),/* Knights Landing */
>       RAPL_CPU(0x8E, rapl_defaults_core),/* Kabylake */
>       RAPL_CPU(0x9E, rapl_defaults_core),/* Kabylake */
> +     RAPL_CPU(0x5F, rapl_defaults_core),/* Denverton micro server */
>       {}
>  };

Not to derail this individual patch... but do we really want to continue
open-coding CPU model/family combos all over arch/x86?

For instance, arch/x86/events/intel/core.c has:

>         case 142: /* 14nm Kabylake Mobile */
>         case 158: /* 14nm Kabylake Desktop */
>         case 78: /* 14nm Skylake Mobile */
>         case 94: /* 14nm Skylake Desktop */
>         case 85: /* 14nm Skylake Server */

Which duplicates the two Kabylake family numbers from the RAPL_CPU()
context above (just in decimal instead of hex).

Should we just start sticking these things in a header like:

#define X86_INTEL_FAMILY_KABYLAKE1      0x8E
#define X86_INTEL_FAMILY_KABYLAKE2      0x9E
#define X86_INTEL_FAMILY_DENVERTON      0x5F

So we have this:

        RAPL_CPU(X86_INTEL_FAMILY_DENVERTON, rapl_defaults_core),

instead of having to explain our magic number in a comment.

Reply via email to