* hchrzani <[email protected]> wrote:

> CHA events in Knights Landing platform require programming filter registers 
> properly.
> Remote node, local node and NonNearMemCachable bits should be set to 1 at all 
> times.
> 
> Fixes: 77af003 ('perf/x86/intel/uncore: Add Knights Landing uncore PMU 
> support')
> Signed-off-by: Hubert Chrzaniuk <[email protected]>
> Signed-off-by: Lawrence F Meadows <[email protected]>
> ---
>  arch/x86/events/intel/uncore_snbep.c | 7 +++++++
>  1 file changed, 7 insertions(+)
> 
> diff --git a/arch/x86/events/intel/uncore_snbep.c 
> b/arch/x86/events/intel/uncore_snbep.c
> index ab2bcaa..4b9e294 100644
> --- a/arch/x86/events/intel/uncore_snbep.c
> +++ b/arch/x86/events/intel/uncore_snbep.c
> @@ -219,6 +219,9 @@
>  #define KNL_CHA_MSR_PMON_BOX_FILTER_TID              0x1ff
>  #define KNL_CHA_MSR_PMON_BOX_FILTER_STATE    (7 << 18)
>  #define KNL_CHA_MSR_PMON_BOX_FILTER_OP               (0xfffffe2aULL << 32)
> +#define KNL_CHA_MSR_PMON_BOX_FILER_REMOTE_NODE       (0x1ULL << 32)
> +#define KNL_CHA_MSR_PMON_BOX_FILTER_LOCAL_NODE       (0x1ULL << 33)
> +#define KNL_CHA_MSR_PMON_BOX_FILTER_NNC              (0x1ULL << 37)
>  
>  /* KNL EDC/MC UCLK */
>  #define KNL_UCLK_MSR_PMON_CTR0_LOW           0x400
> @@ -1902,6 +1905,10 @@ static int knl_cha_hw_config(struct intel_uncore_box 
> *box,
>               reg1->reg = HSWEP_C0_MSR_PMON_BOX_FILTER0 +
>                           KNL_CHA_MSR_OFFSET * box->pmu->pmu_idx;
>               reg1->config = event->attr.config1 & knl_cha_filter_mask(idx);
> +
> +             reg1->config |= KNL_CHA_MSR_PMON_BOX_FILER_REMOTE_NODE;
> +             reg1->config |= KNL_CHA_MSR_PMON_BOX_FILTER_LOCAL_NODE;
> +             reg1->config |= KNL_CHA_MSR_PMON_BOX_FILTER_NNC;

s/FILER/FILTER?

Thanks,

        Ingo

Reply via email to