/kernel/linux/linux-6.6/tools/testing/selftests/powerpc/pmu/sampling_tests/ |
H A D | misc.h | 61 static inline int get_mmcr0_fc56(u64 mmcr0, int pmc) in get_mmcr0_fc56() argument 66 static inline int get_mmcr0_pmccext(u64 mmcr0, int pmc) in get_mmcr0_pmccext() argument 71 static inline int get_mmcr0_pmao(u64 mmcr0, int pmc) in get_mmcr0_pmao() argument 76 static inline int get_mmcr0_cc56run(u64 mmcr0, int pmc) in get_mmcr0_cc56run() argument 81 static inline int get_mmcr0_pmcjce(u64 mmcr0, int pmc) in get_mmcr0_pmcjce() argument 86 static inline int get_mmcr0_pmc1ce(u64 mmcr0, int pmc) in get_mmcr0_pmc1ce() argument 91 static inline int get_mmcr0_pmae(u64 mmcr0, int pmc) in get_mmcr0_pmae() argument 96 static inline int get_mmcr1_pmcxsel(u64 mmcr1, int pmc) in get_mmcr1_pmcxsel() argument 98 return ((mmcr1 >> ((24 - (((pmc) - 1) * 8))) & 0xff)); in get_mmcr1_pmcxsel() 101 static inline int get_mmcr1_unit(u64 mmcr1, int pmc) in get_mmcr1_unit() argument 106 get_mmcr1_comb(u64 mmcr1, int pmc) get_mmcr1_comb() argument 111 get_mmcr1_cache(u64 mmcr1, int pmc) get_mmcr1_cache() argument 116 get_mmcr1_rsq(u64 mmcr1, int pmc) get_mmcr1_rsq() argument 121 get_mmcr2_fcs(u64 mmcr2, int pmc) get_mmcr2_fcs() argument 126 get_mmcr2_fcp(u64 mmcr2, int pmc) get_mmcr2_fcp() argument 131 get_mmcr2_fcpc(u64 mmcr2, int pmc) get_mmcr2_fcpc() argument 136 get_mmcr2_fcm1(u64 mmcr2, int pmc) get_mmcr2_fcm1() argument 141 get_mmcr2_fcm0(u64 mmcr2, int pmc) get_mmcr2_fcm0() argument 146 get_mmcr2_fcwait(u64 mmcr2, int pmc) get_mmcr2_fcwait() argument 151 get_mmcr2_fch(u64 mmcr2, int pmc) get_mmcr2_fch() argument 156 get_mmcr2_fcti(u64 mmcr2, int pmc) get_mmcr2_fcti() argument 161 get_mmcr2_fcta(u64 mmcr2, int pmc) get_mmcr2_fcta() argument 166 get_mmcr2_l2l3(u64 mmcr2, int pmc) get_mmcr2_l2l3() argument 173 get_mmcr3_src(u64 mmcr3, int pmc) get_mmcr3_src() argument 180 get_mmcra_thd_cmp(u64 mmcra, int pmc) get_mmcra_thd_cmp() argument 187 get_mmcra_sm(u64 mmcra, int pmc) get_mmcra_sm() argument 192 get_mmcra_bhrb_disable(u64 mmcra, int pmc) get_mmcra_bhrb_disable() argument 199 get_mmcra_ifm(u64 mmcra, int pmc) get_mmcra_ifm() argument 204 get_mmcra_thd_sel(u64 mmcra, int pmc) get_mmcra_thd_sel() argument 209 get_mmcra_thd_start(u64 mmcra, int pmc) get_mmcra_thd_start() argument 214 get_mmcra_thd_stop(u64 mmcra, int pmc) get_mmcra_thd_stop() argument 219 get_mmcra_rand_samp_elig(u64 mmcra, int pmc) get_mmcra_rand_samp_elig() argument 224 get_mmcra_sample_mode(u64 mmcra, int pmc) get_mmcra_sample_mode() argument 229 get_mmcra_marked(u64 mmcra, int pmc) get_mmcra_marked() argument [all...] |
/kernel/linux/linux-5.10/drivers/net/wireless/ath/wil6210/ |
H A D | pmc.c | 14 #include "pmc.h" 21 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() 34 * Initialize the descriptors as required by pmc dma. 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() 228 struct pmc_ctx *pmc = &wil->pmc; wil_pmc_free() local 318 struct pmc_ctx *pmc = &wil->pmc; wil_pmc_read() local 374 struct pmc_ctx *pmc = &wil->pmc; wil_pmc_llseek() local 424 struct pmc_ctx *pmc = &wil->pmc; wil_pmcring_read() local [all...] |
/kernel/linux/linux-6.6/drivers/net/wireless/ath/wil6210/ |
H A D | pmc.c | 14 #include "pmc.h" 21 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() 34 * Initialize the descriptors as required by pmc dma. 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() 228 struct pmc_ctx *pmc = &wil->pmc; wil_pmc_free() local 318 struct pmc_ctx *pmc = &wil->pmc; wil_pmc_read() local 374 struct pmc_ctx *pmc = &wil->pmc; wil_pmc_llseek() local 424 struct pmc_ctx *pmc = &wil->pmc; wil_pmcring_read() local [all...] |
/kernel/linux/linux-5.10/drivers/soc/tegra/ |
H A D | pmc.c | 3 * drivers/soc/tegra/pmc.c 12 #define pr_fmt(fmt) "tegra-pmc: " fmt 49 #include <soc/tegra/pmc.h> 55 #include <dt-bindings/soc/tegra-pmc.h> 236 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, unsigne argument 443 tegra_pmc_writel(struct tegra_pmc *pmc, u32 value, unsigned long offset) tegra_pmc_writel() argument 464 tegra_pmc_scratch_readl(struct tegra_pmc *pmc, unsigned long offset) tegra_pmc_scratch_readl() argument 472 tegra_pmc_scratch_writel(struct tegra_pmc *pmc, u32 value, unsigned long offset) tegra_pmc_scratch_writel() argument 494 tegra_powergate_is_valid(struct tegra_pmc *pmc, int id) tegra_powergate_is_valid() argument 499 tegra_powergate_is_available(struct tegra_pmc *pmc, int id) tegra_powergate_is_available() argument 504 tegra_powergate_lookup(struct tegra_pmc *pmc, const char *name) tegra_powergate_lookup() argument 522 tegra20_powergate_set(struct tegra_pmc *pmc, unsigned int id, bool new_state) tegra20_powergate_set() argument 545 tegra_powergate_toggle_ready(struct tegra_pmc *pmc) tegra_powergate_toggle_ready() argument 550 tegra114_powergate_set(struct tegra_pmc *pmc, unsigned int id, bool new_state) tegra114_powergate_set() argument 585 tegra_powergate_set(struct tegra_pmc *pmc, unsigned int id, bool new_state) tegra_powergate_set() argument 607 __tegra_powergate_remove_clamping(struct tegra_pmc *pmc, unsigned int id) __tegra_powergate_remove_clamping() argument 842 tegra_powergate_is_powered(struct tegra_pmc *pmc, unsigned int id) tegra_powergate_is_powered() argument 909 tegra_get_cpu_powergate_id(struct tegra_pmc *pmc, unsigned int cpuid) tegra_get_cpu_powergate_id() argument 1104 tegra_powergate_add(struct tegra_pmc *pmc, struct device_node *np) tegra_powergate_add() argument 1194 tegra_powergate_init(struct tegra_pmc *pmc, struct device_node *parent) tegra_powergate_init() argument 1256 tegra_io_pad_find(struct tegra_pmc *pmc, enum tegra_io_pad id) tegra_io_pad_find() argument 1267 tegra_io_pad_get_dpd_register_bit(struct tegra_pmc *pmc, enum tegra_io_pad id, unsigned long *request, unsigned long *status, u32 *mask) tegra_io_pad_get_dpd_register_bit() argument 1297 tegra_io_pad_prepare(struct tegra_pmc *pmc, enum tegra_io_pad id, unsigned long *request, unsigned long *status, u32 *mask) tegra_io_pad_prepare() argument 1326 tegra_io_pad_poll(struct tegra_pmc *pmc, unsigned long offset, u32 mask, u32 val, unsigned long timeout) tegra_io_pad_poll() argument 1344 tegra_io_pad_unprepare(struct tegra_pmc *pmc) tegra_io_pad_unprepare() argument 1422 tegra_io_pad_is_powered(struct tegra_pmc *pmc, enum tegra_io_pad id) tegra_io_pad_is_powered() argument 1438 tegra_io_pad_set_voltage(struct tegra_pmc *pmc, enum tegra_io_pad id, int voltage) tegra_io_pad_set_voltage() argument 1486 tegra_io_pad_get_voltage(struct tegra_pmc *pmc, enum tegra_io_pad id) tegra_io_pad_get_voltage() argument 1584 tegra_pmc_parse_dt(struct tegra_pmc *pmc, struct device_node *np) tegra_pmc_parse_dt() argument 1656 tegra_pmc_init(struct tegra_pmc *pmc) tegra_pmc_init() argument 1662 tegra_pmc_init_tsense_reset(struct tegra_pmc *pmc) tegra_pmc_init_tsense_reset() argument 1740 struct tegra_pmc *pmc = pinctrl_dev_get_drvdata(pctl_dev); tegra_io_pad_pinctrl_get_groups_count() local 1748 struct tegra_pmc *pmc = pinctrl_dev_get_drvdata(pctl); tegra_io_pad_pinctrl_get_group_name() local 1758 struct tegra_pmc *pmc = pinctrl_dev_get_drvdata(pctl_dev); tegra_io_pad_pinctrl_get_group_pins() local 1778 struct tegra_pmc *pmc = pinctrl_dev_get_drvdata(pctl_dev); tegra_io_pad_pinconf_get() local 1817 struct tegra_pmc *pmc = pinctrl_dev_get_drvdata(pctl_dev); tegra_io_pad_pinconf_set() local 1868 tegra_pmc_pinctrl_init(struct tegra_pmc *pmc) tegra_pmc_pinctrl_init() argument 1925 tegra_pmc_reset_sysfs_init(struct tegra_pmc *pmc) tegra_pmc_reset_sysfs_init() argument 1964 struct tegra_pmc *pmc = domain->host_data; tegra_pmc_irq_alloc() local 2031 struct tegra_pmc *pmc = irq_data_get_irq_chip_data(data); tegra210_pmc_irq_set_wake() local 2065 struct tegra_pmc *pmc = irq_data_get_irq_chip_data(data); tegra210_pmc_irq_set_type() local 2105 struct tegra_pmc *pmc = irq_data_get_irq_chip_data(data); tegra186_pmc_irq_set_wake() local 2133 struct tegra_pmc *pmc = irq_data_get_irq_chip_data(data); tegra186_pmc_irq_set_type() local 2190 tegra_pmc_irq_init(struct tegra_pmc *pmc) tegra_pmc_irq_init() argument 2225 struct tegra_pmc *pmc = container_of(nb, struct tegra_pmc, clk_nb); tegra_pmc_clk_notify_cb() local 2327 tegra_pmc_clk_out_register(struct tegra_pmc *pmc, const struct pmc_clk_init_data *data, unsigned long offset) tegra_pmc_clk_out_register() argument 2383 tegra_pmc_clk_gate_register(struct tegra_pmc *pmc, const char *name, const char *parent_name, unsigned long offset, u32 shift) tegra_pmc_clk_gate_register() argument 2407 tegra_pmc_clock_register(struct tegra_pmc *pmc, struct device_node *np) tegra_pmc_clock_register() argument 2641 struct tegra_pmc *pmc = dev_get_drvdata(dev); tegra_pmc_suspend() local 2650 struct tegra_pmc *pmc = dev_get_drvdata(dev); tegra_pmc_resume() local 2684 tegra20_pmc_init(struct tegra_pmc *pmc) tegra20_pmc_init() argument 2724 tegra20_pmc_setup_irq_polarity(struct tegra_pmc *pmc, struct device_node *np, bool invert) tegra20_pmc_setup_irq_polarity() argument 3186 tegra186_pmc_setup_irq_polarity(struct tegra_pmc *pmc, struct device_node *np, bool invert) tegra186_pmc_setup_irq_polarity() argument 3505 tegra_pmc_detect_tz_only(struct tegra_pmc *pmc) tegra_pmc_detect_tz_only() argument [all...] |
/kernel/linux/linux-6.6/drivers/soc/tegra/ |
H A D | pmc.c | 3 * 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 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, 472 static struct tegra_pmc *pmc variable 483 tegra_pmc_readl(struct tegra_pmc *pmc, unsigned long offset) tegra_pmc_readl() argument 505 tegra_pmc_writel(struct tegra_pmc *pmc, u32 value, unsigned long offset) tegra_pmc_writel() argument 526 tegra_pmc_scratch_readl(struct tegra_pmc *pmc, unsigned long offset) tegra_pmc_scratch_readl() argument 534 tegra_pmc_scratch_writel(struct tegra_pmc *pmc, u32 value, unsigned long offset) tegra_pmc_scratch_writel() argument 556 tegra_powergate_is_valid(struct tegra_pmc *pmc, int id) tegra_powergate_is_valid() argument 561 tegra_powergate_is_available(struct tegra_pmc *pmc, int id) tegra_powergate_is_available() argument 566 tegra_powergate_lookup(struct tegra_pmc *pmc, const char *name) tegra_powergate_lookup() argument 584 tegra20_powergate_set(struct tegra_pmc *pmc, unsigned int id, bool new_state) tegra20_powergate_set() argument 607 tegra_powergate_toggle_ready(struct tegra_pmc *pmc) tegra_powergate_toggle_ready() argument 612 tegra114_powergate_set(struct tegra_pmc *pmc, unsigned int id, bool new_state) tegra114_powergate_set() argument 647 tegra_powergate_set(struct tegra_pmc *pmc, unsigned int id, bool new_state) tegra_powergate_set() argument 669 __tegra_powergate_remove_clamping(struct tegra_pmc *pmc, unsigned int id) __tegra_powergate_remove_clamping() argument 973 tegra_powergate_is_powered(struct tegra_pmc *pmc, unsigned int id) tegra_powergate_is_powered() argument 1047 tegra_get_cpu_powergate_id(struct tegra_pmc *pmc, unsigned int cpuid) tegra_get_cpu_powergate_id() argument 1272 tegra_powergate_add(struct tegra_pmc *pmc, struct device_node *np) tegra_powergate_add() argument 1403 tegra_pmc_core_pd_add(struct tegra_pmc *pmc, struct device_node *np) tegra_pmc_core_pd_add() argument 1444 tegra_powergate_init(struct tegra_pmc *pmc, struct device_node *parent) tegra_powergate_init() argument 1540 tegra_io_pad_find(struct tegra_pmc *pmc, enum tegra_io_pad id) tegra_io_pad_find() argument 1551 tegra_io_pad_prepare(struct tegra_pmc *pmc, const struct tegra_io_pad_soc *pad, unsigned long *request, unsigned long *status, u32 *mask) tegra_io_pad_prepare() argument 1584 tegra_io_pad_poll(struct tegra_pmc *pmc, unsigned long offset, u32 mask, u32 val, unsigned long timeout) tegra_io_pad_poll() argument 1602 tegra_io_pad_unprepare(struct tegra_pmc *pmc) tegra_io_pad_unprepare() argument 1694 tegra_io_pad_is_powered(struct tegra_pmc *pmc, enum tegra_io_pad id) tegra_io_pad_is_powered() argument 1717 tegra_io_pad_set_voltage(struct tegra_pmc *pmc, enum tegra_io_pad id, int voltage) tegra_io_pad_set_voltage() argument 1765 tegra_io_pad_get_voltage(struct tegra_pmc *pmc, enum tegra_io_pad id) tegra_io_pad_get_voltage() argument 1863 tegra_pmc_parse_dt(struct tegra_pmc *pmc, struct device_node *np) tegra_pmc_parse_dt() argument 1936 tegra_pmc_init(struct tegra_pmc *pmc) tegra_pmc_init() argument 1962 tegra_pmc_init_tsense_reset(struct tegra_pmc *pmc) tegra_pmc_init_tsense_reset() argument 2040 struct tegra_pmc *pmc = pinctrl_dev_get_drvdata(pctl_dev); tegra_io_pad_pinctrl_get_groups_count() local 2048 struct tegra_pmc *pmc = pinctrl_dev_get_drvdata(pctl); tegra_io_pad_pinctrl_get_group_name() local 2058 struct tegra_pmc *pmc = pinctrl_dev_get_drvdata(pctl_dev); tegra_io_pad_pinctrl_get_group_pins() local 2078 struct tegra_pmc *pmc = pinctrl_dev_get_drvdata(pctl_dev); tegra_io_pad_pinconf_get() local 2117 struct tegra_pmc *pmc = pinctrl_dev_get_drvdata(pctl_dev); tegra_io_pad_pinconf_set() local 2168 tegra_pmc_pinctrl_init(struct tegra_pmc *pmc) tegra_pmc_pinctrl_init() argument 2225 tegra_pmc_reset_sysfs_init(struct tegra_pmc *pmc) tegra_pmc_reset_sysfs_init() argument 2264 struct tegra_pmc *pmc = domain->host_data; tegra_pmc_irq_alloc() local 2339 struct tegra_pmc *pmc = irq_data_get_irq_chip_data(data); tegra210_pmc_irq_set_wake() local 2373 struct tegra_pmc *pmc = irq_data_get_irq_chip_data(data); tegra210_pmc_irq_set_type() local 2411 tegra186_pmc_set_wake_filters(struct tegra_pmc *pmc) tegra186_pmc_set_wake_filters() argument 2424 struct tegra_pmc *pmc = irq_data_get_irq_chip_data(data); tegra186_pmc_irq_set_wake() local 2452 struct tegra_pmc *pmc = irq_data_get_irq_chip_data(data); tegra186_pmc_irq_set_type() local 2515 tegra_pmc_irq_init(struct tegra_pmc *pmc) tegra_pmc_irq_init() argument 2550 struct tegra_pmc *pmc = container_of(nb, struct tegra_pmc, clk_nb); tegra_pmc_clk_notify_cb() local 2652 tegra_pmc_clk_out_register(struct tegra_pmc *pmc, const struct pmc_clk_init_data *data, unsigned long offset) tegra_pmc_clk_out_register() argument 2708 tegra_pmc_clk_gate_register(struct tegra_pmc *pmc, const char *name, const char *parent_name, unsigned long offset, u32 shift) tegra_pmc_clk_gate_register() argument 2732 tegra_pmc_clock_register(struct tegra_pmc *pmc, struct device_node *np) tegra_pmc_clock_register() argument 2844 struct tegra_pmc *pmc = context; tegra_pmc_regmap_readl() local 2852 struct tegra_pmc *pmc = context; tegra_pmc_regmap_writel() local 2870 tegra_pmc_regmap_init(struct tegra_pmc *pmc) tegra_pmc_regmap_init() argument 3064 wke_32kwritel(struct tegra_pmc *pmc, u32 value, unsigned int offset) wke_32kwritel() argument 3070 wke_write_wake_level(struct tegra_pmc *pmc, int wake, int level) wke_write_wake_level() argument 3084 wke_write_wake_levels(struct tegra_pmc *pmc) wke_write_wake_levels() argument 3092 wke_clear_sw_wake_status(struct tegra_pmc *pmc) wke_clear_sw_wake_status() argument 3097 wke_read_sw_wake_status(struct tegra_pmc *pmc) wke_read_sw_wake_status() argument 3137 wke_clear_wake_status(struct tegra_pmc *pmc) wke_clear_wake_status() argument 3153 tegra186_pmc_process_wake_events(struct tegra_pmc *pmc, unsigned int index, unsigned long status) tegra186_pmc_process_wake_events() argument 3213 struct tegra_pmc *pmc = dev_get_drvdata(dev); tegra_pmc_suspend() local 3222 struct tegra_pmc *pmc = dev_get_drvdata(dev); tegra_pmc_resume() local 3252 tegra20_pmc_init(struct tegra_pmc *pmc) tegra20_pmc_init() argument 3292 tegra20_pmc_setup_irq_polarity(struct tegra_pmc *pmc, struct device_node *np, bool invert) tegra20_pmc_setup_irq_polarity() argument 3853 tegra186_pmc_init(struct tegra_pmc *pmc) tegra186_pmc_init() argument 3861 tegra186_pmc_setup_irq_polarity(struct tegra_pmc *pmc, struct device_node *np, bool invert) tegra186_pmc_setup_irq_polarity() argument 4330 tegra_pmc_detect_tz_only(struct tegra_pmc *pmc) tegra_pmc_detect_tz_only() argument [all...] |
/kernel/linux/linux-5.10/arch/x86/kvm/ |
H A D | pmu.c | 43 * 3. Global PMC Index (named pmc): pmc is an index specific to PMU 44 * code. Each pmc, stored in kvm_pmc.idx field, is unique across 46 * between pmc and perf counters is as the following: 64 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 in kvm_perf_overflow_intr() local 99 pmc_reprogram_counter(struct kvm_pmc *pmc, u32 type, u64 config, bool exclude_user, bool exclude_kernel, bool intr, bool in_tx, bool in_tx_cp) pmc_reprogram_counter() argument 144 pmc_pause_counter(struct kvm_pmc *pmc) pmc_pause_counter() argument 156 pmc_resume_counter(struct kvm_pmc *pmc) pmc_resume_counter() argument 181 reprogram_gp_counter(struct kvm_pmc *pmc, u64 eventsel) reprogram_gp_counter() argument 241 reprogram_fixed_counter(struct kvm_pmc *pmc, u8 ctrl, int idx) reprogram_fixed_counter() argument 279 struct kvm_pmc *pmc = kvm_x86_ops.pmu_ops->pmc_idx_to_pmc(pmu, pmc_idx); reprogram_counter() local 301 struct kvm_pmc *pmc = kvm_x86_ops.pmu_ops->pmc_idx_to_pmc(pmu, bit); kvm_pmu_handle_event() local 364 struct kvm_pmc *pmc; kvm_pmu_rdpmc() local 401 struct kvm_pmc *pmc = kvm_x86_ops.pmu_ops->msr_idx_to_pmc(vcpu, msr); kvm_pmu_mark_pmc_in_use() local 447 pmc_speculative_in_use(struct kvm_pmc *pmc) pmc_speculative_in_use() argument 462 struct kvm_pmc *pmc = NULL; kvm_pmu_cleanup() local [all...] |
H A D | pmu.h | 9 #define pmc_to_pmu(pmc) (&(pmc)->vcpu->arch.pmu) 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 in pmc_read_counter() 62 pmc_release_perf_event(struct kvm_pmc *pmc) pmc_release_perf_event() argument 72 pmc_stop_counter(struct kvm_pmc *pmc) pmc_stop_counter() argument 80 pmc_is_gp(struct kvm_pmc *pmc) pmc_is_gp() argument 85 pmc_is_fixed(struct kvm_pmc *pmc) pmc_is_fixed() argument 90 pmc_is_enabled(struct kvm_pmc *pmc) pmc_is_enabled() argument 133 get_sample_period(struct kvm_pmc *pmc, u64 counter_value) get_sample_period() argument [all...] |
/kernel/linux/linux-6.6/drivers/platform/x86/intel/pmc/ |
H A D | core.c | 56 static inline u32 pmc_core_reg_read(struct pmc *pmc, int reg_offset) in pmc_core_reg_read() argument 58 return readl(pmc->regbase + reg_offset); in pmc_core_reg_read() 61 static inline void pmc_core_reg_write(struct pmc *pmc, int reg_offset, in pmc_core_reg_write() argument 64 writel(val, pmc->regbase + reg_offset); in pmc_core_reg_write() 67 static inline u64 pmc_core_adjust_slp_s0_step(struct pmc *pmc, u32 value) in pmc_core_adjust_slp_s0_step() argument 75 const int lpm_adj_x2 = pmc->map->lpm_res_counter_step_x2; in pmc_core_adjust_slp_s0_step() 77 if (pmc in pmc_core_adjust_slp_s0_step() 85 struct pmc *pmc = pmcdev->pmcs[PMC_IDX_MAIN]; set_etr3() local 124 struct pmc *pmc = pmcdev->pmcs[PMC_IDX_MAIN]; etr3_is_visible() local 139 struct pmc *pmc = pmcdev->pmcs[PMC_IDX_MAIN]; etr3_show() local 197 struct pmc *pmc = data; pmc_core_dev_state_get() local 209 pmc_core_check_read_lock_bit(struct pmc *pmc) pmc_core_check_read_lock_bit() argument 217 pmc_core_slps0_display(struct pmc *pmc, struct device *dev, struct seq_file *s) pmc_core_slps0_display() argument 254 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) pmc_core_lpm_display() argument 297 pmc_core_reg_read_byte(struct pmc *pmc, int offset) pmc_core_reg_read_byte() argument 316 struct pmc *pmc = pmcdev->pmcs[i]; pmc_core_ppfear_show() local 344 pmc_core_mtpmc_link_status(struct pmc *pmc) pmc_core_mtpmc_link_status() argument 352 pmc_core_send_msg(struct pmc *pmc, u32 *addr_xram) pmc_core_send_msg() argument 374 struct pmc *pmc = pmcdev->pmcs[PMC_IDX_MAIN]; pmc_core_mphy_pg_show() local 429 struct pmc *pmc = pmcdev->pmcs[PMC_IDX_MAIN]; pmc_core_pll_show() local 465 struct pmc *pmc; pmc_core_send_ltr_ignore() local 552 struct pmc *pmc = pmcdev->pmcs[PMC_IDX_MAIN]; pmc_core_slps0_dbg_latch() local 629 struct pmc *pmc = pmcdev->pmcs[i]; pmc_core_ltr_show() local 665 adjust_lpm_residency(struct pmc *pmc, u32 offset, const int lpm_adj_x2) adjust_lpm_residency() argument 676 struct pmc *pmc = pmcdev->pmcs[PMC_IDX_MAIN]; pmc_core_substate_res_show() local 698 struct pmc *pmc = pmcdev->pmcs[i]; pmc_core_substate_sts_regs_show() local 719 struct pmc *pmc = pmcdev->pmcs[i]; pmc_core_substate_l_sts_regs_show() local 749 struct pmc *pmc = pmcdev->pmcs[PMC_IDX_MAIN]; pmc_core_substate_req_regs_show() local 818 struct pmc *pmc = pmcdev->pmcs[PMC_IDX_MAIN]; pmc_core_lpm_latch_mode_show() local 850 struct pmc *pmc = pmcdev->pmcs[PMC_IDX_MAIN]; pmc_core_lpm_latch_mode_write() local 923 struct pmc *pmc = s->private; pmc_core_pkgc_show() local 975 struct pmc *pmc = pmcdev->pmcs[PMC_IDX_MAIN]; pmc_core_get_low_power_modes() local 1023 get_primary_reg_base(struct pmc *pmc) get_primary_reg_base() argument 1157 pmc_core_xtal_ignore(struct pmc *pmc) pmc_core_xtal_ignore() argument 1181 pmc_core_do_dmi_quirks(struct pmc *pmc) pmc_core_do_dmi_quirks() argument 1195 struct pmc *pmc = pmcdev->pmcs[i]; pmc_core_clean_structure() local 1283 struct pmc *pmc = pmcdev->pmcs[PMC_IDX_MAIN]; pmc_core_suspend() local 1334 struct pmc *pmc = pmcdev->pmcs[PMC_IDX_MAIN]; pmc_core_resume_common() local 1364 struct pmc *pmc = pmcdev->pmcs[i]; pmc_core_resume_common() local [all...] |
/kernel/linux/linux-6.6/arch/x86/kvm/ |
H A D | pmu.c | 65 * 3. Global PMC Index (named pmc): pmc is an index specific to PMU 66 * code. Each pmc, stored in kvm_pmc.idx field, is unique across 68 * between pmc and perf counters is as the following: 96 static inline void __kvm_perf_overflow(struct kvm_pmc *pmc, bool in_pmi) in __kvm_perf_overflow() argument 98 struct kvm_pmu *pmu = pmc_to_pmu(pmc); in __kvm_perf_overflow() 101 if (pmc->perf_event && pmc->perf_event->attr.precise_ip) { in __kvm_perf_overflow() 116 __set_bit(pmc->idx, (unsigned long *)&pmu->global_status); in __kvm_perf_overflow() 119 if (pmc in __kvm_perf_overflow() 127 struct kvm_pmc *pmc = perf_event->overflow_handler_context; kvm_perf_overflow() local 142 pmc_get_pebs_precise_level(struct kvm_pmc *pmc) pmc_get_pebs_precise_level() argument 164 pmc_reprogram_counter(struct kvm_pmc *pmc, u32 type, u64 config, bool exclude_user, bool exclude_kernel, bool intr) pmc_reprogram_counter() argument 218 pmc_pause_counter(struct kvm_pmc *pmc) pmc_pause_counter() argument 231 pmc_resume_counter(struct kvm_pmc *pmc) pmc_resume_counter() argument 253 pmc_release_perf_event(struct kvm_pmc *pmc) pmc_release_perf_event() argument 263 pmc_stop_counter(struct kvm_pmc *pmc) pmc_stop_counter() argument 377 check_pmu_event_filter(struct kvm_pmc *pmc) check_pmu_event_filter() argument 392 pmc_event_is_allowed(struct kvm_pmc *pmc) pmc_event_is_allowed() argument 399 reprogram_counter(struct kvm_pmc *pmc) reprogram_counter() argument 460 struct kvm_pmc *pmc = static_call(kvm_x86_pmu_pmc_idx_to_pmc)(pmu, bit); kvm_pmu_handle_event() local 523 struct kvm_pmc *pmc; kvm_pmu_rdpmc() local 570 struct kvm_pmc *pmc = static_call(kvm_x86_pmu_msr_idx_to_pmc)(vcpu, msr); kvm_pmu_mark_pmc_in_use() local 663 struct kvm_pmc *pmc; kvm_pmu_reset() local 722 struct kvm_pmc *pmc = NULL; kvm_pmu_cleanup() local 748 kvm_pmu_incr_counter(struct kvm_pmc *pmc) kvm_pmu_incr_counter() argument 755 eventsel_match_perf_hw_id(struct kvm_pmc *pmc, unsigned int perf_hw_id) eventsel_match_perf_hw_id() argument 762 cpl_is_matched(struct kvm_pmc *pmc) cpl_is_matched() argument 784 struct kvm_pmc *pmc; kvm_pmu_trigger_event() local [all...] |
H A D | pmu.h | 9 #define pmc_to_pmu(pmc) (&(pmc)->vcpu->arch.pmu) 22 bool (*hw_event_available)(struct kvm_pmc *pmc); 58 static inline u64 pmc_bitmask(struct kvm_pmc *pmc) in pmc_bitmask() argument 60 struct kvm_pmu *pmu = pmc_to_pmu(pmc); in pmc_bitmask() 62 return pmu->counter_bitmask[pmc->type]; in pmc_bitmask() 65 static inline u64 pmc_read_counter(struct kvm_pmc *pmc) in pmc_read_counter() argument 69 counter = pmc->counter; in pmc_read_counter() 70 if (pmc->perf_event && !pmc in pmc_read_counter() 77 pmc_write_counter(struct kvm_pmc *pmc, u64 val) pmc_write_counter() argument 83 pmc_is_gp(struct kvm_pmc *pmc) pmc_is_gp() argument 88 pmc_is_fixed(struct kvm_pmc *pmc) pmc_is_fixed() argument 131 get_sample_period(struct kvm_pmc *pmc, u64 counter_value) get_sample_period() argument 140 pmc_update_sample_period(struct kvm_pmc *pmc) pmc_update_sample_period() argument 150 pmc_speculative_in_use(struct kvm_pmc *pmc) pmc_speculative_in_use() argument 205 kvm_pmu_request_counter_reprogram(struct kvm_pmc *pmc) kvm_pmu_request_counter_reprogram() argument 228 pmc_is_globally_enabled(struct kvm_pmc *pmc) pmc_is_globally_enabled() argument [all...] |
/kernel/linux/linux-6.6/arch/riscv/kvm/ |
H A D | vcpu_pmu.c | 36 static u64 kvm_pmu_get_sample_period(struct kvm_pmc *pmc) in kvm_pmu_get_sample_period() argument 38 u64 counter_val_mask = GENMASK(pmc->cinfo.width, 0); in kvm_pmu_get_sample_period() 41 if (!pmc->counter_val) in kvm_pmu_get_sample_period() 44 sample_period = (-pmc->counter_val) & counter_val_mask; in kvm_pmu_get_sample_period() 77 static void kvm_pmu_release_perf_event(struct kvm_pmc *pmc) in kvm_pmu_release_perf_event() argument 79 if (pmc->perf_event) { in kvm_pmu_release_perf_event() 80 perf_event_disable(pmc->perf_event); in kvm_pmu_release_perf_event() 81 perf_event_release_kernel(pmc->perf_event); in kvm_pmu_release_perf_event() 82 pmc->perf_event = NULL; in kvm_pmu_release_perf_event() 203 struct kvm_pmc *pmc; in pmu_ctr_read() local 232 kvm_pmu_create_perf_event(struct kvm_pmc *pmc, struct perf_event_attr *attr, unsigned long flags, unsigned long eidx, unsigned long evtdata) kvm_pmu_create_perf_event() argument 344 struct kvm_pmc *pmc; kvm_riscv_vcpu_pmu_ctr_start() local 401 struct kvm_pmc *pmc; kvm_riscv_vcpu_pmu_ctr_stop() local 466 struct kvm_pmc *pmc = NULL; kvm_riscv_vcpu_pmu_ctr_cfg_match() local 549 struct kvm_pmc *pmc; kvm_riscv_vcpu_pmu_init() local 614 struct kvm_pmc *pmc; kvm_riscv_vcpu_pmu_deinit() local [all...] |
/kernel/linux/linux-5.10/arch/arm/mach-at91/ |
H A D | pm_suspend.S | 18 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, [all...] |
/kernel/linux/linux-5.10/net/ipv4/ |
H A D | igmp.c | 160 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) is_in() argument 317 igmp_scount(struct ip_mc_list *pmc, int type, int gdeleted, int sdeleted) igmp_scount() argument 430 grec_size(struct ip_mc_list *pmc, int type, int gdel, int sdel) grec_size() argument 435 add_grhead(struct sk_buff *skb, struct ip_mc_list *pmc, int type, struct igmpv3_grec **ppgr, unsigned int mtu) add_grhead() argument 460 add_grec(struct sk_buff *skb, struct ip_mc_list *pmc, int type, int gdeleted, int sdeleted) add_grec() argument 588 igmpv3_send_report(struct in_device *in_dev, struct ip_mc_list *pmc) igmpv3_send_report() argument 646 kfree_pmc(struct ip_mc_list *pmc) kfree_pmc() argument 655 struct ip_mc_list *pmc, *pmc_prev, *pmc_next; igmpv3_send_cr() local 726 igmp_send_report(struct in_device *in_dev, struct ip_mc_list *pmc, int type) igmp_send_report() argument 863 igmp_xmarksources(struct ip_mc_list *pmc, int nsrcs, __be32 *srcs) igmp_xmarksources() argument 890 igmp_marksources(struct ip_mc_list *pmc, int nsrcs, __be32 *srcs) igmp_marksources() argument 1178 struct ip_mc_list *pmc; igmpv3_add_delrec() local 1219 struct ip_mc_list *pmc, *pmc_prev; igmpv3_del_delrec() local 1263 struct ip_mc_list *pmc, *nextpmc; igmpv3_clear_delrec() local 1710 struct ip_mc_list *pmc; ip_mc_unmap() local 1720 struct ip_mc_list *pmc; ip_mc_remap() local 1736 struct ip_mc_list *pmc; ip_mc_down() local 1787 struct ip_mc_list *pmc; ip_mc_up() local 1862 ip_mc_del1_src(struct ip_mc_list *pmc, int sfmode, __be32 *psfsrc) ip_mc_del1_src() argument 1914 struct ip_mc_list *pmc; ip_mc_del_src() local 1977 ip_mc_add1_src(struct ip_mc_list *pmc, int sfmode, __be32 *psfsrc) ip_mc_add1_src() argument 2006 sf_markstate(struct ip_mc_list *pmc) sf_markstate() argument 2020 sf_setstate(struct ip_mc_list *pmc) sf_setstate() argument 2086 struct ip_mc_list *pmc; ip_mc_add_src() local 2152 ip_mc_clear_src(struct ip_mc_list *pmc) ip_mc_clear_src() argument 2312 struct ip_mc_socklist *pmc; ip_mc_source() local 2448 struct ip_mc_socklist *pmc; ip_mc_msfilter() local 2536 struct ip_mc_socklist *pmc; ip_mc_msfget() local 2594 struct ip_mc_socklist *pmc; ip_mc_gsfget() local 2639 struct ip_mc_socklist *pmc; ip_mc_sf_allow() local [all...] |
/kernel/linux/linux-6.6/net/ipv4/ |
H A D | igmp.c | 160 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) is_in() argument 317 igmp_scount(struct ip_mc_list *pmc, int type, int gdeleted, int sdeleted) igmp_scount() argument 430 grec_size(struct ip_mc_list *pmc, int type, int gdel, int sdel) grec_size() argument 435 add_grhead(struct sk_buff *skb, struct ip_mc_list *pmc, int type, struct igmpv3_grec **ppgr, unsigned int mtu) add_grhead() argument 460 add_grec(struct sk_buff *skb, struct ip_mc_list *pmc, int type, int gdeleted, int sdeleted) add_grec() argument 588 igmpv3_send_report(struct in_device *in_dev, struct ip_mc_list *pmc) igmpv3_send_report() argument 646 kfree_pmc(struct ip_mc_list *pmc) kfree_pmc() argument 655 struct ip_mc_list *pmc, *pmc_prev, *pmc_next; igmpv3_send_cr() local 726 igmp_send_report(struct in_device *in_dev, struct ip_mc_list *pmc, int type) igmp_send_report() argument 863 igmp_xmarksources(struct ip_mc_list *pmc, int nsrcs, __be32 *srcs) igmp_xmarksources() argument 890 igmp_marksources(struct ip_mc_list *pmc, int nsrcs, __be32 *srcs) igmp_marksources() argument 1178 struct ip_mc_list *pmc; igmpv3_add_delrec() local 1219 struct ip_mc_list *pmc, *pmc_prev; igmpv3_del_delrec() local 1263 struct ip_mc_list *pmc, *nextpmc; igmpv3_clear_delrec() local 1710 struct ip_mc_list *pmc; ip_mc_unmap() local 1720 struct ip_mc_list *pmc; ip_mc_remap() local 1736 struct ip_mc_list *pmc; ip_mc_down() local 1787 struct ip_mc_list *pmc; ip_mc_up() local 1862 ip_mc_del1_src(struct ip_mc_list *pmc, int sfmode, __be32 *psfsrc) ip_mc_del1_src() argument 1914 struct ip_mc_list *pmc; ip_mc_del_src() local 1977 ip_mc_add1_src(struct ip_mc_list *pmc, int sfmode, __be32 *psfsrc) ip_mc_add1_src() argument 2006 sf_markstate(struct ip_mc_list *pmc) sf_markstate() argument 2020 sf_setstate(struct ip_mc_list *pmc) sf_setstate() argument 2086 struct ip_mc_list *pmc; ip_mc_add_src() local 2152 ip_mc_clear_src(struct ip_mc_list *pmc) ip_mc_clear_src() argument 2312 struct ip_mc_socklist *pmc; ip_mc_source() local 2450 struct ip_mc_socklist *pmc; ip_mc_msfilter() local 2541 struct ip_mc_socklist *pmc; ip_mc_msfget() local 2601 struct ip_mc_socklist *pmc; ip_mc_gsfget() local 2648 struct ip_mc_socklist *pmc; ip_mc_sf_allow() local [all...] |
/kernel/linux/linux-5.10/arch/powerpc/perf/ |
H A D | ppc970-pmu.c | 147 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() 262 unsigned int pmc, unit, byte, psel; p970_compute_mmcr() local 405 p970_disable_pmc(unsigned int pmc, struct mmcr_regs *mmcr) p970_disable_pmc() argument [all...] |
H A D | power7-pmu.c | 86 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 in find_alternative_decode() 215 int pmc, psel; power7_marked_instr_event() local 252 unsigned int pmc, unit, combine, l2sel, psel; power7_compute_mmcr() local 314 power7_disable_pmc(unsigned int pmc, struct mmcr_regs *mmcr) power7_disable_pmc() argument [all...] |
H A D | power5+-pmu.c | 137 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 in power5p_limited_pmc_event() 245 int pmc, altpmc, pp, j; find_alternative_bdecode() local 405 int pmc, psel; power5p_marked_instr_event() local 458 unsigned int pmc, unit, byte, psel; power5p_compute_mmcr() local 602 power5p_disable_pmc(unsigned int pmc, struct mmcr_regs *mmcr) power5p_disable_pmc() argument [all...] |
/kernel/linux/linux-6.6/arch/powerpc/perf/ |
H A D | ppc970-pmu.c | 147 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() 263 unsigned int pmc, unit, byte, psel; p970_compute_mmcr() local 406 p970_disable_pmc(unsigned int pmc, struct mmcr_regs *mmcr) p970_disable_pmc() argument [all...] |
H A D | power7-pmu.c | 86 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 in find_alternative_decode() 215 int pmc, psel; power7_marked_instr_event() local 253 unsigned int pmc, unit, combine, l2sel, psel; power7_compute_mmcr() local 315 power7_disable_pmc(unsigned int pmc, struct mmcr_regs *mmcr) power7_disable_pmc() argument [all...] |
H A D | power5+-pmu.c | 137 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 in power5p_limited_pmc_event() 245 int pmc, altpmc, pp, j; find_alternative_bdecode() local 405 int pmc, psel; power5p_marked_instr_event() local 459 unsigned int pmc, unit, byte, psel; power5p_compute_mmcr() local 603 power5p_disable_pmc(unsigned int pmc, struct mmcr_regs *mmcr) power5p_disable_pmc() argument [all...] |
/kernel/linux/linux-5.10/net/ipv6/ |
H A D | mcast.c | 79 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) \ 117 for (pmc = rcu_dereference(np->ipv6_mc_list); \ 118 pmc != NULL; \ 119 pmc = rcu_dereference(pmc 332 struct ipv6_mc_socklist *pmc; ip6_mc_source() local 464 struct ipv6_mc_socklist *pmc; ip6_mc_msfilter() local 555 struct ipv6_mc_socklist *pmc; ip6_mc_msfget() local 726 struct ifmcaddr6 *pmc; mld_add_delrec() local 764 struct ifmcaddr6 *pmc, *pmc_prev; mld_del_delrec() local 803 struct ifmcaddr6 *pmc, *nextpmc; mld_clear_delrec() local 1103 mld_xmarksources(struct ifmcaddr6 *pmc, int nsrcs, const struct in6_addr *srcs) mld_xmarksources() argument 1131 mld_marksources(struct ifmcaddr6 *pmc, int nsrcs, const struct in6_addr *srcs) mld_marksources() argument 1503 is_in(struct ifmcaddr6 *pmc, struct ip6_sf_list *psf, int type, int gdeleted, int sdeleted) is_in() argument 1548 mld_scount(struct ifmcaddr6 *pmc, int type, int gdeleted, int sdeleted) mld_scount() argument 1695 grec_size(struct ifmcaddr6 *pmc, int type, int gdel, int sdel) grec_size() argument 1700 add_grhead(struct sk_buff *skb, struct ifmcaddr6 *pmc, int type, struct mld2_grec **ppgr, unsigned int mtu) add_grhead() argument 1724 add_grec(struct sk_buff *skb, struct ifmcaddr6 *pmc, int type, int gdeleted, int sdeleted, int crsend) add_grec() argument 1849 mld_send_report(struct inet6_dev *idev, struct ifmcaddr6 *pmc) mld_send_report() argument 1904 struct ifmcaddr6 *pmc, *pmc_prev, *pmc_next; mld_send_cr() local 2074 struct ifmcaddr6 *pmc; mld_send_initial_cr() local 2122 ip6_mc_del1_src(struct ifmcaddr6 *pmc, int sfmode, const struct in6_addr *psfsrc) ip6_mc_del1_src() argument 2163 struct ifmcaddr6 *pmc; ip6_mc_del_src() local 2219 ip6_mc_add1_src(struct ifmcaddr6 *pmc, int sfmode, const struct in6_addr *psfsrc) ip6_mc_add1_src() argument 2245 sf_markstate(struct ifmcaddr6 *pmc) sf_markstate() argument 2259 sf_setstate(struct ifmcaddr6 *pmc) sf_setstate() argument 2327 struct ifmcaddr6 *pmc; ip6_mc_add_src() local 2384 ip6_mc_clear_src(struct ifmcaddr6 *pmc) ip6_mc_clear_src() argument 2624 struct ifmcaddr6 *pmc; ipv6_mc_rejoin_groups() local [all...] |
/kernel/linux/linux-5.10/drivers/mfd/ |
H A D | intel_pmc_bxt.c | 75 * @pmc: PMC device pointer 83 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() 98 * @pmc: PMC device pointer 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 in intel_pmc_gcr_update() 139 intel_pmc_s0ix_counter_read(struct intel_pmc_dev *pmc, u64 *data) intel_pmc_s0ix_counter_read() argument 169 struct intel_pmc_dev *pmc = dev_get_drvdata(dev); simplecmd_store() local 205 struct intel_pmc_dev *pmc = dev_get_drvdata(dev); northpeak_store() local 303 intel_pmc_get_resources(struct platform_device *pdev, struct intel_pmc_dev *pmc, struct intel_scu_ipc_data *scu_data) intel_pmc_get_resources() argument 393 intel_pmc_create_devices(struct intel_pmc_dev *pmc) intel_pmc_create_devices() argument 426 struct intel_pmc_dev *pmc; intel_pmc_probe() local [all...] |
/kernel/linux/linux-6.6/drivers/mfd/ |
H A D | intel_pmc_bxt.c | 75 * @pmc: PMC device pointer 83 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() 98 * @pmc: PMC device pointer 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 in intel_pmc_gcr_update() 139 intel_pmc_s0ix_counter_read(struct intel_pmc_dev *pmc, u64 *data) intel_pmc_s0ix_counter_read() argument 169 struct intel_pmc_dev *pmc = dev_get_drvdata(dev); simplecmd_store() local 205 struct intel_pmc_dev *pmc = dev_get_drvdata(dev); northpeak_store() local 303 intel_pmc_get_resources(struct platform_device *pdev, struct intel_pmc_dev *pmc, struct intel_scu_ipc_data *scu_data) intel_pmc_get_resources() argument 393 intel_pmc_create_devices(struct intel_pmc_dev *pmc) intel_pmc_create_devices() argument 426 struct intel_pmc_dev *pmc; intel_pmc_probe() local [all...] |
/kernel/linux/linux-5.10/arch/arm64/kvm/ |
H A D | pmu-emul.c | 19 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() 61 * kvm_pmu_pmc_is_chained - determine if the pmc is chained 62 * @pmc: The PMU counter pointer 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() 87 kvm_pmu_get_canonical_pmc(struct kvm_pmc *pmc) kvm_pmu_get_canonical_pmc() argument 95 kvm_pmu_get_alternate_pmc(struct kvm_pmc *pmc) kvm_pmu_get_alternate_pmc() argument 128 kvm_pmu_get_pair_counter_value(struct kvm_vcpu *vcpu, struct kvm_pmc *pmc) kvm_pmu_get_pair_counter_value() argument 167 struct kvm_pmc *pmc = &pmu->pmc[select_idx]; kvm_pmu_get_counter_value() local 202 kvm_pmu_release_perf_event(struct kvm_pmc *pmc) kvm_pmu_release_perf_event() argument 218 kvm_pmu_stop_counter(struct kvm_vcpu *vcpu, struct kvm_pmc *pmc) kvm_pmu_stop_counter() argument 312 struct kvm_pmc *pmc; kvm_pmu_enable_counter_mask() local 347 struct kvm_pmc *pmc; kvm_pmu_disable_counter_mask() local 475 struct kvm_pmc *pmc = perf_event->overflow_handler_context; kvm_pmu_perf_overflow() local 601 struct kvm_pmc *pmc; kvm_pmu_create_perf_event() local 691 struct kvm_pmc *pmc = &pmu->pmc[select_idx], *canonical_pmc; kvm_pmu_update_pmc_chained() local [all...] |
/kernel/linux/linux-5.10/arch/x86/kvm/vmx/ |
H A D | pmu_intel.c | 35 /* mapping between fixed pmc index and intel_arch_events array */ 45 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() 205 struct kvm_pmc *pmc; intel_msr_idx_to_pmc() local 217 struct kvm_pmc *pmc; intel_pmu_get_msr() local 257 struct kvm_pmc *pmc; intel_pmu_set_msr() local 428 struct kvm_pmc *pmc = NULL; intel_pmu_reset() local [all...] |