Searched refs:pmc (Results 1 - 25 of 144) sorted by last modified time

123456

/linux-master/tools/testing/selftests/kvm/x86_64/
H A Dpmu_counters_test.c90 uint32_t pmc, uint32_t pmc_msr)
94 count = _rdpmc(pmc);
124 GUEST_ASSERT_EQ(_rdpmc(pmc), count);
127 GUEST_ASSERT_EQ(_rdpmc(pmc), 0xdead);
176 uint32_t pmc, uint32_t pmc_msr,
179 GUEST_TEST_EVENT(idx, event, pmc, pmc_msr, ctrl_msr, ctrl_msr_value, "");
182 GUEST_TEST_EVENT(idx, event, pmc, pmc_msr, ctrl_msr, ctrl_msr_value, KVM_FEP);
88 guest_assert_event_count(uint8_t idx, struct kvm_x86_pmu_feature event, uint32_t pmc, uint32_t pmc_msr) argument
175 __guest_test_arch_event(uint8_t idx, struct kvm_x86_pmu_feature event, uint32_t pmc, uint32_t pmc_msr, uint32_t ctrl_msr, uint64_t ctrl_msr_value) argument
/linux-master/tools/testing/selftests/kvm/aarch64/
H A Dvpmu_counter_access.c363 int i, pmc; local
391 for (pmc = 0; pmc < pmcr_n; pmc++)
392 test_access_pmc_regs(&pmc_accessors[i], pmc);
400 for (pmc = pmcr_n; pmc < ARMV8_PMU_MAX_GENERAL_COUNTERS; pmc++)
401 test_access_invalid_pmc_regs(&pmc_accessors[i], pmc);
/linux-master/drivers/staging/media/tegra-video/
H A Dvi.c28 #include <soc/tegra/pmc.h>
/linux-master/drivers/platform/x86/intel/pmc/
H A Dcore.h357 * struct pmc_info - Structure to keep pmc info
358 * @devid: device id of the pmc device
369 * struct pmc - pmc private info structure
370 * @base_addr: contains pmc base address
376 * pmc contains info about one power management controller device.
378 struct pmc { struct
386 * struct pmc_dev - pmc device structure
387 * @devs: pointer to an array of pmc pointers
406 struct pmc *pmc
[all...]
H A Dlnl.c557 struct pmc *pmc = pmcdev->pmcs[PMC_IDX_SOC]; local
564 pmc->map = &lnl_socm_reg_map;
565 ret = get_primary_reg_base(pmc);
H A Dcore.c58 static inline u32 pmc_core_reg_read(struct pmc *pmc, int reg_offset) argument
60 return readl(pmc->regbase + reg_offset);
63 static inline void pmc_core_reg_write(struct pmc *pmc, int reg_offset, argument
66 writel(val, pmc->regbase + reg_offset);
69 static inline u64 pmc_core_adjust_slp_s0_step(struct pmc *pmc, u32 value) argument
77 const int lpm_adj_x2 = pmc->map->lpm_res_counter_step_x2;
79 if (pmc
87 struct pmc *pmc = pmcdev->pmcs[PMC_IDX_MAIN]; local
126 struct pmc *pmc = pmcdev->pmcs[PMC_IDX_MAIN]; local
141 struct pmc *pmc = pmcdev->pmcs[PMC_IDX_MAIN]; local
199 struct pmc *pmc = data; local
213 struct pmc *pmc = data; local
225 pmc_core_check_read_lock_bit(struct pmc *pmc) argument
233 pmc_core_slps0_display(struct pmc *pmc, struct device *dev, struct seq_file *s) argument
270 pmc_core_lpm_display(struct pmc *pmc, struct device *dev, struct seq_file *s, u32 offset, int pmc_index, const char *str, const struct pmc_bit_map **maps) argument
313 pmc_core_reg_read_byte(struct pmc *pmc, int offset) argument
332 struct pmc *pmc = pmcdev->pmcs[i]; local
360 pmc_core_mtpmc_link_status(struct pmc *pmc) argument
368 pmc_core_send_msg(struct pmc *pmc, u32 *addr_xram) argument
390 struct pmc *pmc = pmcdev->pmcs[PMC_IDX_MAIN]; local
445 struct pmc *pmc = pmcdev->pmcs[PMC_IDX_MAIN]; local
481 struct pmc *pmc; local
568 struct pmc *pmc = pmcdev->pmcs[PMC_IDX_MAIN]; local
645 struct pmc *pmc = pmcdev->pmcs[i]; local
690 struct pmc *pmc; local
716 adjust_lpm_residency(struct pmc *pmc, u32 offset, const int lpm_adj_x2) argument
727 struct pmc *pmc = pmcdev->pmcs[PMC_IDX_MAIN]; local
749 struct pmc *pmc = pmcdev->pmcs[i]; local
770 struct pmc *pmc = pmcdev->pmcs[i]; local
805 struct pmc *pmc = pmcdev->pmcs[pmc_index]; local
923 struct pmc *pmc = pmcdev->pmcs[PMC_IDX_MAIN]; local
955 struct pmc *pmc = pmcdev->pmcs[PMC_IDX_MAIN]; local
1028 struct pmc *pmc = s->private; local
1079 struct pmc *pmc = pmcdev->pmcs[PMC_IDX_MAIN]; local
1128 get_primary_reg_base(struct pmc *pmc) argument
1341 pmc_core_xtal_ignore(struct pmc *pmc) argument
1365 pmc_core_do_dmi_quirks(struct pmc *pmc) argument
1379 struct pmc *pmc = pmcdev->pmcs[i]; local
1481 struct pmc *pmc = pmcdev->pmcs[PMC_IDX_MAIN]; local
1536 struct pmc *pmc = pmcdev->pmcs[PMC_IDX_MAIN]; local
1578 struct pmc *pmc = pmcdev->pmcs[i]; local
[all...]
H A Darl.c697 struct pmc *pmc = pmcdev->pmcs[PMC_IDX_SOC]; local
714 pmc->map = &arl_socs_reg_map;
716 ret = get_primary_reg_base(pmc);
/linux-master/drivers/platform/x86/amd/pmc/
H A Dpmc.c31 #include "pmc.h"
164 static struct amd_pmc_dev pmc; variable in typeref:struct:amd_pmc_dev
856 struct amd_pmc_dev *pdev = &pmc;
887 struct amd_pmc_dev *pdev = &pmc;
914 struct amd_pmc_dev *pdev = &pmc;
1038 struct amd_pmc_dev *dev = &pmc;
H A DMakefile3 # Makefile for linux/drivers/platform/x86/amd/pmc
7 amd-pmc-objs := pmc.o pmc-quirks.o
8 obj-$(CONFIG_AMD_PMC) += amd-pmc.o
9 amd-pmc-$(CONFIG_AMD_MP2_STB) += mp2_stb.o
/linux-master/arch/x86/kvm/
H A Dx86.c8487 static int emulator_check_rdpmc_early(struct x86_emulate_ctxt *ctxt, u32 pmc) argument
8489 return kvm_pmu_check_rdpmc_early(emul_to_vcpu(ctxt), pmc);
8493 u32 pmc, u64 *pdata)
8495 return kvm_pmu_rdpmc(emul_to_vcpu(ctxt), pmc, pdata);
8492 emulator_read_pmc(struct x86_emulate_ctxt *ctxt, u32 pmc, u64 *pdata) argument
H A Dkvm_emulate.h212 int (*check_rdpmc_early)(struct x86_emulate_ctxt *ctxt, u32 pmc);
213 int (*read_pmc)(struct x86_emulate_ctxt *ctxt, u32 pmc, u64 *pdata);
H A Dpmu.c68 * 3. Global PMC Index (named pmc): pmc is an index specific to PMU
69 * code. Each pmc, stored in kvm_pmc.idx field, is unique across
71 * between pmc and perf counters is as the following:
99 static inline void __kvm_perf_overflow(struct kvm_pmc *pmc, bool in_pmi) argument
101 struct kvm_pmu *pmu = pmc_to_pmu(pmc);
104 if (pmc->perf_event && pmc->perf_event->attr.precise_ip) {
119 __set_bit(pmc->idx, (unsigned long *)&pmu->global_status);
122 if (pmc
130 struct kvm_pmc *pmc = perf_event->overflow_handler_context; local
145 pmc_get_pebs_precise_level(struct kvm_pmc *pmc) argument
167 get_sample_period(struct kvm_pmc *pmc, u64 counter_value) argument
176 pmc_reprogram_counter(struct kvm_pmc *pmc, u32 type, u64 config, bool exclude_user, bool exclude_kernel, bool intr) argument
230 pmc_pause_counter(struct kvm_pmc *pmc) argument
256 pmc_resume_counter(struct kvm_pmc *pmc) argument
278 pmc_release_perf_event(struct kvm_pmc *pmc) argument
288 pmc_stop_counter(struct kvm_pmc *pmc) argument
296 pmc_update_sample_period(struct kvm_pmc *pmc) argument
306 pmc_write_counter(struct kvm_pmc *pmc, u64 val) argument
429 check_pmu_event_filter(struct kvm_pmc *pmc) argument
444 pmc_event_is_allowed(struct kvm_pmc *pmc) argument
450 reprogram_counter(struct kvm_pmc *pmc) argument
499 struct kvm_pmc *pmc; local
585 struct kvm_pmc *pmc; local
632 struct kvm_pmc *pmc = static_call(kvm_x86_pmu_msr_idx_to_pmc)(vcpu, msr); local
725 struct kvm_pmc *pmc; local
807 struct kvm_pmc *pmc = NULL; local
831 kvm_pmu_incr_counter(struct kvm_pmc *pmc) argument
837 cpl_is_matched(struct kvm_pmc *pmc) argument
867 struct kvm_pmc *pmc; local
[all...]
/linux-master/arch/riscv/kvm/
H A Dvcpu_pmu.c37 static u64 kvm_pmu_get_sample_period(struct kvm_pmc *pmc) argument
39 u64 counter_val_mask = GENMASK(pmc->cinfo.width, 0);
42 if (!pmc->counter_val)
45 sample_period = (-pmc->counter_val) & counter_val_mask;
78 static void kvm_pmu_release_perf_event(struct kvm_pmc *pmc) argument
80 if (pmc->perf_event) {
81 perf_event_disable(pmc->perf_event);
82 perf_event_release_kernel(pmc->perf_event);
83 pmc->perf_event = NULL;
204 struct kvm_pmc *pmc; local
234 struct kvm_pmc *pmc; local
272 struct kvm_pmc *pmc = perf_event->overflow_handler_context; local
309 kvm_pmu_create_perf_event(struct kvm_pmc *pmc, struct perf_event_attr *attr, unsigned long flags, unsigned long eidx, unsigned long evtdata) argument
496 struct kvm_pmc *pmc; local
573 struct kvm_pmc *pmc; local
674 struct kvm_pmc *pmc = NULL; local
771 struct kvm_pmc *pmc; local
838 struct kvm_pmc *pmc; local
[all...]
/linux-master/arch/riscv/include/asm/
H A Dkvm_vcpu_pmu.h44 struct kvm_pmc pmc[RISCV_KVM_MAX_COUNTERS]; member in struct:kvm_pmu
/linux-master/arch/powerpc/kvm/
H A Dbook3s_hv_nestedv2.c251 rc = kvmppc_gse_put_u32(gsb, iden, vcpu->arch.pmc[i]);
495 vcpu->arch.pmc[i] = kvmppc_gse_get_u32(gse);
H A Dbook3s_hv.c64 #include <asm/pmc.h>
/linux-master/arch/powerpc/kernel/
H A Dsysfs.c20 #include <asm/pmc.h>
H A DMakefile68 irq.o align.o signal_$(BITS).o pmc.o vdso.o \
/linux-master/net/ipv4/
H A 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) \
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) \
181 for (pmc
272 is_in(struct ip_mc_list *pmc, struct ip_sf_list *psf, int type, int gdeleted, int sdeleted) argument
317 igmp_scount(struct ip_mc_list *pmc, int type, int gdeleted, int sdeleted) argument
430 grec_size(struct ip_mc_list *pmc, int type, int gdel, int sdel) argument
435 add_grhead(struct sk_buff *skb, struct ip_mc_list *pmc, int type, struct igmpv3_grec **ppgr, unsigned int mtu) argument
460 add_grec(struct sk_buff *skb, struct ip_mc_list *pmc, int type, int gdeleted, int sdeleted) argument
588 igmpv3_send_report(struct in_device *in_dev, struct ip_mc_list *pmc) argument
646 kfree_pmc(struct ip_mc_list *pmc) argument
655 struct ip_mc_list *pmc, *pmc_prev, *pmc_next; local
726 igmp_send_report(struct in_device *in_dev, struct ip_mc_list *pmc, int type) argument
863 igmp_xmarksources(struct ip_mc_list *pmc, int nsrcs, __be32 *srcs) argument
890 igmp_marksources(struct ip_mc_list *pmc, int nsrcs, __be32 *srcs) argument
1178 struct ip_mc_list *pmc; local
1219 struct ip_mc_list *pmc, *pmc_prev; local
1263 struct ip_mc_list *pmc, *nextpmc; local
1710 struct ip_mc_list *pmc; local
1720 struct ip_mc_list *pmc; local
1736 struct ip_mc_list *pmc; local
1787 struct ip_mc_list *pmc; local
1863 ip_mc_del1_src(struct ip_mc_list *pmc, int sfmode, __be32 *psfsrc) argument
1915 struct ip_mc_list *pmc; local
1978 ip_mc_add1_src(struct ip_mc_list *pmc, int sfmode, __be32 *psfsrc) argument
2007 sf_markstate(struct ip_mc_list *pmc) argument
2021 sf_setstate(struct ip_mc_list *pmc) argument
2087 struct ip_mc_list *pmc; local
2153 ip_mc_clear_src(struct ip_mc_list *pmc) argument
2313 struct ip_mc_socklist *pmc; local
2451 struct ip_mc_socklist *pmc; local
2542 struct ip_mc_socklist *pmc; local
2602 struct ip_mc_socklist *pmc; local
2649 struct ip_mc_socklist *pmc; local
[all...]
/linux-master/drivers/soc/tegra/
H A Dpmc.c3 * drivers/soc/tegra/pmc.c
12 #define pr_fmt(fmt) "tegra-pmc: " fmt
54 #include <soc/tegra/pmc.h>
61 #include <dt-bindings/soc/tegra-pmc.h>
269 struct tegra_pmc *pmc; member in struct:tegra_powergate
357 void (*init)(struct tegra_pmc *pmc);
358 void (*setup_irq_polarity)(struct tegra_pmc *pmc,
361 void (*set_wake_filters)(struct tegra_pmc *pmc);
364 int (*powergate_set)(struct tegra_pmc *pmc, unsigned int id,
473 static struct tegra_pmc *pmc variable in typeref:struct:tegra_pmc
484 tegra_pmc_readl(struct tegra_pmc *pmc, unsigned long offset) argument
506 tegra_pmc_writel(struct tegra_pmc *pmc, u32 value, unsigned long offset) argument
527 tegra_pmc_scratch_readl(struct tegra_pmc *pmc, unsigned long offset) argument
535 tegra_pmc_scratch_writel(struct tegra_pmc *pmc, u32 value, unsigned long offset) argument
557 tegra_powergate_is_valid(struct tegra_pmc *pmc, int id) argument
562 tegra_powergate_is_available(struct tegra_pmc *pmc, int id) argument
567 tegra_powergate_lookup(struct tegra_pmc *pmc, const char *name) argument
585 tegra20_powergate_set(struct tegra_pmc *pmc, unsigned int id, bool new_state) argument
608 tegra_powergate_toggle_ready(struct tegra_pmc *pmc) argument
613 tegra114_powergate_set(struct tegra_pmc *pmc, unsigned int id, bool new_state) argument
648 tegra_powergate_set(struct tegra_pmc *pmc, unsigned int id, bool new_state) argument
670 __tegra_powergate_remove_clamping(struct tegra_pmc *pmc, unsigned int id) argument
974 tegra_powergate_is_powered(struct tegra_pmc *pmc, unsigned int id) argument
1048 tegra_get_cpu_powergate_id(struct tegra_pmc *pmc, unsigned int cpuid) argument
1273 tegra_powergate_add(struct tegra_pmc *pmc, struct device_node *np) argument
1397 tegra_pmc_core_pd_add(struct tegra_pmc *pmc, struct device_node *np) argument
1437 tegra_powergate_init(struct tegra_pmc *pmc, struct device_node *parent) argument
1533 tegra_io_pad_find(struct tegra_pmc *pmc, enum tegra_io_pad id) argument
1544 tegra_io_pad_prepare(struct tegra_pmc *pmc, const struct tegra_io_pad_soc *pad, unsigned long *request, unsigned long *status, u32 *mask) argument
1577 tegra_io_pad_poll(struct tegra_pmc *pmc, unsigned long offset, u32 mask, u32 val, unsigned long timeout) argument
1595 tegra_io_pad_unprepare(struct tegra_pmc *pmc) argument
1687 tegra_io_pad_is_powered(struct tegra_pmc *pmc, enum tegra_io_pad id) argument
1710 tegra_io_pad_set_voltage(struct tegra_pmc *pmc, enum tegra_io_pad id, int voltage) argument
1758 tegra_io_pad_get_voltage(struct tegra_pmc *pmc, enum tegra_io_pad id) argument
1832 tegra_pmc_parse_dt(struct tegra_pmc *pmc, struct device_node *np) argument
1905 tegra_pmc_init(struct tegra_pmc *pmc) argument
1931 tegra_pmc_init_tsense_reset(struct tegra_pmc *pmc) argument
2009 struct tegra_pmc *pmc = pinctrl_dev_get_drvdata(pctl_dev); local
2017 struct tegra_pmc *pmc = pinctrl_dev_get_drvdata(pctl); local
2027 struct tegra_pmc *pmc = pinctrl_dev_get_drvdata(pctl_dev); local
2047 struct tegra_pmc *pmc = pinctrl_dev_get_drvdata(pctl_dev); local
2086 struct tegra_pmc *pmc = pinctrl_dev_get_drvdata(pctl_dev); local
2137 tegra_pmc_pinctrl_init(struct tegra_pmc *pmc) argument
2194 tegra_pmc_reset_sysfs_init(struct tegra_pmc *pmc) argument
2233 struct tegra_pmc *pmc = domain->host_data; local
2308 struct tegra_pmc *pmc = irq_data_get_irq_chip_data(data); local
2342 struct tegra_pmc *pmc = irq_data_get_irq_chip_data(data); local
2380 tegra186_pmc_set_wake_filters(struct tegra_pmc *pmc) argument
2393 struct tegra_pmc *pmc = irq_data_get_irq_chip_data(data); local
2421 struct tegra_pmc *pmc = irq_data_get_irq_chip_data(data); local
2484 tegra_pmc_irq_init(struct tegra_pmc *pmc) argument
2519 struct tegra_pmc *pmc = container_of(nb, struct tegra_pmc, clk_nb); local
2621 tegra_pmc_clk_out_register(struct tegra_pmc *pmc, const struct pmc_clk_init_data *data, unsigned long offset) argument
2677 tegra_pmc_clk_gate_register(struct tegra_pmc *pmc, const char *name, const char *parent_name, unsigned long offset, u32 shift) argument
2701 tegra_pmc_clock_register(struct tegra_pmc *pmc, struct device_node *np) argument
2813 struct tegra_pmc *pmc = context; local
2821 struct tegra_pmc *pmc = context; local
2839 tegra_pmc_regmap_init(struct tegra_pmc *pmc) argument
3038 wke_32kwritel(struct tegra_pmc *pmc, u32 value, unsigned int offset) argument
3044 wke_write_wake_level(struct tegra_pmc *pmc, int wake, int level) argument
3058 wke_write_wake_levels(struct tegra_pmc *pmc) argument
3066 wke_clear_sw_wake_status(struct tegra_pmc *pmc) argument
3071 wke_read_sw_wake_status(struct tegra_pmc *pmc) argument
3111 wke_clear_wake_status(struct tegra_pmc *pmc) argument
3127 tegra186_pmc_process_wake_events(struct tegra_pmc *pmc, unsigned int index, unsigned long status) argument
3187 struct tegra_pmc *pmc = dev_get_drvdata(dev); local
3196 struct tegra_pmc *pmc = dev_get_drvdata(dev); local
3226 tegra20_pmc_init(struct tegra_pmc *pmc) argument
3266 tegra20_pmc_setup_irq_polarity(struct tegra_pmc *pmc, struct device_node *np, bool invert) argument
3832 tegra186_pmc_init(struct tegra_pmc *pmc) argument
3840 tegra186_pmc_setup_irq_polarity(struct tegra_pmc *pmc, struct device_node *np, bool invert) argument
4315 tegra_pmc_detect_tz_only(struct tegra_pmc *pmc) argument
[all...]
/linux-master/drivers/pinctrl/renesas/
H A Dpinctrl-rzg2l.c275 * @pmc: PMC registers cache
287 u8 *pmc; member in struct:rzg2l_pinctrl_reg_cache
2154 cache->pmc = devm_kcalloc(pctrl->dev, nports, sizeof(*cache->pmc), GFP_KERNEL);
2155 if (!cache->pmc)
2436 RZG2L_PCTRL_REG_ACCESS8(suspend, pctrl->base + PMC(off), cache->pmc[port]);
2530 u8 pmc = 0, max_pin; local
2546 if (!(cache->pmc[port] & BIT(pin)))
2554 pmc &= ~BIT(pin);
2555 writeb(pmc, pctr
[all...]
/linux-master/drivers/gpu/drm/etnaviv/
H A Detnaviv_gpu.c609 u32 pmc, ppc; local
622 pmc = gpu_read_power(gpu, VIVS_PM_MODULE_CONTROLS);
628 pmc |= VIVS_PM_MODULE_CONTROLS_DISABLE_MODULE_CLOCK_GATING_PA;
638 pmc |= VIVS_PM_MODULE_CONTROLS_DISABLE_MODULE_CLOCK_GATING_PE;
641 pmc |= BIT(15); /* Unknown bit */
648 pmc |= VIVS_PM_MODULE_CONTROLS_DISABLE_MODULE_CLOCK_GATING_TX;
652 pmc |= VIVS_PM_MODULE_CONTROLS_DISABLE_MODULE_CLOCK_GATING_SE |
655 pmc |= VIVS_PM_MODULE_CONTROLS_DISABLE_MODULE_CLOCK_GATING_RA_HZ;
656 pmc |= VIVS_PM_MODULE_CONTROLS_DISABLE_MODULE_CLOCK_GATING_RA_EZ;
658 gpu_write_power(gpu, VIVS_PM_MODULE_CONTROLS, pmc);
[all...]
/linux-master/arch/x86/kvm/vmx/
H A Dpmu_intel.c39 struct kvm_pmc *pmc; local
51 pmc = get_fixed_pmc(pmu, MSR_CORE_PERF_FIXED_CTR0 + i);
54 kvm_pmu_request_counter_reprogram(pmc);
184 struct kvm_pmc *pmc; local
186 pmc = get_fixed_pmc(pmu, msr);
187 pmc = pmc ? pmc : get_gp_pmc(pmu, msr, MSR_P6_EVNTSEL0);
188 pmc = pmc
301 struct kvm_pmc *pmc; local
344 struct kvm_pmc *pmc; local
704 struct kvm_pmc *pmc = NULL; local
[all...]
/linux-master/include/kvm/
H A Darm_pmu.h17 u8 idx; /* index into the pmu->pmc array */
29 struct kvm_pmc pmc[ARMV8_PMU_MAX_COUNTERS]; member in struct:kvm_pmu
/linux-master/drivers/net/ethernet/broadcom/bnx2x/
H A Dbnx2x_main.c9162 u16 pmc; local
9177 pci_read_config_word(pdev, pdev->pm_cap + PCI_PM_CTRL, &pmc);
9178 pmc |= PCI_PM_CTRL_PME_ENABLE | PCI_PM_CTRL_PME_STATUS;
9179 pci_write_config_word(pdev, pdev->pm_cap + PCI_PM_CTRL, pmc);
10940 u16 pmc; local
11108 pci_read_config_word(bp->pdev, bp->pdev->pm_cap + PCI_PM_PMC, &pmc);
11109 bp->flags |= (pmc & PCI_PM_CAP_PME_D3cold) ? 0 : NO_WOL_FLAG;

Completed in 371 milliseconds

123456