Home
last modified time | relevance | path

Searched refs:pmc (Results 1 – 25 of 211) sorted by relevance

123456789

/kernel/linux/linux-5.10/drivers/net/wireless/ath/wil6210/
Dpmc.c21 static int wil_is_pmc_allocated(struct pmc_ctx *pmc) in wil_is_pmc_allocated() argument
23 return !!pmc->pring_va; in wil_is_pmc_allocated()
28 memset(&wil->pmc, 0, sizeof(struct pmc_ctx)); in wil_pmc_init()
29 mutex_init(&wil->pmc.lock); in wil_pmc_init()
44 struct pmc_ctx *pmc = &wil->pmc; in wil_pmc_alloc() local
50 mutex_lock(&pmc->lock); in wil_pmc_alloc()
52 if (wil_is_pmc_allocated(pmc)) { in wil_pmc_alloc()
81 pmc->num_descriptors = num_descriptors; in wil_pmc_alloc()
82 pmc->descriptor_size = descriptor_size; in wil_pmc_alloc()
88 pmc->descriptors = kcalloc(num_descriptors, in wil_pmc_alloc()
[all …]
/kernel/linux/linux-5.10/drivers/soc/tegra/
Dpmc.c236 struct tegra_pmc *pmc; member
314 void (*init)(struct tegra_pmc *pmc);
315 void (*setup_irq_polarity)(struct tegra_pmc *pmc,
320 int (*powergate_set)(struct tegra_pmc *pmc, unsigned int id,
410 static struct tegra_pmc *pmc = &(struct tegra_pmc) { variable
421 static u32 tegra_pmc_readl(struct tegra_pmc *pmc, unsigned long offset) in tegra_pmc_readl() argument
425 if (pmc->tz_only) { in tegra_pmc_readl()
429 if (pmc->dev) in tegra_pmc_readl()
430 dev_warn(pmc->dev, "%s(): SMC failed: %lu\n", in tegra_pmc_readl()
440 return readl(pmc->base + offset); in tegra_pmc_readl()
[all …]
/kernel/linux/linux-5.10/arch/x86/kvm/
Dpmu.c64 struct kvm_pmc *pmc = perf_event->overflow_handler_context; in kvm_perf_overflow() local
65 struct kvm_pmu *pmu = pmc_to_pmu(pmc); in kvm_perf_overflow()
67 if (!test_and_set_bit(pmc->idx, pmu->reprogram_pmi)) { in kvm_perf_overflow()
68 __set_bit(pmc->idx, (unsigned long *)&pmu->global_status); in kvm_perf_overflow()
69 kvm_make_request(KVM_REQ_PMU, pmc->vcpu); in kvm_perf_overflow()
77 struct kvm_pmc *pmc = perf_event->overflow_handler_context; in kvm_perf_overflow_intr() local
78 struct kvm_pmu *pmu = pmc_to_pmu(pmc); in kvm_perf_overflow_intr()
80 if (!test_and_set_bit(pmc->idx, pmu->reprogram_pmi)) { in kvm_perf_overflow_intr()
81 __set_bit(pmc->idx, (unsigned long *)&pmu->global_status); in kvm_perf_overflow_intr()
82 kvm_make_request(KVM_REQ_PMU, pmc->vcpu); in kvm_perf_overflow_intr()
[all …]
Dpmu.h9 #define pmc_to_pmu(pmc) (&(pmc)->vcpu->arch.pmu) argument
27 unsigned int (*pmc_perf_hw_id)(struct kvm_pmc *pmc);
29 bool (*pmc_is_enabled)(struct kvm_pmc *pmc);
43 static inline u64 pmc_bitmask(struct kvm_pmc *pmc) in pmc_bitmask() argument
45 struct kvm_pmu *pmu = pmc_to_pmu(pmc); in pmc_bitmask()
47 return pmu->counter_bitmask[pmc->type]; in pmc_bitmask()
50 static inline u64 pmc_read_counter(struct kvm_pmc *pmc) in pmc_read_counter() argument
54 counter = pmc->counter; in pmc_read_counter()
55 if (pmc->perf_event) in pmc_read_counter()
56 counter += perf_event_read_value(pmc->perf_event, in pmc_read_counter()
[all …]
/kernel/linux/linux-5.10/arch/powerpc/perf/
Dppc970-pmu.c147 int pmc, psel, unit, byte, bit; in p970_marked_instr_event() local
150 pmc = (event >> PM_PMC_SH) & PM_PMC_MSK; in p970_marked_instr_event()
152 if (pmc) { in p970_marked_instr_event()
153 if (direct_marked_event[pmc - 1] & (1 << psel)) in p970_marked_instr_event()
156 bit = (pmc <= 4)? pmc - 1: 8 - pmc; in p970_marked_instr_event()
195 int pmc, byte, unit, sh, spcsel; in p970_get_constraint() local
199 pmc = (event >> PM_PMC_SH) & PM_PMC_MSK; in p970_get_constraint()
200 if (pmc) { in p970_get_constraint()
201 if (pmc > 8) in p970_get_constraint()
203 sh = (pmc - 1) * 2; in p970_get_constraint()
[all …]
Dpower7-pmu.c86 int pmc, sh, unit; in power7_get_constraint() local
89 pmc = (event >> PM_PMC_SH) & PM_PMC_MSK; in power7_get_constraint()
90 if (pmc) { in power7_get_constraint()
91 if (pmc > 6) in power7_get_constraint()
93 sh = (pmc - 1) * 2; in power7_get_constraint()
96 if (pmc >= 5 && !(event == 0x500fa || event == 0x600f4)) in power7_get_constraint()
99 if (pmc < 5) { in power7_get_constraint()
146 int pmc, psel; in find_alternative_decode() local
149 pmc = (event >> PM_PMC_SH) & PM_PMC_MSK; in find_alternative_decode()
151 if ((pmc == 2 || pmc == 4) && (psel & ~7) == 0x40) in find_alternative_decode()
[all …]
Dpower6-pmu.c139 int pmc, psel, ptype; in power6_marked_instr_event() local
143 pmc = (event >> PM_PMC_SH) & PM_PMC_MSK; in power6_marked_instr_event()
145 if (pmc >= 5) in power6_marked_instr_event()
151 if (pmc == 0 || !(ptype & (1 << (pmc - 1)))) in power6_marked_instr_event()
159 bit = ptype ^ (pmc - 1); in power6_marked_instr_event()
181 unsigned int pmc, ev, b, u, s, psel; in p6_compute_mmcr() local
188 pmc = (event[i] >> PM_PMC_SH) & PM_PMC_MSK; in p6_compute_mmcr()
189 if (pmc) { in p6_compute_mmcr()
190 if (pmc_inuse & (1 << (pmc - 1))) in p6_compute_mmcr()
192 pmc_inuse |= 1 << (pmc - 1); in p6_compute_mmcr()
[all …]
Dpower5-pmu.c141 int pmc, byte, unit, sh; in power5_get_constraint() local
146 pmc = (event >> PM_PMC_SH) & PM_PMC_MSK; in power5_get_constraint()
147 if (pmc) { in power5_get_constraint()
148 if (pmc > 6) in power5_get_constraint()
150 sh = (pmc - 1) * 2; in power5_get_constraint()
153 if (pmc <= 4) in power5_get_constraint()
154 grp = (pmc - 1) >> 1; in power5_get_constraint()
186 if (!pmc) in power5_get_constraint()
201 if (pmc < 5) { in power5_get_constraint()
253 int pmc, altpmc, pp, j; in find_alternative_bdecode() local
[all …]
Dpower5+-pmu.c137 int pmc, byte, unit, sh; in power5p_get_constraint() local
141 pmc = (event >> PM_PMC_SH) & PM_PMC_MSK; in power5p_get_constraint()
142 if (pmc) { in power5p_get_constraint()
143 if (pmc > 6) in power5p_get_constraint()
145 sh = (pmc - 1) * 2; in power5p_get_constraint()
148 if (pmc >= 5 && !(event == 0x500009 || event == 0x600005)) in power5p_get_constraint()
179 if (pmc < 5) { in power5p_get_constraint()
191 int pmc = (event >> PM_PMC_SH) & PM_PMC_MSK; in power5p_limited_pmc_event() local
193 return pmc == 5 || pmc == 6; in power5p_limited_pmc_event()
245 int pmc, altpmc, pp, j; in find_alternative_bdecode() local
[all …]
Dmpc7450-pmu.c39 int pmc; in mpc7450_classify_event() local
41 pmc = (event >> PM_PMC_SH) & PM_PMC_MSK; in mpc7450_classify_event()
42 if (pmc) { in mpc7450_classify_event()
43 if (pmc > N_COUNTER) in mpc7450_classify_event()
79 int pmc, sel; in mpc7450_threshold_use() local
81 pmc = (event >> PM_PMC_SH) & PM_PMC_MSK; in mpc7450_threshold_use()
83 switch (pmc) { in mpc7450_threshold_use()
153 int pmc, class; in mpc7450_get_constraint() local
161 pmc = ((unsigned int)event >> PM_PMC_SH) & PM_PMC_MSK; in mpc7450_get_constraint()
162 mask = pmcbits[pmc - 1][0]; in mpc7450_get_constraint()
[all …]
Disa207-common.h193 #define CNST_PMC_SHIFT(pmc) ((pmc - 1) * 2) argument
194 #define CNST_PMC_VAL(pmc) (1 << CNST_PMC_SHIFT(pmc)) argument
195 #define CNST_PMC_MASK(pmc) (2 << CNST_PMC_SHIFT(pmc)) argument
203 #define MMCR1_UNIT_SHIFT(pmc) (60 - (4 * ((pmc) - 1))) argument
204 #define MMCR1_COMBINE_SHIFT(pmc) (35 - ((pmc) - 1)) argument
205 #define MMCR1_PMCSEL_SHIFT(pmc) (24 - (((pmc) - 1)) * 8) argument
211 #define p9_MMCR1_COMBINE_SHIFT(pmc) (38 - ((pmc - 1) * 2)) argument
242 #define MMCR2_FCS(pmc) (1ull << (63 - (((pmc) - 1) * 9))) argument
243 #define MMCR2_FCP(pmc) (1ull << (62 - (((pmc) - 1) * 9))) argument
244 #define MMCR2_FCH(pmc) (1ull << (57 - (((pmc) - 1) * 9))) argument
[all …]
Disa207-common.c16 PMU_FORMAT_ATTR(pmc, "config:16-19");
127 static unsigned long combine_shift(unsigned long pmc) in combine_shift() argument
130 return p9_MMCR1_COMBINE_SHIFT(pmc); in combine_shift()
132 return MMCR1_COMBINE_SHIFT(pmc); in combine_shift()
261 unsigned int unit, pmc, cache, ebb; in isa207_get_constraint() local
269 pmc = (event >> EVENT_PMC_SHIFT) & EVENT_PMC_MASK; in isa207_get_constraint()
279 if (pmc) { in isa207_get_constraint()
282 if (pmc > 6) in isa207_get_constraint()
288 if (pmc >= 5 && base_event != 0x500fa && in isa207_get_constraint()
292 mask |= CNST_PMC_MASK(pmc); in isa207_get_constraint()
[all …]
/kernel/linux/linux-5.10/arch/arm/mach-at91/
Dpm_suspend.S18 pmc .req r0 label
27 1: ldr tmp1, [pmc, #AT91_PMC_SR]
36 1: ldr tmp1, [pmc, #AT91_PMC_SR]
45 1: ldr tmp1, [pmc, #AT91_PMC_SR]
57 str tmp1, [pmc, #AT91_PMC_SCDR]
126 ldr pmc, .pmc_base
145 ldr pmc, .pmc_base
147 ldr tmp1, [pmc, tmp2]
149 str tmp1, [pmc, tmp2]
166 ldr pmc, .pmc_base
[all …]
/kernel/linux/linux-5.10/drivers/mfd/
Dintel_pmc_bxt.c83 int intel_pmc_gcr_read64(struct intel_pmc_dev *pmc, u32 offset, u64 *data) in intel_pmc_gcr_read64() argument
88 spin_lock(&pmc->gcr_lock); in intel_pmc_gcr_read64()
89 *data = readq(pmc->gcr_mem_base + offset); in intel_pmc_gcr_read64()
90 spin_unlock(&pmc->gcr_lock); in intel_pmc_gcr_read64()
108 int intel_pmc_gcr_update(struct intel_pmc_dev *pmc, u32 offset, u32 mask, u32 val) in intel_pmc_gcr_update() argument
115 spin_lock(&pmc->gcr_lock); in intel_pmc_gcr_update()
116 new_val = readl(pmc->gcr_mem_base + offset); in intel_pmc_gcr_update()
119 writel(new_val, pmc->gcr_mem_base + offset); in intel_pmc_gcr_update()
121 new_val = readl(pmc->gcr_mem_base + offset); in intel_pmc_gcr_update()
122 spin_unlock(&pmc->gcr_lock); in intel_pmc_gcr_update()
[all …]
/kernel/linux/linux-5.10/arch/arm64/kvm/
Dpmu-emul.c19 static void kvm_pmu_stop_counter(struct kvm_vcpu *vcpu, struct kvm_pmc *pmc);
49 static struct kvm_vcpu *kvm_pmc_to_vcpu(struct kvm_pmc *pmc) in kvm_pmc_to_vcpu() argument
54 pmc -= pmc->idx; in kvm_pmc_to_vcpu()
55 pmu = container_of(pmc, struct kvm_pmu, pmc[0]); in kvm_pmc_to_vcpu()
64 static bool kvm_pmu_pmc_is_chained(struct kvm_pmc *pmc) in kvm_pmu_pmc_is_chained() argument
66 struct kvm_vcpu *vcpu = kvm_pmc_to_vcpu(pmc); in kvm_pmu_pmc_is_chained()
68 return test_bit(pmc->idx >> 1, vcpu->arch.pmu.chained); in kvm_pmu_pmc_is_chained()
87 static struct kvm_pmc *kvm_pmu_get_canonical_pmc(struct kvm_pmc *pmc) in kvm_pmu_get_canonical_pmc() argument
89 if (kvm_pmu_pmc_is_chained(pmc) && in kvm_pmu_get_canonical_pmc()
90 kvm_pmu_idx_is_high_counter(pmc->idx)) in kvm_pmu_get_canonical_pmc()
[all …]
/kernel/linux/linux-5.10/net/ipv4/
Digmp.c160 static int sf_setstate(struct ip_mc_list *pmc);
161 static void sf_markstate(struct ip_mc_list *pmc);
163 static void ip_mc_clear_src(struct ip_mc_list *pmc);
175 #define for_each_pmc_rcu(in_dev, pmc) \ argument
176 for (pmc = rcu_dereference(in_dev->mc_list); \
177 pmc != NULL; \
178 pmc = rcu_dereference(pmc->next_rcu))
180 #define for_each_pmc_rtnl(in_dev, pmc) \ argument
181 for (pmc = rtnl_dereference(in_dev->mc_list); \
182 pmc != NULL; \
[all …]
/kernel/linux/linux-5.10/arch/x86/kvm/vmx/
Dpmu_intel.c45 struct kvm_pmc *pmc; in reprogram_fixed_counters() local
47 pmc = get_fixed_pmc(pmu, MSR_CORE_PERF_FIXED_CTR0 + i); in reprogram_fixed_counters()
53 reprogram_fixed_counter(pmc, new_ctrl, i); in reprogram_fixed_counters()
71 static unsigned int intel_pmc_perf_hw_id(struct kvm_pmc *pmc) in intel_pmc_perf_hw_id() argument
73 struct kvm_pmu *pmu = pmc_to_pmu(pmc); in intel_pmc_perf_hw_id()
74 u8 event_select = pmc->eventsel & ARCH_PERFMON_EVENTSEL_EVENT; in intel_pmc_perf_hw_id()
75 u8 unit_mask = (pmc->eventsel & ARCH_PERFMON_EVENTSEL_UMASK) >> 8; in intel_pmc_perf_hw_id()
103 static bool intel_pmc_is_enabled(struct kvm_pmc *pmc) in intel_pmc_is_enabled() argument
105 struct kvm_pmu *pmu = pmc_to_pmu(pmc); in intel_pmc_is_enabled()
110 return test_bit(pmc->idx, (unsigned long *)&pmu->global_ctrl); in intel_pmc_is_enabled()
[all …]
/kernel/linux/linux-5.10/net/ipv6/
Dmcast.c79 static void mld_add_delrec(struct inet6_dev *idev, struct ifmcaddr6 *pmc);
80 static void mld_del_delrec(struct inet6_dev *idev, struct ifmcaddr6 *pmc);
83 static int sf_setstate(struct ifmcaddr6 *pmc);
84 static void sf_markstate(struct ifmcaddr6 *pmc);
85 static void ip6_mc_clear_src(struct ifmcaddr6 *pmc);
116 #define for_each_pmc_rcu(np, pmc) \ argument
117 for (pmc = rcu_dereference(np->ipv6_mc_list); \
118 pmc != NULL; \
119 pmc = rcu_dereference(pmc->next))
332 struct ipv6_mc_socklist *pmc; in ip6_mc_source() local
[all …]
/kernel/linux/linux-5.10/drivers/platform/x86/
Dpmc_atom.c203 static inline u32 pmc_reg_read(struct pmc_dev *pmc, int reg_offset) in pmc_reg_read() argument
205 return readl(pmc->regmap + reg_offset); in pmc_reg_read()
208 static inline void pmc_reg_write(struct pmc_dev *pmc, int reg_offset, u32 val) in pmc_reg_write() argument
210 writel(val, pmc->regmap + reg_offset); in pmc_reg_write()
215 struct pmc_dev *pmc = &pmc_device; in pmc_atom_read() local
217 if (!pmc->init) in pmc_atom_read()
220 *value = pmc_reg_read(pmc, offset); in pmc_atom_read()
227 struct pmc_dev *pmc = &pmc_device; in pmc_atom_write() local
229 if (!pmc->init) in pmc_atom_write()
232 pmc_reg_write(pmc, offset, value); in pmc_atom_write()
[all …]
/kernel/linux/linux-5.10/arch/x86/kvm/svm/
Dpmu.c145 static unsigned int amd_pmc_perf_hw_id(struct kvm_pmc *pmc) in amd_pmc_perf_hw_id() argument
148 u8 event_select = pmc->eventsel & ARCH_PERFMON_EVENTSEL_EVENT; in amd_pmc_perf_hw_id()
149 u8 unit_mask = (pmc->eventsel & ARCH_PERFMON_EVENTSEL_UMASK) >> 8; in amd_pmc_perf_hw_id()
152 if (guest_cpuid_family(pmc->vcpu) >= 0x17) in amd_pmc_perf_hw_id()
177 static bool amd_pmc_is_enabled(struct kvm_pmc *pmc) in amd_pmc_is_enabled() argument
232 struct kvm_pmc *pmc; in amd_msr_idx_to_pmc() local
234 pmc = get_gp_pmc_amd(pmu, msr, PMU_TYPE_COUNTER); in amd_msr_idx_to_pmc()
235 pmc = pmc ? pmc : get_gp_pmc_amd(pmu, msr, PMU_TYPE_EVNTSEL); in amd_msr_idx_to_pmc()
237 return pmc; in amd_msr_idx_to_pmc()
243 struct kvm_pmc *pmc; in amd_pmu_get_msr() local
[all …]
/kernel/linux/linux-5.10/arch/arm/boot/dts/
Dsama5d2.dtsi47 clocks = <&pmc PMC_TYPE_CORE PMC_MCK>;
63 clocks = <&pmc PMC_TYPE_CORE PMC_MCK>;
123 clocks = <&pmc PMC_TYPE_PERIPHERAL 42>, <&pmc PMC_TYPE_CORE PMC_UTMI>;
132 clocks = <&pmc PMC_TYPE_PERIPHERAL 41>, <&pmc PMC_TYPE_PERIPHERAL 41>, <&pmc PMC_TYPE_SYSTEM 6>;
141 clocks = <&pmc PMC_TYPE_CORE PMC_UTMI>, <&pmc PMC_TYPE_PERIPHERAL 41>;
165 clocks = <&pmc PMC_TYPE_CORE PMC_MCK2>;
184 clocks = <&pmc PMC_TYPE_PERIPHERAL 31>, <&pmc PMC_TYPE_GCK 31>, <&pmc PMC_TYPE_CORE PMC_MAIN>;
186 assigned-clocks = <&pmc PMC_TYPE_GCK 31>;
195 clocks = <&pmc PMC_TYPE_PERIPHERAL 32>, <&pmc PMC_TYPE_GCK 32>, <&pmc PMC_TYPE_CORE PMC_MAIN>;
197 assigned-clocks = <&pmc PMC_TYPE_GCK 32>;
[all …]
Dsam9x60.dtsi83 clocks = <&pmc PMC_TYPE_PERIPHERAL 23>, <&pmc PMC_TYPE_CORE PMC_UTMI>;
85 assigned-clocks = <&pmc PMC_TYPE_CORE PMC_UTMI>;
94 clocks = <&pmc PMC_TYPE_PERIPHERAL 22>, <&pmc PMC_TYPE_PERIPHERAL 22>, <&pmc PMC_TYPE_SYSTEM 6>;
103 clocks = <&pmc PMC_TYPE_CORE PMC_UTMI>, <&pmc PMC_TYPE_PERIPHERAL 22>;
105 assigned-clocks = <&pmc PMC_TYPE_CORE PMC_UTMI>;
123 clocks = <&pmc PMC_TYPE_CORE PMC_MCK>;
140 clocks = <&pmc PMC_TYPE_PERIPHERAL 12>, <&pmc PMC_TYPE_GCK 12>;
142 assigned-clocks = <&pmc PMC_TYPE_GCK 12>;
151 clocks = <&pmc PMC_TYPE_PERIPHERAL 26>, <&pmc PMC_TYPE_GCK 26>;
153 assigned-clocks = <&pmc PMC_TYPE_GCK 26>;
[all …]
/kernel/linux/linux-5.10/drivers/usb/typec/mux/
Dintel_pmc_mux.c123 struct pmc_usb *pmc; member
155 port->iom_status = readl(port->pmc->iom_base + in update_port_status()
156 port->pmc->iom_port_status_offset + in update_port_status()
186 ret = intel_scu_ipc_dev_command(port->pmc->ipc, PMC_USBC_CMD, 0, msg, in pmc_usb_command()
482 static int pmc_usb_register_port(struct pmc_usb *pmc, int index, in pmc_usb_register_port() argument
485 struct pmc_usb_port *port = &pmc->port[index]; in pmc_usb_register_port()
509 port->pmc = pmc; in pmc_usb_register_port()
516 port->typec_sw = typec_switch_register(pmc->dev, &sw_desc); in pmc_usb_register_port()
525 port->typec_mux = typec_mux_register(pmc->dev, &mux_desc); in pmc_usb_register_port()
536 port->usb_sw = usb_role_switch_register(pmc->dev, &desc); in pmc_usb_register_port()
[all …]
/kernel/linux/linux-5.10/arch/powerpc/oprofile/
Dop_model_pa6t.c83 int pmc; in pa6t_reg_setup() local
92 for (pmc = 0; pmc < cur_cpu_spec->num_pmcs; pmc++) in pa6t_reg_setup()
93 if (!ctr[pmc].enabled) { in pa6t_reg_setup()
94 sys->mmcr0 &= ~(0x1UL << pmc); in pa6t_reg_setup()
95 sys->mmcr0 &= ~(0x1UL << (pmc+12)); in pa6t_reg_setup()
96 pr_debug("turned off counter %u\n", pmc); in pa6t_reg_setup()
119 for (pmc = 0; pmc < cur_cpu_spec->num_pmcs; pmc++) { in pa6t_reg_setup()
121 reset_value[pmc] = (0x1UL << 39) - ctr[pmc].count; in pa6t_reg_setup()
123 pmc, reset_value[pmc]); in pa6t_reg_setup()
Dop_model_power4.c41 int pmc, cntr_marked_events = 0; in power7_marked_instr_event() local
47 for (pmc = 0; pmc < 4; pmc++) { in power7_marked_instr_event()
49 << (OPROFILE_MAX_PMC_NUM - pmc) in power7_marked_instr_event()
51 psel = (psel >> ((OPROFILE_MAX_PMC_NUM - pmc) in power7_marked_instr_event()
55 - (pmc * OPROFILE_PMSEL_FIELD_WIDTH ))); in power7_marked_instr_event()
57 - (pmc * OPROFILE_PMSEL_FIELD_WIDTH)); in power7_marked_instr_event()
61 cntr_marked_events |= (pmc == 1 || pmc == 3) << pmc; in power7_marked_instr_event()
65 cntr_marked_events |= (pmc == 0) << pmc; in power7_marked_instr_event()
70 cntr_marked_events |= (pmc != 1) << pmc; in power7_marked_instr_event()
74 cntr_marked_events |= 1 << pmc; in power7_marked_instr_event()
[all …]

123456789