/linux-6.14.4/drivers/cpufreq/ |
D | longrun.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * (C) 2002 - 2003 Dominik Brodowski <[email protected]> 23 * performance_pctg = (current_freq - low_freq)/(high_freq - low_freq) 29 * longrun_get_policy - get the current LongRun policy 40 pr_debug("longrun flags are %x - %x\n", msr_lo, msr_hi); in longrun_get_policy() 42 policy->policy = CPUFREQ_POLICY_PERFORMANCE; in longrun_get_policy() 44 policy->policy = CPUFREQ_POLICY_POWERSAVE; in longrun_get_policy() 47 pr_debug("longrun ctrl is %x - %x\n", msr_lo, msr_hi); in longrun_get_policy() 53 policy->min = policy->max = longrun_high_freq; in longrun_get_policy() 55 policy->min = longrun_low_freq + msr_lo * in longrun_get_policy() [all …]
|
D | powernow-k8.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 3 * (c) 2003-2006 Advanced Micro Devices, Inc. 9 u32 numps; /* number of p-states */ 10 u32 batps; /* number of p-states supported on battery */ 13 * vid/fid pairings, but are modified during the ->target() call 36 * handle hotplug events - so just point at cpufreq pol->cpus 53 /* Model Specific Registers for p-state transitions. MSRs are 64-bit. For */ 54 /* writes (wrmsr - opcode 0f 30), the register number is placed in ecx, and */ 55 /* the value to write is placed in edx:eax. For reads (rdmsr - opcode 0f 32), */ 56 /* the register number is placed in ecx, and the data is returned in edx:eax. */ [all …]
|
D | powernow-k7.c | 1 // SPDX-License-Identifier: GPL-2.0-only 10 * - We cli/sti on stepping A0 CPUs around the FID/VID transition. 13 * - We disable half multipliers if ACPI is used on A0 stepping CPUs. 38 #include "powernow-k7.h" 69 /* divide by 1000 to get VCore voltage in V. */ 74 1075, 1050, 1025, 1000, 975, 950, 925, 0, 82 150, 225, 160, 165, 170, 180, -1, -1, 95 static unsigned int minimum_speed = -1; 105 unsigned int f = fsb / 1000; in check_fsb() 107 delta = (fsbspeed > f) ? fsbspeed - f : f - fsbspeed; in check_fsb() [all …]
|
D | powernow-k8.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * (c) 2003-2012 Advanced Micro Devices, Inc. 8 * Based on the powernow-k7.c module written by Dave Jones. 48 #include "powernow-k8.h" 66 return 1000 * find_freq_from_fid(fid); in find_khz_freq_from_fid() 112 data->currvid = hi & MSR_S_HI_CURRENT_VID; in query_current_values_with_pending_wait() 113 data->currfid = lo & MSR_S_LO_CURRENT_FID; in query_current_values_with_pending_wait() 121 udelay((1 << data->irt) * 10); in count_off_irt() 127 udelay(data->vstable * VST_UNITS_20US); in count_off_vst() 149 u32 savevid = data->currvid; in write_new_fid() [all …]
|
/linux-6.14.4/Documentation/devicetree/bindings/arm/ |
D | calxeda.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Rob Herring <[email protected]> 12 Bindings for boards with Calxeda Cortex-A9 based ECX-1000 (Highbank) SOC 13 or Cortex-A15 based ECX-2000 SOCs 20 - enum: 21 - calxeda,highbank 22 - calxeda,ecx-2000
|
/linux-6.14.4/arch/x86/kernel/cpu/ |
D | vmware.c | 20 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 49 #define STEALCLOCK_NOT_AVAILABLE (-1) 57 /* only for little-endian */ 132 u32 eax, ebx, ecx; in __vmware_platform() local 134 eax = vmware_hypercall3(VMWARE_CMD_GETVERSION, 0, &ebx, &ecx); in __vmware_platform() 155 early_param("no-vmw-sched-clock", setup_vmw_sched_clock); 162 early_param("no-steal-acc", parse_no_stealacc); 170 ns -= vmware_cyc2ns.cyc2ns_offset; in vmware_sched_clock() 179 clocks_calc_mult_shift(&d->cyc2ns_mul, &d->cyc2ns_shift, in vmware_cyc2ns_setup() 181 d->cyc2ns_offset = mul_u64_u32_shr(tsc_now, d->cyc2ns_mul, in vmware_cyc2ns_setup() [all …]
|
D | mshyperv.c | 1 // SPDX-License-Identifier: GPL-2.0-only 50 return reg - HV_X64_MSR_SINT0 + HV_X64_MSR_NESTED_SINT0; in hv_get_nested_msr() 143 * Routines to do per-architecture handling of stimer0 232 * Hyper-V clock counter resets during hibernation. Save and restore clock 249 * - reference counter (time) now. in restore_hv_clock_tsc_state() 251 hv_adj_sched_clock_offset(hv_ref_counter_at_suspend - hv_read_reference_counter()); in restore_hv_clock_tsc_state() 256 * functions of x86_platform. The Hyper-V clock counter is reset during 257 * suspend-resume and the offset used to measure time needs to be 316 * Prior to WS2016 Debug-VM sends NMIs to all CPUs which makes 322 static atomic_t nmi_cpu = ATOMIC_INIT(-1); in hv_nmi_unknown() [all …]
|
/linux-6.14.4/arch/arm/mach-highbank/ |
D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 3 bool "Calxeda ECX-1000/2000 (Highbank/Midway)"
|
/linux-6.14.4/tools/testing/selftests/kvm/include/x86/ |
D | processor.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 13 #include <asm/msr-index.h> 105 * Pack the information into a 64-bit value so that each X86_FEATURE_XXX can be 134 #define X86_FEATURE_MWAIT KVM_X86_CPU_FEATURE(0x1, 0, ECX, 3) 135 #define X86_FEATURE_VMX KVM_X86_CPU_FEATURE(0x1, 0, ECX, 5) 136 #define X86_FEATURE_SMX KVM_X86_CPU_FEATURE(0x1, 0, ECX, 6) 137 #define X86_FEATURE_PDCM KVM_X86_CPU_FEATURE(0x1, 0, ECX, 15) 138 #define X86_FEATURE_PCID KVM_X86_CPU_FEATURE(0x1, 0, ECX, 17) 139 #define X86_FEATURE_X2APIC KVM_X86_CPU_FEATURE(0x1, 0, ECX, 21) 140 #define X86_FEATURE_MOVBE KVM_X86_CPU_FEATURE(0x1, 0, ECX, 22) [all …]
|
/linux-6.14.4/arch/x86/kernel/cpu/resctrl/ |
D | internal.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 18 #define CQM_LIMBOCHECK_INTERVAL 1000 21 #define MBM_OVERFLOW_INTERVAL 1000 33 #define MBM_CNTR_WIDTH_OFFSET_MAX (62 - MBM_CNTR_WIDTH_BASE) 41 /* Non-Temporal Writes to Local Memory */ 44 /* Non-Temporal Writes to Remote Memory */ 60 * cpumask_any_housekeeping() - Choose any CPU in @mask, preferring those that 110 struct kernfs_fs_context *kfc = fc->fs_private; in rdt_fc2context() 116 * struct mon_evt - Entry in the event list of a resource 120 * @list: entry in &rdt_resource->evt_list [all …]
|
/linux-6.14.4/drivers/thermal/intel/ |
D | x86_pkg_temp_thermal.c | 1 // SPDX-License-Identifier: GPL-2.0-only 93 * - cpu hotplug: Read serialized by cpu hotplug lock 96 * - Other callsites: Must hold pkg_temp_lock 112 ret = intel_tcc_get_temp(zonedev->cpu, &val, true); in sys_get_curr_temp() 116 *temp = val * 1000; in sys_get_curr_temp() 126 unsigned int trip_index = THERMAL_TRIP_PRIV_TO_INT(trip->priv); in sys_set_trip_temp() 130 tj_max = intel_tcc_get_tjmax(zonedev->cpu); in sys_set_trip_temp() 133 tj_max *= 1000; in sys_set_trip_temp() 135 val = (tj_max - temp)/1000; in sys_set_trip_temp() 138 return -EINVAL; in sys_set_trip_temp() [all …]
|
/linux-6.14.4/tools/power/x86/x86_energy_perf_policy/ |
D | x86_energy_perf_policy.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * x86_energy_perf_policy -- set the energy versus performance 7 * Copyright (c) 2010 - 2017 Intel Corporation. 30 #define OPTARG_NORMAL (INT_MAX - 1) 31 #define OPTARG_POWER (INT_MAX - 2) 32 #define OPTARG_BALANCE_POWER (INT_MAX - 3) 33 #define OPTARG_BALANCE_PERFORMANCE (INT_MAX - 4) 34 #define OPTARG_PERFORMANCE (INT_MAX - 5) 103 fprintf(stderr, "scope: --cpu cpu-list [--hwp-use-pkg #] | --pkg pkg-list\n"); in usage() 104 fprintf(stderr, "field: --all | --epb | --hwp-epp | --hwp-min | --hwp-max | --hwp-desired\n"); in usage() [all …]
|
/linux-6.14.4/drivers/idle/ |
D | intel_idle.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * intel_idle.c - native hardware idle loop for modern Intel processors 5 * Copyright (c) 2013 - 2020, Intel Corporation. 23 * for preventing entry into deep C-states 25 * CPU will flush caches as needed when entering a C-state via MWAIT 33 * ACPI has a .suspend hack to turn off deep c-statees during suspend 39 /* un-comment DEBUG to enable pr_debug() statements */ 56 #include <asm/intel-family.h> 58 #include <asm/spec-ctrl.h> 69 static int max_cstate = CPUIDLE_STATE_MAX - 1; [all …]
|
/linux-6.14.4/drivers/video/fbdev/ |
D | uvesafb.c | 1 // SPDX-License-Identifier: GPL-2.0-only 80 if (msg->seq >= UVESAFB_TASKS_MAX) in uvesafb_cn_callback() 84 task = uvfb_tasks[msg->seq]; in uvesafb_cn_callback() 86 if (!task || msg->ack != task->ack) { in uvesafb_cn_callback() 91 utask = (struct uvesafb_task *)msg->data; in uvesafb_cn_callback() 94 if (task->t.buf_len < utask->buf_len || in uvesafb_cn_callback() 95 utask->buf_len > msg->len - sizeof(*utask)) { in uvesafb_cn_callback() 100 uvfb_tasks[msg->seq] = NULL; in uvesafb_cn_callback() 103 memcpy(&task->t, utask, sizeof(*utask)); in uvesafb_cn_callback() 105 if (task->t.buf_len && task->buf) in uvesafb_cn_callback() [all …]
|
D | vesafb.c | 1 // SPDX-License-Identifier: GPL-2.0-only 8 * (c) 1998 Gerd Knorr <[email protected]-berlin.de> 31 /* --------------------------------------------------------------------- */ 43 .height = -1, 44 .width = -1, 68 /* --------------------------------------------------------------------- */ 76 offset = (var->yoffset * info->fix.line_length + var->xoffset) / 4; in vesafb_pan_display() 83 "c" (offset), /* ECX */ in vesafb_pan_display() 93 int shift = 16 - depth; in vesa_setpalette() 94 int err = -EINVAL; in vesa_setpalette() [all …]
|
/linux-6.14.4/tools/power/x86/turbostat/ |
D | turbostat.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * turbostat -- show CPU frequency and C-state residency 19 #define VFM_MODEL_MASK GENMASK(VFM_FAMILY_BIT - 1, VFM_MODEL_BIT) 20 #define VFM_FAMILY_MASK GENMASK(VFM_VENDOR_BIT - 1, VFM_FAMILY_BIT) 21 #define VFM_VENDOR_MASK GENMASK(VFM_RSVD_BIT - 1, VFM_VENDOR_BIT) 75 * 1. built-in only, the sysfs counters are not here -- we learn of those at run-time 77 * matching on them for --show and --hide. 82 * Usually truncated to 7 characters, but also handles 18 columns for raw 64-bit counters 98 #define ROUND_UP_TO_PAGE_SIZE(n) (((n) + 0x1000UL-1UL) & ~(0x1000UL-1UL)) 429 …bool has_per_core_rapl; /* Indicates cores energy collection is per-core, not per-package. AMD spe… [all …]
|
/linux-6.14.4/drivers/hwmon/ |
D | dell-smm-hwmon.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * dell-smm-hwmon.c -- Linux driver for accessing the SMM BIOS on Dell laptops. 9 * Copyright (C) 2013, 2014 Guenter Roeck <linux@roeck-us.net> 59 #define I8K_FAN_RPM_THRESHOLD 1000 72 #define DELL_SMM_WMI_GUID "F1DDEE52-063C-4784-A11E-8A06684B9B01" 81 unsigned int ecx; member 191 return -EBUSY; in i8k_smm_func() 197 "+a" (regs->eax), in i8k_smm_func() 198 "+b" (regs->ebx), in i8k_smm_func() 199 "+c" (regs->ecx), in i8k_smm_func() [all …]
|
D | fam15h_power.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * fam15h_power.c - AMD Family 15h processor power monitoring 5 * Copyright (c) 2011-2016 Advanced Micro Devices, Inc. 11 #include <linux/hwmon-sysfs.h> 43 #define MAX_INTERVAL 1000 78 struct pci_dev *f4 = data->pdev; in power1_input_show() 80 pci_bus_read_config_dword(f4->bus, PCI_DEVFN(PCI_SLOT(f4->devfn), 5), in power1_input_show() 97 pci_bus_read_config_dword(f4->bus, PCI_DEVFN(PCI_SLOT(f4->devfn), 5), in power1_input_show() 110 data->base_tdp)) << running_avg_range; in power1_input_show() 111 curr_pwr_watts -= running_avg_capture; in power1_input_show() [all …]
|
/linux-6.14.4/arch/x86/kernel/ |
D | tsc.c | 1 // SPDX-License-Identifier: GPL-2.0-only 42 #define KHZ 1000 83 data->cyc2ns_offset = this_cpu_read(cyc2ns.data[idx].cyc2ns_offset); in __cyc2ns_read() 84 data->cyc2ns_mul = this_cpu_read(cyc2ns.data[idx].cyc2ns_mul); in __cyc2ns_read() 85 data->cyc2ns_shift = this_cpu_read(cyc2ns.data[idx].cyc2ns_shift); in __cyc2ns_read() 116 * cyc2ns_scale needs to be a 32-bit value so that 32-bit multiplication 117 * (64-bit result) can be used. 122 * -[email protected] "math is hard, lets go shopping!" 166 * conversion algorithm shifting a 32-bit value (now specifies a 64-bit in __set_cyc2ns_scale() 167 * value) - refer perf_event_mmap_page documentation in perf_event.h. in __set_cyc2ns_scale() [all …]
|
D | hpet.c | 1 // SPDX-License-Identifier: GPL-2.0-only 134 * is_hpet_enabled - Check whether the legacy HPET timer interrupt is enabled 211 hd.hd_irq[i] = hc->irq; in hpet_reserve_platform_timers() 213 switch (hc->mode) { in hpet_reserve_platform_timers() 216 hc->mode = HPET_MODE_DEVICE; in hpet_reserve_platform_timers() 220 hpet_reserve_timer(&hd, hc->num); in hpet_reserve_platform_timers() 236 if (hc->mode == HPET_MODE_UNUSED) { in hpet_select_device_channel() 237 hc->mode = HPET_MODE_DEVICE; in hpet_select_device_channel() 300 unsigned int channel = clockevent_to_channel(evt)->num; in hpet_clkevt_set_state_periodic() 305 delta = ((uint64_t)(NSEC_PER_SEC / HZ)) * evt->mult; in hpet_clkevt_set_state_periodic() [all …]
|
D | smpboot.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 13 * Pentium Pro and Pentium-II/Xeon MP machines. 19 * Alan Cox : By repeated request 8) - Total BogoMIPS report. 32 * Martin J. Bligh : Added support for multi-quad systems 86 #include <asm/intel-family.h> 88 #include <asm/spec-ctrl.h> 92 #include <asm/spec-ctrl.h> 164 if (!--smpboot_warm_reset_vector_count) { in smpboot_restore_warm_reset_vector() 242 * 32-bit specific. 64-bit reaches this code with the correct page in start_secondary() 273 * synchronization state to ALIVE and spin-waits for the control CPU to in start_secondary() [all …]
|
/linux-6.14.4/tools/testing/selftests/x86/ |
D | amx.c | 1 // SPDX-License-Identifier: GPL-2.0 25 # error This test is 64-bit only 111 uint32_t eax, ebx, ecx, edx; in check_cpuid_xtiledata() local 114 eax, ebx, ecx, edx); in check_cpuid_xtiledata() 126 eax, ebx, ecx, edx); in check_cpuid_xtiledata() 145 /* XSAVE buffer should be 64B-aligned. */ in alloc_xbuf() 154 memset(&buffer->header, 0, sizeof(buffer->header)); in clear_xstate_header() 160 *(uint64_t *)(&buffer->header) = bv; in set_xstatebv() 165 int *ptr = (int *)&xbuf->bytes[xtiledata.xbuf_offset]; in set_rand_tiledata() 211 #define SIGNAL_BUF_LEN 1000 [all …]
|
/linux-6.14.4/arch/x86/kvm/vmx/ |
D | vmx.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Kernel-based Virtual Machine driver for Linux 5 * This module enables machines with Intel VT-x extensions to run virtual 31 #include <linux/entry-kvm.h> 50 #include <asm/spec-ctrl.h> 77 MODULE_DESCRIPTION("KVM support for VMX (Intel VT-x) extensions"); 140 /* Guest_tsc -> host_tsc conversion requires 64-bit division. */ 192 * These 2 parameters are used to config the controls for Pause-Loop Exiting: 208 /* Default doubles per-vcpu window every exit. */ 212 /* Default resets per-vcpu window every exit to ple_window. */ [all …]
|
/linux-6.14.4/arch/x86/crypto/ |
D | aes-xts-avx-x86_64.S | 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 3 * AES-XTS for modern x86_64 CPUs 11 * This file implements AES-XTS for modern x86_64 CPUs. To handle the 16 * AES-NI + AVX 17 * - 128-bit vectors (1 AES block per vector) 18 * - VEX-coded instructions 19 * - xmm0-xmm15 20 * - This is for older CPUs that lack VAES but do have AVX. 23 * - 256-bit vectors (2 AES blocks per vector) 24 * - VEX-coded instructions [all …]
|
/linux-6.14.4/drivers/net/ethernet/stmicro/stmmac/ |
D | dwmac-intel.c | 1 // SPDX-License-Identifier: GPL-2.0 5 #include <linux/clk-provider.h> 8 #include "dwmac-intel.h" 44 int func = PCI_FUNC(pdev->devfn); in stmmac_pci_find_phy_addr() 49 return -ENODEV; in stmmac_pci_find_phy_addr() 51 dmi_data = dmi_id->driver_data; in stmmac_pci_find_phy_addr() 52 func_data = dmi_data->func; in stmmac_pci_find_phy_addr() 54 for (n = 0; n < dmi_data->nfuncs; n++, func_data++) in stmmac_pci_find_phy_addr() 55 if (func_data->func == func) in stmmac_pci_find_phy_addr() 56 return func_data->phy_addr; in stmmac_pci_find_phy_addr() [all …]
|