Lines Matching refs:props
795 struct mpam_props *props = &ris->props; in mpam_ris_hw_probe() local
805 props->cmax_wd = FIELD_GET(MPAMF_CCAP_IDR_CMAX_WD, ccap_features); in mpam_ris_hw_probe()
806 if (props->cmax_wd && in mpam_ris_hw_probe()
808 mpam_set_feature(mpam_feat_cmax_softlim, props); in mpam_ris_hw_probe()
810 if (props->cmax_wd && in mpam_ris_hw_probe()
812 mpam_set_feature(mpam_feat_cmax_cmax, props); in mpam_ris_hw_probe()
814 if (props->cmax_wd && in mpam_ris_hw_probe()
816 mpam_set_feature(mpam_feat_cmax_cmin, props); in mpam_ris_hw_probe()
818 props->cassoc_wd = FIELD_GET(MPAMF_CCAP_IDR_CASSOC_WD, ccap_features); in mpam_ris_hw_probe()
819 if (props->cassoc_wd && in mpam_ris_hw_probe()
821 mpam_set_feature(mpam_feat_cmax_cassoc, props); in mpam_ris_hw_probe()
828 props->cpbm_wd = FIELD_GET(MPAMF_CPOR_IDR_CPBM_WD, cpor_features); in mpam_ris_hw_probe()
829 if (props->cpbm_wd) in mpam_ris_hw_probe()
830 mpam_set_feature(mpam_feat_cpor_part, props); in mpam_ris_hw_probe()
838 props->mbw_pbm_bits = FIELD_GET(MPAMF_MBW_IDR_BWPBM_WD, mbw_features); in mpam_ris_hw_probe()
839 if (props->mbw_pbm_bits && in mpam_ris_hw_probe()
841 mpam_set_feature(mpam_feat_mbw_part, props); in mpam_ris_hw_probe()
843 props->bwa_wd = FIELD_GET(MPAMF_MBW_IDR_BWA_WD, mbw_features); in mpam_ris_hw_probe()
849 props->bwa_wd = min(props->bwa_wd, 16); in mpam_ris_hw_probe()
851 if (props->bwa_wd && FIELD_GET(MPAMF_MBW_IDR_HAS_MAX, mbw_features)) in mpam_ris_hw_probe()
852 mpam_set_feature(mpam_feat_mbw_max, props); in mpam_ris_hw_probe()
854 if (props->bwa_wd && FIELD_GET(MPAMF_MBW_IDR_HAS_MIN, mbw_features)) in mpam_ris_hw_probe()
855 mpam_set_feature(mpam_feat_mbw_min, props); in mpam_ris_hw_probe()
857 if (props->bwa_wd && FIELD_GET(MPAMF_MBW_IDR_HAS_PROP, mbw_features)) in mpam_ris_hw_probe()
858 mpam_set_feature(mpam_feat_mbw_prop, props); in mpam_ris_hw_probe()
865 props->intpri_wd = FIELD_GET(MPAMF_PRI_IDR_INTPRI_WD, pri_features); in mpam_ris_hw_probe()
866 if (props->intpri_wd && FIELD_GET(MPAMF_PRI_IDR_HAS_INTPRI, pri_features)) { in mpam_ris_hw_probe()
867 mpam_set_feature(mpam_feat_intpri_part, props); in mpam_ris_hw_probe()
869 mpam_set_feature(mpam_feat_intpri_part_0_low, props); in mpam_ris_hw_probe()
872 props->dspri_wd = FIELD_GET(MPAMF_PRI_IDR_DSPRI_WD, pri_features); in mpam_ris_hw_probe()
873 if (props->dspri_wd && FIELD_GET(MPAMF_PRI_IDR_HAS_DSPRI, pri_features)) { in mpam_ris_hw_probe()
874 mpam_set_feature(mpam_feat_dspri_part, props); in mpam_ris_hw_probe()
876 mpam_set_feature(mpam_feat_dspri_part_0_low, props); in mpam_ris_hw_probe()
896 props->num_csu_mon = FIELD_GET(MPAMF_CSUMON_IDR_NUM_MON, csumonidr); in mpam_ris_hw_probe()
897 if (props->num_csu_mon) { in mpam_ris_hw_probe()
900 mpam_set_feature(mpam_feat_msmon_csu, props); in mpam_ris_hw_probe()
903 mpam_set_feature(mpam_feat_msmon_csu_xcl, props); in mpam_ris_hw_probe()
920 props->num_mbwu_mon = FIELD_GET(MPAMF_MBWUMON_IDR_NUM_MON, mbwumon_idr); in mpam_ris_hw_probe()
921 if (props->num_mbwu_mon) { in mpam_ris_hw_probe()
922 mpam_set_feature(mpam_feat_msmon_mbwu, props); in mpam_ris_hw_probe()
925 mpam_set_feature(mpam_feat_msmon_mbwu_rwbw, props); in mpam_ris_hw_probe()
930 mpam_set_feature(mpam_feat_msmon_mbwu_63counter, props); in mpam_ris_hw_probe()
932 mpam_set_feature(mpam_feat_msmon_mbwu_44counter, props); in mpam_ris_hw_probe()
934 mpam_set_feature(mpam_feat_msmon_mbwu_31counter, props); in mpam_ris_hw_probe()
951 mpam_set_feature(mpam_feat_partid_nrw, props); in mpam_ris_hw_probe()
1034 return (mpam_has_feature(mpam_feat_msmon_mbwu_63counter, &ris->props) || in mpam_ris_has_mbwu_long_counter()
1035 mpam_has_feature(mpam_feat_msmon_mbwu_44counter, &ris->props)); in mpam_ris_has_mbwu_long_counter()
1098 if (mpam_has_feature(mpam_feat_msmon_csu_xcl, &m->ris->props)) in gen_msmon_ctl_flt_vals()
1107 if (mpam_has_feature(mpam_feat_msmon_mbwu_rwbw, &m->ris->props)) in gen_msmon_ctl_flt_vals()
1362 struct mpam_props *cprops = &class->props; in mpam_msmon_choose_counter()
1379 struct mpam_props *cprops = &class->props; in mpam_msmon_read()
1433 if (!mpam_has_feature(mpam_feat_msmon_mbwu, &vmsc->props)) in mpam_msmon_reset_mbwu()
1439 if (!mpam_has_feature(mpam_feat_msmon_mbwu, &ris->props)) in mpam_msmon_reset_mbwu()
1518 static u16 mpam_wa_t241_force_mbw_min_to_one(struct mpam_props *props) in mpam_wa_t241_force_mbw_min_to_one() argument
1522 res0_bits = 16 - props->bwa_wd; in mpam_wa_t241_force_mbw_min_to_one()
1523 max_hw_value = ((1 << props->bwa_wd) - 1) << res0_bits; in mpam_wa_t241_force_mbw_min_to_one()
1529 static u16 mpam_wa_t241_calc_min_from_max(struct mpam_props *props, in mpam_wa_t241_calc_min_from_max() argument
1540 max = GENMASK(15, 16 - props->bwa_wd); in mpam_wa_t241_calc_min_from_max()
1555 struct mpam_props *rprops = &ris->props; in mpam_reprogram_ris_partid()
1657 for (i = 0; i < ris->props.num_mbwu_mon; i++) { in mpam_restore_mbwu_state()
1682 for (i = 0; i < ris->props.num_mbwu_mon; i++) { in mpam_save_mbwu_state()
1814 if (mpam_has_feature(mpam_feat_msmon_mbwu, &ris->props)) in mpam_reprogram_msc()
2149 static bool mpam_has_bwa_wd_feature(struct mpam_props *props) in mpam_has_bwa_wd_feature() argument
2151 if (mpam_has_feature(mpam_feat_mbw_min, props)) in mpam_has_bwa_wd_feature()
2153 if (mpam_has_feature(mpam_feat_mbw_max, props)) in mpam_has_bwa_wd_feature()
2155 if (mpam_has_feature(mpam_feat_mbw_prop, props)) in mpam_has_bwa_wd_feature()
2161 static bool mpam_has_cmax_wd_feature(struct mpam_props *props) in mpam_has_cmax_wd_feature() argument
2163 if (mpam_has_feature(mpam_feat_cmax_cmax, props)) in mpam_has_cmax_wd_feature()
2165 if (mpam_has_feature(mpam_feat_cmax_cmin, props)) in mpam_has_cmax_wd_feature()
2318 struct mpam_props *cprops = &class->props; in __class_props_mismatch()
2319 struct mpam_props *vprops = &vmsc->props; in __class_props_mismatch()
2337 struct mpam_props *rprops = &ris->props; in __vmsc_props_mismatch()
2338 struct mpam_props *vprops = &vmsc->props; in __vmsc_props_mismatch()
2369 class->props = vmsc->props; in mpam_enable_init_class_features()
2396 mpam_clear_feature(mpam_feat_mbw_min, &class->props); in mpam_enable_merge_class_features()
2629 struct mpam_props *cprops = &comp->class->props; in mpam_reset_component_cfg()
2673 if (!vmsc->props.num_mbwu_mon) in __allocate_component_cfg()
2678 if (!ris->props.num_mbwu_mon) in __allocate_component_cfg()
2682 ris->props.num_mbwu_mon); in __allocate_component_cfg()