Lines Matching refs:model
35 #define CCI_PMU_CNTR_SIZE(model) ((model)->cntr_size) argument
36 #define CCI_PMU_CNTR_BASE(model, idx) ((idx) * CCI_PMU_CNTR_SIZE(model)) argument
40 #define CCI_PMU_MAX_HW_CNTRS(model) \ argument
41 ((model)->num_hw_cntrs + (model)->fixed_hw_cntrs)
104 const struct cci_pmu_model *model; member
360 if (ev_code >= cci_pmu->model->event_ranges[if_type].min && in cci400_validate_hw_event()
361 ev_code <= cci_pmu->model->event_ranges[if_type].max) in cci400_validate_hw_event()
571 if (ev_code >= cci_pmu->model->event_ranges[if_type].min && in cci500_validate_hw_event()
572 ev_code <= cci_pmu->model->event_ranges[if_type].max) in cci500_validate_hw_event()
623 if (ev_code >= cci_pmu->model->event_ranges[if_type].min && in cci550_validate_hw_event()
624 ev_code <= cci_pmu->model->event_ranges[if_type].max) in cci550_validate_hw_event()
707 CCI_PMU_CNTR_BASE(cci_pmu->model, idx) + offset); in pmu_read_register()
714 CCI_PMU_CNTR_BASE(cci_pmu->model, idx) + offset); in pmu_write_register()
792 if (cci_pmu->model->get_event_idx) in pmu_get_event_idx()
793 return cci_pmu->model->get_event_idx(cci_pmu, hw, cci_event); in pmu_get_event_idx()
809 !cci_pmu->model->validate_hw_event) in pmu_map_event()
812 return cci_pmu->model->validate_hw_event(cci_pmu, event->attr.config); in pmu_map_event()
899 if (cci_pmu->model->write_counters) in pmu_write_counters()
900 cci_pmu->model->write_counters(cci_pmu, mask); in pmu_write_counters()
1116 return (idx >= 0) && (idx < cci_pmu->model->fixed_hw_cntrs); in pmu_fixed_hw_idx()
1388 const struct cci_pmu_model *model = cci_pmu->model; in cci_pmu_init() local
1389 char *name = model->name; in cci_pmu_init()
1392 if (WARN_ON(model->num_hw_cntrs > NUM_HW_CNTRS_MAX)) in cci_pmu_init()
1394 if (WARN_ON(model->fixed_hw_cntrs > FIXED_HW_CNTRS_MAX)) in cci_pmu_init()
1397 pmu_event_attr_group.attrs = model->event_attrs; in cci_pmu_init()
1398 pmu_format_attr_group.attrs = model->format_attrs; in cci_pmu_init()
1403 .name = cci_pmu->model->name, in cci_pmu_init()
1419 if (num_cntrs > cci_pmu->model->num_hw_cntrs) { in cci_pmu_init()
1423 num_cntrs, cci_pmu->model->num_hw_cntrs); in cci_pmu_init()
1424 num_cntrs = cci_pmu->model->num_hw_cntrs; in cci_pmu_init()
1426 cci_pmu->num_cntrs = num_cntrs + cci_pmu->model->fixed_hw_cntrs; in cci_pmu_init()
1585 const struct cci_pmu_model *model; in cci_pmu_alloc() local
1598 model = of_device_get_match_data(dev); in cci_pmu_alloc()
1599 if (!model) { in cci_pmu_alloc()
1602 model = probe_cci_model(cci_pmu); in cci_pmu_alloc()
1604 if (!model) { in cci_pmu_alloc()
1609 cci_pmu->model = model; in cci_pmu_alloc()
1610 cci_pmu->irqs = devm_kcalloc(dev, CCI_PMU_MAX_HW_CNTRS(model), in cci_pmu_alloc()
1615 CCI_PMU_MAX_HW_CNTRS(model), in cci_pmu_alloc()
1621 CCI_PMU_MAX_HW_CNTRS(model), in cci_pmu_alloc()
1647 for (i = 0; i < CCI_PMU_MAX_HW_CNTRS(cci_pmu->model); i++) { in cci_pmu_probe()
1662 if (i < CCI_PMU_MAX_HW_CNTRS(cci_pmu->model)) { in cci_pmu_probe()
1664 i, CCI_PMU_MAX_HW_CNTRS(cci_pmu->model)); in cci_pmu_probe()
1682 pr_info("ARM %s PMU driver probed", cci_pmu->model->name); in cci_pmu_probe()