Home
last modified time | relevance | path

Searched full:cpuid (Results 1 – 25 of 514) sorted by relevance

12345678910>>...21

/Linux-v6.6/arch/riscv/kernel/
Dsmpboot.c49 int cpuid; in smp_prepare_cpus() local
64 for_each_possible_cpu(cpuid) { in smp_prepare_cpus()
65 if (cpuid == curr_cpuid) in smp_prepare_cpus()
67 if (cpu_ops[cpuid]->cpu_prepare) { in smp_prepare_cpus()
68 ret = cpu_ops[cpuid]->cpu_prepare(cpuid); in smp_prepare_cpus()
72 set_cpu_present(cpuid, true); in smp_prepare_cpus()
73 numa_store_cpu_info(cpuid); in smp_prepare_cpus()
126 int cpuid; in acpi_parse_and_init_cpus() local
132 for (cpuid = 1; cpuid < nr_cpu_ids; cpuid++) { in acpi_parse_and_init_cpus()
133 if (cpuid_to_hartid_map(cpuid) != INVALID_HARTID) { in acpi_parse_and_init_cpus()
[all …]
Dcpu_ops_sbi.c65 static int sbi_cpu_start(unsigned int cpuid, struct task_struct *tidle) in sbi_cpu_start() argument
68 unsigned long hartid = cpuid_to_hartid_map(cpuid); in sbi_cpu_start()
70 struct sbi_hart_boot_data *bdata = &per_cpu(boot_data, cpuid); in sbi_cpu_start()
82 static int sbi_cpu_prepare(unsigned int cpuid) in sbi_cpu_prepare() argument
85 pr_err("cpu start method not defined for CPU [%d]\n", cpuid); in sbi_cpu_prepare()
92 static int sbi_cpu_disable(unsigned int cpuid) in sbi_cpu_disable() argument
107 static int sbi_cpu_is_stopped(unsigned int cpuid) in sbi_cpu_is_stopped() argument
110 unsigned long hartid = cpuid_to_hartid_map(cpuid); in sbi_cpu_is_stopped()
Dcpu_ops_spinwait.c20 static void cpu_update_secondary_bootdata(unsigned int cpuid, in cpu_update_secondary_bootdata() argument
23 unsigned long hartid = cpuid_to_hartid_map(cpuid); in cpu_update_secondary_bootdata()
42 static int spinwait_cpu_prepare(unsigned int cpuid) in spinwait_cpu_prepare() argument
45 pr_err("cpu start method not defined for CPU [%d]\n", cpuid); in spinwait_cpu_prepare()
51 static int spinwait_cpu_start(unsigned int cpuid, struct task_struct *tidle) in spinwait_cpu_start() argument
61 cpu_update_secondary_bootdata(cpuid, tidle); in spinwait_cpu_start()
/Linux-v6.6/tools/testing/selftests/kvm/x86_64/
Dcpuid_test.c5 * Generic tests for KVM CPUID set/get ioctls
79 "CPUID nent mismatch: %d vs. %d", cpuid1->nent, cpuid2->nent); in compare_cpuids()
87 "CPUID entries[%d] mismtach: 0x%x.%d.%x vs. 0x%x.%d.%x\n", in compare_cpuids()
96 "CPUID 0x%x.%x differ: 0x%x:0x%x:0x%x:0x%x vs 0x%x:0x%x:0x%x:0x%x", in compare_cpuids()
126 struct kvm_cpuid2 *vcpu_alloc_cpuid(struct kvm_vm *vm, vm_vaddr_t *p_gva, struct kvm_cpuid2 *cpuid) in vcpu_alloc_cpuid() argument
128 int size = sizeof(*cpuid) + cpuid->nent * sizeof(cpuid->entries[0]); in vcpu_alloc_cpuid()
132 memcpy(guest_cpuids, cpuid, size); in vcpu_alloc_cpuid()
144 /* Setting unmodified CPUID is allowed */ in set_cpuid_after_run()
146 TEST_ASSERT(!rc, "Setting unmodified CPUID after KVM_RUN failed: %d", rc); in set_cpuid_after_run()
168 struct kvm_cpuid2 *cpuid = allocate_kvm_cpuid2(vcpu->cpuid->nent + 1); in test_get_cpuid2() local
[all …]
/Linux-v6.6/arch/sparc/kernel/
Dprom_64.c389 * 'portid', or 'cpuid' property. in arch_find_n_match_cpu_physical_id()
406 mid_prop = "cpuid"; in arch_find_n_match_cpu_physical_id()
441 int cpuid = of_getintprop_default(dp, mid_prop, -1); in of_iterate_over_cpus() local
445 if (cpuid < 0) { in of_iterate_over_cpus()
446 this_mid_prop = "cpuid"; in of_iterate_over_cpus()
447 cpuid = of_getintprop_default(dp, this_mid_prop, -1); in of_iterate_over_cpus()
449 if (cpuid < 0) { in of_iterate_over_cpus()
455 if (cpuid >= NR_CPUS) { in of_iterate_over_cpus()
458 cpuid, NR_CPUS); in of_iterate_over_cpus()
462 ret = func(dp, cpuid, arg); in of_iterate_over_cpus()
[all …]
Dsun4d_smp.c45 static inline void show_leds(int cpuid) in show_leds() argument
47 cpuid &= 0x1e; in show_leds()
49 "r" ((cpu_leds[cpuid] << 4) | cpu_leds[cpuid+1]), in show_leds()
50 "r" (ECSR_BASE(cpuid) | BB_LEDS), in show_leds()
56 int cpuid = hard_smp_processor_id(); in sun4d_cpu_pre_starting() local
59 cpu_leds[cpuid] = 0x6; in sun4d_cpu_pre_starting()
60 show_leds(cpuid); in sun4d_cpu_pre_starting()
69 int cpuid; in sun4d_cpu_pre_online() local
71 cpuid = hard_smp_processor_id(); in sun4d_cpu_pre_online()
78 sun4d_swap((unsigned long *)&cpu_callin_map[cpuid], 1); in sun4d_cpu_pre_online()
[all …]
Dsun4d_irq.c33 unsigned int cpuid; /* target cpu */ member
195 int cpuid = handler_data->cpuid; in sun4d_mask_irq() local
201 cc_set_imsk_other(cpuid, cc_get_imsk_other(cpuid) | (1 << real_irq)); in sun4d_mask_irq()
213 int cpuid = handler_data->cpuid; in sun4d_unmask_irq() local
220 cc_set_imsk_other(cpuid, cc_get_imsk_other(cpuid) & ~(1 << real_irq)); in sun4d_unmask_irq()
254 int cpuid = cpu_logical_map(1); in sun4d_distribute_irqs() local
256 if (cpuid == -1) in sun4d_distribute_irqs()
257 cpuid = cpu_logical_map(0); in sun4d_distribute_irqs()
261 board_to_cpu[board] = cpuid; in sun4d_distribute_irqs()
262 set_sbi_tid(devid, cpuid << 3); in sun4d_distribute_irqs()
[all …]
Dsmp_32.c179 int i, cpuid, extra; in smp_prepare_cpus() local
184 for (i = 0; !cpu_find_by_instance(i, NULL, &cpuid); i++) { in smp_prepare_cpus()
185 if (cpuid >= NR_CPUS) in smp_prepare_cpus()
239 int cpuid = hard_smp_processor_id(); in smp_prepare_boot_cpu() local
241 if (cpuid >= NR_CPUS) { in smp_prepare_boot_cpu()
245 if (cpuid != 0) in smp_prepare_boot_cpu()
248 current_thread_info()->cpu = cpuid; in smp_prepare_boot_cpu()
249 set_cpu_online(cpuid, true); in smp_prepare_boot_cpu()
250 set_cpu_possible(cpuid, true); in smp_prepare_boot_cpu()
311 unsigned int cpuid = hard_smp_processor_id(); in arch_cpu_pre_online() local
[all …]
/Linux-v6.6/lib/zstd/common/
Dcpu.h15 * Implementation taken from folly/CpuId.h
16 * https://github.com/facebook/folly/blob/master/folly/CpuId.h
35 /* The following block like the normal cpuid branch below, but gcc in ZSTD_cpuid()
42 "cpuid\n\t" in ZSTD_cpuid()
51 "cpuid\n\t" in ZSTD_cpuid()
59 "cpuid\n\t" in ZSTD_cpuid()
68 __asm__("cpuid" : "=a"(n) : "a"(0) : "ebx", "ecx", "edx"); in ZSTD_cpuid()
71 __asm__("cpuid" : "=a"(f1a), "=c"(f1c), "=d"(f1d) : "a"(1) : "ebx"); in ZSTD_cpuid()
75 __asm__("cpuid" in ZSTD_cpuid()
82 ZSTD_cpuid_t cpuid; in ZSTD_cpuid() local
[all …]
/Linux-v6.6/arch/parisc/kernel/
Dtopology.c28 void store_cpu_topology(unsigned int cpuid) in store_cpu_topology() argument
30 struct cpu_topology *cpuid_topo = &cpu_topology[cpuid]; in store_cpu_topology()
40 per_cpu(cpu_devices, cpuid).hotpluggable = 1; in store_cpu_topology()
42 if (register_cpu(&per_cpu(cpu_devices, cpuid), cpuid)) in store_cpu_topology()
43 pr_warn("Failed to register CPU%d device", cpuid); in store_cpu_topology()
49 p = &per_cpu(cpu_data, cpuid); in store_cpu_topology()
53 if (cpu == cpuid) /* ignore current cpu */ in store_cpu_topology()
72 update_siblings_masks(cpuid); in store_cpu_topology()
75 cpuid, in store_cpu_topology()
76 cpu_topology[cpuid].core_id, in store_cpu_topology()
[all …]
Dprocessor.c84 unsigned long cpuid; in processor_probe() local
103 cpuid = boot_cpu_data.cpu_count; in processor_probe()
105 cpu_info.cpu_num = cpu_info.cpu_loc = cpuid; in processor_probe()
136 cpuid, cpu_info.cpu_num, cpu_info.cpu_loc, in processor_probe()
141 /* We need contiguous numbers for cpuid. Firmware's notion in processor_probe()
142 * of cpuid is for physical CPUs and we just don't care yet. in processor_probe()
155 cpuid = cpu_info.cpu_num; in processor_probe()
161 p = &per_cpu(cpu_data, cpuid); in processor_probe()
165 if (cpuid) in processor_probe()
170 p->cpuid = cpuid; /* save CPU id */ in processor_probe()
[all …]
/Linux-v6.6/tools/perf/pmu-events/
Dempty-pmu-events.c198 * cpuid field, which is an arch-specific identifier for the CPU.
202 * The cpuid can contain any character other than the comma.
206 const char *cpuid; member
218 .cpuid = "testcpu",
224 .cpuid = 0,
330 char *cpuid = perf_pmu__getcpuid(pmu); in perf_pmu__find_events_table() local
333 /* on some platforms which uses cpus map, cpuid can be NULL for in perf_pmu__find_events_table()
336 if (!cpuid) in perf_pmu__find_events_table()
343 if (!map->cpuid) in perf_pmu__find_events_table()
346 if (!strcmp_cpuid_str(map->cpuid, cpuid)) { in perf_pmu__find_events_table()
[all …]
/Linux-v6.6/arch/x86/boot/compressed/
Dmem_encrypt.S23 movl $0x80000000, %eax /* CPUID to check the highest leaf */
24 cpuid
30 * CPUID Fn8000_001F[EAX] - Bit 1
31 * CPUID Fn8000_001F[EBX] - Bits 5:0
35 cpuid
57 * sev_es_req_cpuid - Request a CPUID value from the Hypervisor using
61 * @%edx: CPUID Function
64 * %edx returns CPUID value on success
99 /* Keep CPUID function in %ebx */
106 movl $0, %eax # Request CPUID[fn].EAX
[all …]
/Linux-v6.6/include/soc/tegra/
Dflowctrl.h44 u32 flowctrl_read_cpu_csr(unsigned int cpuid);
45 void flowctrl_write_cpu_csr(unsigned int cpuid, u32 value);
46 void flowctrl_write_cpu_halt(unsigned int cpuid, u32 value);
48 void flowctrl_cpu_suspend_enter(unsigned int cpuid);
49 void flowctrl_cpu_suspend_exit(unsigned int cpuid);
51 static inline u32 flowctrl_read_cpu_csr(unsigned int cpuid) in flowctrl_read_cpu_csr() argument
56 static inline void flowctrl_write_cpu_csr(unsigned int cpuid, u32 value) in flowctrl_write_cpu_csr() argument
60 static inline void flowctrl_write_cpu_halt(unsigned int cpuid, u32 value) {} in flowctrl_write_cpu_halt() argument
62 static inline void flowctrl_cpu_suspend_enter(unsigned int cpuid) in flowctrl_cpu_suspend_enter() argument
66 static inline void flowctrl_cpu_suspend_exit(unsigned int cpuid) in flowctrl_cpu_suspend_exit() argument
/Linux-v6.6/drivers/soc/tegra/
Dflowctrl.c51 u32 flowctrl_read_cpu_csr(unsigned int cpuid) in flowctrl_read_cpu_csr() argument
53 u8 offset = flowctrl_offset_cpu_csr[cpuid]; in flowctrl_read_cpu_csr()
62 void flowctrl_write_cpu_csr(unsigned int cpuid, u32 value) in flowctrl_write_cpu_csr() argument
64 return flowctrl_update(flowctrl_offset_cpu_csr[cpuid], value); in flowctrl_write_cpu_csr()
67 void flowctrl_write_cpu_halt(unsigned int cpuid, u32 value) in flowctrl_write_cpu_halt() argument
69 return flowctrl_update(flowctrl_offset_halt_cpu[cpuid], value); in flowctrl_write_cpu_halt()
72 void flowctrl_cpu_suspend_enter(unsigned int cpuid) in flowctrl_cpu_suspend_enter() argument
77 reg = flowctrl_read_cpu_csr(cpuid); in flowctrl_cpu_suspend_enter()
85 reg |= TEGRA20_FLOW_CTRL_CSR_WFE_CPU0 << cpuid; in flowctrl_cpu_suspend_enter()
106 reg |= TEGRA20_FLOW_CTRL_CSR_WFE_CPU0 << cpuid; in flowctrl_cpu_suspend_enter()
[all …]
/Linux-v6.6/arch/x86/kernel/
Dverify_cpu.S40 pushfl # standard way to check for cpuid
49 jz .Lverify_cpu_no_longmode # cpu has no cpuid
52 movl $0x0,%eax # See if cpuid 1 is implemented
53 cpuid
55 jb .Lverify_cpu_no_longmode # no cpuid 1
78 cpuid
101 cpuid
106 movl $0x80000000,%eax # See if extended cpuid is implemented
107 cpuid
109 jb .Lverify_cpu_no_longmode # no extended cpuid
[all …]
Dcpuid.c9 * x86 CPUID access device
11 * This device is accessed by lseek() to the appropriate CPUID level
19 * This driver uses /dev/cpu/%d/cpuid where %d is the minor number, and on
111 return -EIO; /* CPUID not supported */ in cpuid_open()
128 return kasprintf(GFP_KERNEL, "cpu/%u/cpuid", MINOR(dev->devt)); in cpuid_devnode()
132 .name = "cpuid",
156 "cpu/cpuid", &cpuid_fops)) { in cpuid_init()
157 printk(KERN_ERR "cpuid: unable to get major %d for cpuid\n", in cpuid_init()
165 err = cpuhp_setup_state(CPUHP_AP_ONLINE_DYN, "x86/cpuid:online", in cpuid_init()
176 __unregister_chrdev(CPUID_MAJOR, 0, NR_CPUS, "cpu/cpuid"); in cpuid_init()
[all …]
/Linux-v6.6/arch/x86/include/asm/
Dcpuid.h3 * CPUID-related helpers/definitions
34 asm volatile("cpuid" in native_cpuid()
54 * Native CPUID functions returning a single datum.
68 * Generic CPUID function in native_cpuid_reg()
72 static inline void cpuid(unsigned int op, in native_cpuid_reg()
81 /* Some CPUID calls want 'count' to be placed in ecx */
92 * CPUID functions returning a single datum
98 cpuid(op, &eax, &ebx, &ecx, &edx); in cpuid_eax()
107 cpuid(op, &eax, &ebx, &ecx, &edx); in cpuid_ebx()
116 cpuid(op, &eax, &ebx, &ecx, &edx); in cpuid_ecx()
[all …]
/Linux-v6.6/arch/alpha/kernel/
Dsmp.c68 /* Set to a secondary's cpuid when it comes online. */
80 smp_store_cpu_info(int cpuid) in smp_store_cpu_info() argument
82 cpu_data[cpuid].loops_per_jiffy = loops_per_jiffy; in smp_store_cpu_info()
83 cpu_data[cpuid].last_asn = ASN_FIRST_VERSION; in smp_store_cpu_info()
84 cpu_data[cpuid].need_new_asn = 0; in smp_store_cpu_info()
85 cpu_data[cpuid].asn_lock = 0; in smp_store_cpu_info()
92 smp_setup_percpu_timer(int cpuid) in smp_setup_percpu_timer() argument
94 cpu_data[cpuid].prof_counter = 1; in smp_setup_percpu_timer()
95 cpu_data[cpuid].prof_multiplier = 1; in smp_setup_percpu_timer()
99 wait_boot_cpu_to_stop(int cpuid) in wait_boot_cpu_to_stop() argument
[all …]
/Linux-v6.6/tools/perf/arch/riscv/util/
Dheader.c42 char *cpuid = NULL; in _get_cpuid() local
49 return cpuid; in _get_cpuid()
72 if (asprintf(&cpuid, "%s-%s-%s", mvendorid, marchid, mimpid) < 0) in _get_cpuid()
73 cpuid = NULL; in _get_cpuid()
81 return cpuid; in _get_cpuid()
86 char *cpuid = _get_cpuid(); in get_cpuid() local
89 if (sz < strlen(cpuid)) { in get_cpuid()
94 scnprintf(buffer, sz, "%s", cpuid); in get_cpuid()
96 free(cpuid); in get_cpuid()
/Linux-v6.6/arch/x86/kvm/
Dcpuid.c4 * cpuid support routines
24 #include <asm/cpuid.h>
25 #include "cpuid.h"
74 * Magic value used by KVM when querying userspace-provided CPUID entries and
78 * to avoid false positives when processing guest CPUID input.
89 * KVM has a semi-arbitrary rule that querying the guest's CPUID model in cpuid_entry2_find()
90 * with IRQs disabled is disallowed. The CPUID model can legitimately in cpuid_entry2_find()
96 * of the hotpath, e.g. by caching information during CPUID updates. in cpuid_entry2_find()
117 * lookup (as opposed to emulating CPUID) for a function that's in cpuid_entry2_find()
169 /* Check whether the supplied CPUID data is equal to what is already set for the vCPU. */
[all …]
/Linux-v6.6/arch/x86/kernel/cpu/
Dtsx.c33 * Ensure TSX support is not enumerated in CPUID. in tsx_disable()
53 * Ensure TSX support is enumerated in CPUID. in tsx_enable()
73 * First of all, there's a CPUID bit: X86_FEATURE_RTM_ALWAYS_ABORT
81 * the MSR is present only when *two* CPUID bits are set:
89 * CPUID bit X86_FEATURE_RTM_ALWAYS_ABORT set and for those the same strategy
96 * which, when done, may cause for the X86_FEATURE_RTM_ALWAYS_ABORT CPUID
100 * cause for the supported CPUID feature bits to get re-detected and, if
103 * short: the kernel doesn't modify CPUID feature bits after booting.
113 * MSR_TFA_TSX_CPUID_CLEAR bit is only present when both CPUID in tsx_clear_cpuid()
166 * Hardware will always abort a TSX transaction when the CPUID bit in tsx_init()
[all …]
/Linux-v6.6/tools/perf/arch/x86/util/
Dheader.c12 #include "cpuid.h"
18 cpuid(0, 0, lvl, &b, &c, &d); in get_cpuid_0()
36 cpuid(1, 0, &a, &b, &c, &d); in __get_cpuid()
78 /* Full CPUID format for x86 is vendor-family-model-stepping */
104 * Full CPUID format is required to identify a platform. in strcmp_cpuid_str()
105 * Error out if the cpuid string is incomplete. in strcmp_cpuid_str()
108 pr_info("Invalid CPUID %s. Full CPUID is required, " in strcmp_cpuid_str()
125 /* If the full CPUID format isn't required, in strcmp_cpuid_str()
/Linux-v6.6/tools/testing/selftests/kvm/lib/x86_64/
Dprocessor.c621 if (vcpu->cpuid) in vcpu_arch_free()
622 free(vcpu->cpuid); in vcpu_arch_free()
645 static uint32_t __kvm_cpu_has(const struct kvm_cpuid2 *cpuid, in __kvm_cpu_has() argument
652 for (i = 0; i < cpuid->nent; i++) { in __kvm_cpu_has()
653 entry = &cpuid->entries[i]; in __kvm_cpu_has()
667 bool kvm_cpuid_has(const struct kvm_cpuid2 *cpuid, in kvm_cpuid_has() argument
670 return __kvm_cpu_has(cpuid, feature.function, feature.index, in kvm_cpuid_has()
674 uint32_t kvm_cpuid_property(const struct kvm_cpuid2 *cpuid, in kvm_cpuid_property() argument
677 return __kvm_cpu_has(cpuid, property.function, property.index, in kvm_cpuid_property()
738 void vcpu_init_cpuid(struct kvm_vcpu *vcpu, const struct kvm_cpuid2 *cpuid) in vcpu_init_cpuid() argument
[all …]
/Linux-v6.6/drivers/firmware/psci/
Dpsci.c216 static int __psci_cpu_on(u32 fn, unsigned long cpuid, unsigned long entry_point) in __psci_cpu_on() argument
220 err = invoke_psci_fn(fn, cpuid, entry_point, 0); in __psci_cpu_on()
224 static int psci_0_1_cpu_on(unsigned long cpuid, unsigned long entry_point) in psci_0_1_cpu_on() argument
226 return __psci_cpu_on(psci_0_1_function_ids.cpu_on, cpuid, entry_point); in psci_0_1_cpu_on()
229 static int psci_0_2_cpu_on(unsigned long cpuid, unsigned long entry_point) in psci_0_2_cpu_on() argument
231 return __psci_cpu_on(PSCI_FN_NATIVE(0_2, CPU_ON), cpuid, entry_point); in psci_0_2_cpu_on()
234 static int __psci_migrate(u32 fn, unsigned long cpuid) in __psci_migrate() argument
238 err = invoke_psci_fn(fn, cpuid, 0, 0); in __psci_migrate()
242 static int psci_0_1_migrate(unsigned long cpuid) in psci_0_1_migrate() argument
244 return __psci_migrate(psci_0_1_function_ids.migrate, cpuid); in psci_0_1_migrate()
[all …]

12345678910>>...21