/linux-6.14.4/arch/powerpc/sysdev/ |
D | pmi.c | 3 * pmi driver 7 * PMI (Platform Management Interrupt) is a way to communicate 26 #include <asm/pmi.h> 51 pr_debug("pmi: got message of type %d\n", type); in pmi_irq_handler() 54 printk(KERN_WARNING "pmi: got unexpected ACK message.\n"); in pmi_irq_handler() 60 printk(KERN_WARNING "pmi: expected ACK, but got %d\n", type); in pmi_irq_handler() 93 { .type = "ibm,pmi", .name = "ibm,pmi" }, 94 { .type = "ibm,pmi" }, 106 pr_debug("pmi: notifying handler %p\n", handler); in pmi_notify_handlers() 119 printk(KERN_ERR "pmi: driver has already been initialized.\n"); in pmi_of_probe() [all …]
|
D | Makefile | 15 obj-$(CONFIG_PPC_PMI) += pmi.o
|
/linux-6.14.4/Documentation/arch/powerpc/ |
D | imc.rst | 176 PMI (Performance Monitoring Interrupts) interrupt handling is avoided, since IMC 179 time without PMI processing overhead. 183 PMI interrupts count when `perf top` command is executed without trace-imc event. 187 # grep PMI /proc/interrupts 188 PMI: 0 0 0 0 Performance monitoring interrupts 191 # grep PMI /proc/interrupts 192 PMI: 39735 8710 17338 17801 Performance monitoring interrupts 195 # grep PMI /proc/interrupts 196 PMI: 39735 8710 17338 17801 Performance monitoring interrupts 199 That is, the PMI interrupt counts do not increment when using the `trace_imc` event.
|
/linux-6.14.4/drivers/cpufreq/ |
D | Kconfig.powerpc | 12 bool "CBE frequency scaling using PMI interface" 16 Select this, if you want to use the PMI interface to switch 17 frequencies. Using PMI, the processor will not only be able to run at
|
D | ppc_cbe_cpufreq_pmi.c | 3 * pmi backend for the cbe_cpufreq driver 18 #include <asm/pmi.h> 54 "PMI\n", time); in cbe_cpufreq_set_pmode_pmi() 57 pr_debug("PMI returned slow mode %d\n", ret); in cbe_cpufreq_set_pmode_pmi()
|
/linux-6.14.4/arch/powerpc/include/asm/ |
D | pmi.h | 6 * Definitions for talking with PMI device on PowerPC 8 * PMI (Platform Management Interrupt) is a way to communicate
|
D | hw_irq.h | 222 * Invoked from PMU callback functions to set PMI bit in the paca. in set_pmi_irq_pending() 234 * Invoked from PMU callback functions to clear the pending PMI bit in clear_pmi_irq_pending() 247 * PMI bit in the paca. in pmi_irq_pending() 257 * To support disabling and enabling of irq with PMI, set of 382 * This allows PMI interrupts to profile irq handlers.
|
/linux-6.14.4/arch/arm64/boot/dts/qcom/ |
D | msm8996-sony-xperia-tone.dtsi | 380 pmi-clk-gpio-pins { 506 pmi-gpio2-nc-pins { 516 pmi-gpio3-nc-pins { 526 pmi-gpio4-nc-pins { 535 pmi-gpio5-nc-pins { 544 pmi-gpio6-nc-pins { 553 pmi-gpio7-nc-pins { 562 pmi-gpio8-nc-pins { 577 pmi-gpio10-nc-pins {
|
/linux-6.14.4/arch/powerpc/platforms/cell/ |
D | cbe_powerbutton.c | 14 #include <asm/pmi.h> 80 printk(KERN_ERR "%s: Failed to register with pmi.\n", __func__); in cbe_powerbutton_init()
|
D | Kconfig | 91 PMI (Platform Management Interrupt) is a way to
|
/linux-6.14.4/drivers/video/fbdev/ |
D | vesafb.c | 62 static int pmi_setpal __read_mostly = 1; /* pmi for palette changes ??? */ 109 * Fallback to the PMI.... in vesa_setpalette() 355 printk(KERN_INFO "vesafb: pmi: set display start = %p, set palette = %p\n",pmi_start,pmi_pal); in vesafb_probe() 357 printk(KERN_INFO "vesafb: pmi: ports = "); in vesafb_probe() 368 printk(KERN_INFO "vesafb: can't handle memory requests, pmi disabled\n"); in vesafb_probe()
|
D | uvesafb.c | 50 static bool pmi_setpal = true; /* use PMI for palette changes */ 575 pr_info("pmi: set display start = %p, set palette = %p\n", in uvesafb_vbe_getpmi() 579 pr_info("pmi: ports ="); in uvesafb_vbe_getpmi() 586 pr_info("can't handle memory requests, pmi disabled\n"); in uvesafb_vbe_getpmi() 809 pr_warn("NX protection is active, better not use the PMI\n"); in uvesafb_vbe_init() 1090 * so we only allow it if we have a PMI. in uvesafb_pan_display() 1965 MODULE_PARM_DESC(pmipal, "Set palette using PMI calls");
|
/linux-6.14.4/arch/x86/kvm/ |
D | pmu.c | 108 * for emulated instructions, avoiding BUFFER_OVF PMI when in __kvm_perf_overflow() 114 /* Indicate PEBS overflow PMI to guest. */ in __kvm_perf_overflow() 134 * to be reprogrammed, e.g. if a PMI for the previous event races with in kvm_perf_overflow() 161 * PEBS PMI handler to determine whether the PEBS overflow PMI in pmc_get_pebs_precise_level() 242 * generating a PMI. KVM just needs to detect overflow on emulated in pmc_pause_counter()
|
/linux-6.14.4/arch/alpha/kernel/ |
D | perf_event.c | 304 * with an overflowed counter just before the PMI service routine is called. 444 * PMI disabled on rare occasions. The alpha_perf_event_update() in alpha_pmu_add() 447 * final PMI to occur before we disable interrupts. in alpha_pmu_add() 823 pr_warn("PMI: silly index %ld\n", la_ptr); in alpha_perf_event_irq_handler() 846 pr_warn("PMI: No event at index %d!\n", idx); in alpha_perf_event_irq_handler()
|
D | irq.c | 80 seq_puts(p, "PMI: "); in arch_show_interrupts()
|
/linux-6.14.4/arch/x86/events/intel/ |
D | bts.c | 224 * Ordering PMU callbacks wrt themselves and the PMI is done by means 295 /* ACTIVE -> INACTIVE(PMI)/STOPPED(->stop()) */ in __bts_event_stop() 461 * the write ptr against the PMI threshold. in intel_bts_interrupt()
|
D | lbr.c | 121 static void __intel_pmu_lbr_enable(bool pmi) in __intel_pmu_lbr_enable() argument 130 if (pmi && x86_pmu.version >= 4) in __intel_pmu_lbr_enable() 134 * No need to reprogram LBR_SELECT in a PMI, as it in __intel_pmu_lbr_enable() 139 if (!static_cpu_has(X86_FEATURE_ARCH_LBR) && !pmi && cpuc->lbr_sel) in __intel_pmu_lbr_enable() 149 * If FREEZE_LBRS_ON_PMI is set, PMI near call/return instructions in __intel_pmu_lbr_enable() 741 void intel_pmu_lbr_enable_all(bool pmi) in intel_pmu_lbr_enable_all() argument 746 __intel_pmu_lbr_enable(pmi); in intel_pmu_lbr_enable_all()
|
D | pt.c | 544 * PMI. in pt_config() 566 /* may be already stopped by a PMI */ in pt_config_stop() 1501 * intel_pt_interrupt() - PT PMI handler 1545 /* snapshot counters don't use PMI, so it's safe */ in intel_pt_interrupt() 1572 * concurrent PMI should be handled fine. in intel_pt_handle_vmx() 1611 * PMI might have just cleared these, so resume_allowed in pt_event_start() 1658 * Protect against the PMI racing with disabling wrmsr, in pt_event_stop()
|
D | pt.h | 117 * @handle_nmi: do handle PT PMI on this cpu, there's an active event
|
/linux-6.14.4/arch/powerpc/perf/ |
D | core-book3s.c | 780 * in some places (e.g., interrupt handlers) that allows PMI interrupts 784 * access), but in that case there is no need for prompt PMI handling. 1323 * Also clear PMXE to disable PMI's getting triggered in some in power_pmu_disable() 1345 * while a masked PMI is pending. One such case is when in power_pmu_disable() 1346 * a PMI happens during interrupt replay and perf counter in power_pmu_disable() 1349 * Disable the interrupt by clearing the paca bit for PMI in power_pmu_disable() 1351 * warning if there is PMI pending, but no counter is found in power_pmu_disable() 1355 * could happen that code hits a PMC overflow without PMI in power_pmu_disable() 1356 * pending in paca. Hence only clear PMI pending if it was in power_pmu_disable() 1359 * If a PMI is pending, then MSR[EE] must be disabled (because in power_pmu_disable() [all …]
|
/linux-6.14.4/include/video/ |
D | uvesafb.h | 122 u8 pmi_setpal; /* PMI for palette changes */
|
/linux-6.14.4/drivers/edac/ |
D | pnd2_edac.c | 52 DNV, /* All requests go to PMI CH0 on each slice (CH1 disabled) */ 307 static bool two_channels; /* Both PMI channels in one slice enabled */ 508 /* PMI channel idx (always 0) for asymmetric region */ in get_registers() 511 /* PMI channel bitmap (always 1) for symmetric region */ in get_registers() 730 /* Translate PMI address to memory (rank, row, bank, column) */ 973 #define dnv_get_bit(pmi, in, out) ((int)(((pmi) >> (in)) & 1u) << (out)) argument 1108 /* pmi channel idx to dimm channel idx */ in get_memory_error_data()
|
/linux-6.14.4/include/linux/iio/adc/ |
D | qcom-vadc-common.h | 91 * SCALE_PMI_CHG_TEMP: Conversion for PMI CHG temp
|
/linux-6.14.4/Documentation/devicetree/bindings/pinctrl/ |
D | nvidia,tegra210-pinmux.yaml | 88 i2s5a, i2s5b, iqc0, iqc1, jtag, pe, pe0, pe1, pmi, pwm0,
|
D | nvidia,tegra114-pinmux.yaml | 92 nand, nand_alt, owr, pmi, pwm0, pwm1, pwm2, pwm3, pwron,
|