Home
last modified time | relevance | path

Searched refs:cpu (Results 1 – 25 of 3002) sorted by relevance

12345678910>>...121

/Linux-v5.15/drivers/cpufreq/
Dintel_pstate.c226 int cpu; member
285 int (*get_cpu_scaling)(int cpu);
338 static void intel_pstate_set_itmt_prio(int cpu) in intel_pstate_set_itmt_prio() argument
344 ret = cppc_get_perf_caps(cpu, &cppc_perf); in intel_pstate_set_itmt_prio()
353 sched_set_itmt_core_prio(cppc_perf.highest_perf, cpu); in intel_pstate_set_itmt_prio()
374 static int intel_pstate_get_cppc_guaranteed(int cpu) in intel_pstate_get_cppc_guaranteed() argument
379 ret = cppc_get_perf_caps(cpu, &cppc_perf); in intel_pstate_get_cppc_guaranteed()
389 static u32 intel_pstate_cppc_nominal(int cpu) in intel_pstate_cppc_nominal() argument
393 if (cppc_get_nominal_perf(cpu, &nominal_perf)) in intel_pstate_cppc_nominal()
399 static inline void intel_pstate_set_itmt_prio(int cpu) in intel_pstate_set_itmt_prio() argument
[all …]
/Linux-v5.15/tools/testing/selftests/cpu-hotplug/
Dcpu-on-off-test.sh26 if ! ls $SYSFS/devices/system/cpu/cpu* > /dev/null 2>&1; then
27 echo $msg cpu hotplug is not supported >&2
32 online_cpus=`cat $SYSFS/devices/system/cpu/online`
40 present_cpus=`cat $SYSFS/devices/system/cpu/present`
46 offline_cpus=`cat $SYSFS/devices/system/cpu/offline`
62 for cpu in $SYSFS/devices/system/cpu/cpu*; do
63 if [ -f $cpu/online ] && grep -q $state $cpu/online; then
64 echo ${cpu##/*/cpu}
81 grep -q 1 $SYSFS/devices/system/cpu/cpu$1/online
86 grep -q 0 $SYSFS/devices/system/cpu/cpu$1/online
[all …]
/Linux-v5.15/arch/arm/boot/dts/
Daxm5516-cpus.dtsi13 cpu-map {
16 cpu = <&CPU0>;
19 cpu = <&CPU1>;
22 cpu = <&CPU2>;
25 cpu = <&CPU3>;
30 cpu = <&CPU4>;
33 cpu = <&CPU5>;
36 cpu = <&CPU6>;
39 cpu = <&CPU7>;
44 cpu = <&CPU8>;
[all …]
/Linux-v5.15/arch/powerpc/kernel/
Dsmp.c284 void smp_muxed_ipi_set_message(int cpu, int msg) in smp_muxed_ipi_set_message() argument
286 struct cpu_messages *info = &per_cpu(ipi_message, cpu); in smp_muxed_ipi_set_message()
296 void smp_muxed_ipi_message_pass(int cpu, int msg) in smp_muxed_ipi_message_pass() argument
298 smp_muxed_ipi_set_message(cpu, msg); in smp_muxed_ipi_message_pass()
304 smp_ops->cause_ipi(cpu); in smp_muxed_ipi_message_pass()
358 static inline void do_message_pass(int cpu, int msg) in do_message_pass() argument
361 smp_ops->message_pass(cpu, msg); in do_message_pass()
364 smp_muxed_ipi_message_pass(cpu, msg); in do_message_pass()
368 void smp_send_reschedule(int cpu) in smp_send_reschedule() argument
371 do_message_pass(cpu, PPC_MSG_RESCHEDULE); in smp_send_reschedule()
[all …]
Dtau_6xx.c56 static void set_thresholds(unsigned long cpu) in set_thresholds() argument
61 mtspr(SPRN_THRM1, THRM1_THRES(tau[cpu].low) | THRM1_V | maybe_tie | THRM1_TID); in set_thresholds()
64 mtspr(SPRN_THRM2, THRM1_THRES(tau[cpu].high) | THRM1_V | maybe_tie); in set_thresholds()
67 static void TAUupdate(int cpu) in TAUupdate() argument
78 if (tau[cpu].low >= step_size) { in TAUupdate()
79 tau[cpu].low -= step_size; in TAUupdate()
80 tau[cpu].high -= (step_size - window_expand); in TAUupdate()
82 tau[cpu].grew = 1; in TAUupdate()
89 if (tau[cpu].high <= 127 - step_size) { in TAUupdate()
90 tau[cpu].low += (step_size - window_expand); in TAUupdate()
[all …]
Dwatchdog.c117 int cpu = raw_smp_processor_id(); in wd_lockup_ipi() local
120 pr_emerg("CPU %d Hard LOCKUP\n", cpu); in wd_lockup_ipi()
122 cpu, tb, per_cpu(wd_timer_tb, cpu), in wd_lockup_ipi()
123 tb_to_ns(tb - per_cpu(wd_timer_tb, cpu)) / 1000000); in wd_lockup_ipi()
145 static void set_cpu_stuck(int cpu, u64 tb) in set_cpu_stuck() argument
147 set_cpumask_stuck(cpumask_of(cpu), tb); in set_cpu_stuck()
150 static void watchdog_smp_panic(int cpu, u64 tb) in watchdog_smp_panic() argument
159 if (cpumask_test_cpu(cpu, &wd_smp_cpus_pending)) in watchdog_smp_panic()
165 cpu, cpumask_pr_args(&wd_smp_cpus_pending)); in watchdog_smp_panic()
167 cpu, tb, wd_smp_last_reset_tb, in watchdog_smp_panic()
[all …]
/Linux-v5.15/arch/arc/kernel/
Dsetup.c70 static void read_decode_ccm_bcr(struct cpuinfo_arc *cpu) in read_decode_ccm_bcr() argument
78 cpu->iccm.sz = 4096 << iccm.sz; /* 8K to 512K */ in read_decode_ccm_bcr()
79 cpu->iccm.base_addr = iccm.base << 16; in read_decode_ccm_bcr()
85 cpu->dccm.sz = 2048 << dccm.sz; /* 2K to 256K */ in read_decode_ccm_bcr()
88 cpu->dccm.base_addr = base & ~0xF; in read_decode_ccm_bcr()
97 cpu->iccm.sz = 256 << iccm.sz00; /* 512B to 16M */ in read_decode_ccm_bcr()
99 cpu->iccm.sz <<= iccm.sz01; in read_decode_ccm_bcr()
102 cpu->iccm.base_addr = region & 0xF0000000; in read_decode_ccm_bcr()
107 cpu->dccm.sz = 256 << dccm.sz0; in read_decode_ccm_bcr()
109 cpu->dccm.sz <<= dccm.sz1; in read_decode_ccm_bcr()
[all …]
/Linux-v5.15/drivers/base/
Darch_topology.c61 int cpu; in topology_set_scale_freq_source() local
72 for_each_cpu(cpu, cpus) { in topology_set_scale_freq_source()
73 sfd = rcu_dereference(*per_cpu_ptr(&sft_data, cpu)); in topology_set_scale_freq_source()
77 rcu_assign_pointer(per_cpu(sft_data, cpu), data); in topology_set_scale_freq_source()
78 cpumask_set_cpu(cpu, &scale_freq_counters_mask); in topology_set_scale_freq_source()
92 int cpu; in topology_clear_scale_freq_source() local
96 for_each_cpu(cpu, cpus) { in topology_clear_scale_freq_source()
97 sfd = rcu_dereference(*per_cpu_ptr(&sft_data, cpu)); in topology_clear_scale_freq_source()
100 rcu_assign_pointer(per_cpu(sft_data, cpu), NULL); in topology_clear_scale_freq_source()
101 cpumask_clear_cpu(cpu, &scale_freq_counters_mask); in topology_clear_scale_freq_source()
[all …]
/Linux-v5.15/arch/microblaze/kernel/cpu/
Dcpuinfo-static.c23 void __init set_cpuinfo_static(struct cpuinfo *ci, struct device_node *cpu) in set_cpuinfo_static() argument
28 (fcpu(cpu, "xlnx,use-barrel") ? PVR0_USE_BARREL_MASK : 0) | in set_cpuinfo_static()
29 (fcpu(cpu, "xlnx,use-msr-instr") ? PVR2_USE_MSR_INSTR : 0) | in set_cpuinfo_static()
30 (fcpu(cpu, "xlnx,use-pcmp-instr") ? PVR2_USE_PCMP_INSTR : 0) | in set_cpuinfo_static()
31 (fcpu(cpu, "xlnx,use-div") ? PVR0_USE_DIV_MASK : 0); in set_cpuinfo_static()
43 ci->use_mult = fcpu(cpu, "xlnx,use-hw-mul"); in set_cpuinfo_static()
51 ci->use_fpu = fcpu(cpu, "xlnx,use-fpu"); in set_cpuinfo_static()
59 (fcpu(cpu, "xlnx,unaligned-exceptions") ? in set_cpuinfo_static()
61 (fcpu(cpu, "xlnx,ill-opcode-exception") ? in set_cpuinfo_static()
63 (fcpu(cpu, "xlnx,iopb-bus-exception") ? in set_cpuinfo_static()
[all …]
/Linux-v5.15/arch/x86/xen/
Dsmp.c33 void xen_smp_intr_free(unsigned int cpu) in xen_smp_intr_free() argument
35 if (per_cpu(xen_resched_irq, cpu).irq >= 0) { in xen_smp_intr_free()
36 unbind_from_irqhandler(per_cpu(xen_resched_irq, cpu).irq, NULL); in xen_smp_intr_free()
37 per_cpu(xen_resched_irq, cpu).irq = -1; in xen_smp_intr_free()
38 kfree(per_cpu(xen_resched_irq, cpu).name); in xen_smp_intr_free()
39 per_cpu(xen_resched_irq, cpu).name = NULL; in xen_smp_intr_free()
41 if (per_cpu(xen_callfunc_irq, cpu).irq >= 0) { in xen_smp_intr_free()
42 unbind_from_irqhandler(per_cpu(xen_callfunc_irq, cpu).irq, NULL); in xen_smp_intr_free()
43 per_cpu(xen_callfunc_irq, cpu).irq = -1; in xen_smp_intr_free()
44 kfree(per_cpu(xen_callfunc_irq, cpu).name); in xen_smp_intr_free()
[all …]
Dsmp_pv.c62 int cpu; in cpu_bringup() local
73 cpu = smp_processor_id(); in cpu_bringup()
74 smp_store_cpu_info(cpu); in cpu_bringup()
75 cpu_data(cpu).x86_max_cores = 1; in cpu_bringup()
76 set_cpu_sibling_map(cpu); in cpu_bringup()
82 notify_cpu_starting(cpu); in cpu_bringup()
84 set_cpu_online(cpu, true); in cpu_bringup()
86 cpu_set_state_online(cpu); /* Implies full memory barrier. */ in cpu_bringup()
98 void xen_smp_intr_free_pv(unsigned int cpu) in xen_smp_intr_free_pv() argument
100 if (per_cpu(xen_irq_work, cpu).irq >= 0) { in xen_smp_intr_free_pv()
[all …]
/Linux-v5.15/kernel/
Dsmpboot.c30 struct task_struct *idle_thread_get(unsigned int cpu) in idle_thread_get() argument
32 struct task_struct *tsk = per_cpu(idle_threads, cpu); in idle_thread_get()
50 static __always_inline void idle_init(unsigned int cpu) in idle_init() argument
52 struct task_struct *tsk = per_cpu(idle_threads, cpu); in idle_init()
55 tsk = fork_idle(cpu); in idle_init()
57 pr_err("SMP: fork_idle() failed for CPU %u\n", cpu); in idle_init()
59 per_cpu(idle_threads, cpu) = tsk; in idle_init()
68 unsigned int cpu, boot_cpu; in idle_threads_init() local
72 for_each_possible_cpu(cpu) { in idle_threads_init()
73 if (cpu != boot_cpu) in idle_threads_init()
[all …]
/Linux-v5.15/arch/arm/mach-tegra/
Dplatsmp.c36 static void tegra_secondary_init(unsigned int cpu) in tegra_secondary_init() argument
38 cpumask_set_cpu(cpu, &tegra_cpu_init_mask); in tegra_secondary_init()
42 static int tegra20_boot_secondary(unsigned int cpu, struct task_struct *idle) in tegra20_boot_secondary() argument
44 cpu = cpu_logical_map(cpu); in tegra20_boot_secondary()
54 tegra_put_cpu_in_reset(cpu); in tegra20_boot_secondary()
62 flowctrl_write_cpu_halt(cpu, 0); in tegra20_boot_secondary()
64 tegra_enable_cpu_clock(cpu); in tegra20_boot_secondary()
65 flowctrl_write_cpu_csr(cpu, 0); /* Clear flow controller CSR. */ in tegra20_boot_secondary()
66 tegra_cpu_out_of_reset(cpu); in tegra20_boot_secondary()
70 static int tegra30_boot_secondary(unsigned int cpu, struct task_struct *idle) in tegra30_boot_secondary() argument
[all …]
/Linux-v5.15/arch/arm/mach-meson/
Dplatsmp.c38 static struct reset_control *meson_smp_get_core_reset(int cpu) in meson_smp_get_core_reset() argument
40 struct device_node *np = of_get_cpu_node(cpu, 0); in meson_smp_get_core_reset()
45 static void meson_smp_set_cpu_ctrl(int cpu, bool on_off) in meson_smp_set_cpu_ctrl() argument
50 val |= BIT(cpu); in meson_smp_set_cpu_ctrl()
52 val &= ~BIT(cpu); in meson_smp_set_cpu_ctrl()
114 static void meson_smp_begin_secondary_boot(unsigned int cpu) in meson_smp_begin_secondary_boot() argument
123 sram_base + MESON_SMP_SRAM_CPU_CTRL_ADDR_REG(cpu)); in meson_smp_begin_secondary_boot()
129 scu_cpu_power_enable(scu_base, cpu); in meson_smp_begin_secondary_boot()
132 static int meson_smp_finalize_secondary_boot(unsigned int cpu) in meson_smp_finalize_secondary_boot() argument
137 while (readl(sram_base + MESON_SMP_SRAM_CPU_CTRL_ADDR_REG(cpu))) { in meson_smp_finalize_secondary_boot()
[all …]
/Linux-v5.15/tools/power/x86/intel-speed-select/
Disst-core.c9 int isst_write_pm_config(int cpu, int cp_state) in isst_write_pm_config() argument
19 ret = isst_send_mbox_command(cpu, WRITE_PM_CONFIG, PM_FEATURE, 0, req, in isst_write_pm_config()
24 debug_printf("cpu:%d WRITE_PM_CONFIG resp:%x\n", cpu, resp); in isst_write_pm_config()
29 int isst_read_pm_config(int cpu, int *cp_state, int *cp_cap) in isst_read_pm_config() argument
34 ret = isst_send_mbox_command(cpu, READ_PM_CONFIG, PM_FEATURE, 0, 0, in isst_read_pm_config()
39 debug_printf("cpu:%d READ_PM_CONFIG resp:%x\n", cpu, resp); in isst_read_pm_config()
47 int isst_get_ctdp_levels(int cpu, struct isst_pkg_ctdp *pkg_dev) in isst_get_ctdp_levels() argument
52 ret = isst_send_mbox_command(cpu, CONFIG_TDP, in isst_get_ctdp_levels()
63 debug_printf("cpu:%d CONFIG_TDP_GET_LEVELS_INFO resp:%x\n", cpu, resp); in isst_get_ctdp_levels()
74 int isst_get_ctdp_control(int cpu, int config_index, in isst_get_ctdp_control() argument
[all …]
/Linux-v5.15/arch/powerpc/include/asm/
Dsmp.h33 extern int cpu_to_chip_id(int cpu);
43 void (*message_pass)(int cpu, int msg);
45 void (*cause_ipi)(int cpu);
47 int (*cause_nmi_ipi)(int cpu);
63 extern int smp_send_nmi_ipi(int cpu, void (*fn)(struct pt_regs *), u64 delay_us);
64 extern int smp_send_safe_nmi_ipi(int cpu, void (*fn)(struct pt_regs *), u64 delay_us);
74 void generic_cpu_die(unsigned int cpu);
75 void generic_set_cpu_dead(unsigned int cpu);
76 void generic_set_cpu_up(unsigned int cpu);
77 int generic_check_cpu_restart(unsigned int cpu);
[all …]
/Linux-v5.15/arch/arm/mach-bcm/
Dplatsmp-brcmstb.c67 static int per_cpu_sw_state_rd(u32 cpu) in per_cpu_sw_state_rd() argument
69 sync_cache_r(SHIFT_PERCPU_PTR(&per_cpu_sw_state, per_cpu_offset(cpu))); in per_cpu_sw_state_rd()
70 return per_cpu(per_cpu_sw_state, cpu); in per_cpu_sw_state_rd()
73 static void per_cpu_sw_state_wr(u32 cpu, int val) in per_cpu_sw_state_wr() argument
76 per_cpu(per_cpu_sw_state, cpu) = val; in per_cpu_sw_state_wr()
77 sync_cache_w(SHIFT_PERCPU_PTR(&per_cpu_sw_state, per_cpu_offset(cpu))); in per_cpu_sw_state_wr()
80 static inline void per_cpu_sw_state_wr(u32 cpu, int val) { } in per_cpu_sw_state_wr() argument
83 static void __iomem *pwr_ctrl_get_base(u32 cpu) in pwr_ctrl_get_base() argument
86 base += (cpu_logical_map(cpu) * 4); in pwr_ctrl_get_base()
90 static u32 pwr_ctrl_rd(u32 cpu) in pwr_ctrl_rd() argument
[all …]
/Linux-v5.15/include/linux/
Dcpumask.h105 static inline void cpu_max_bits_warn(unsigned int cpu, unsigned int bits) in cpu_max_bits_warn() argument
108 WARN_ON_ONCE(cpu >= bits); in cpu_max_bits_warn()
113 static inline unsigned int cpumask_check(unsigned int cpu) in cpumask_check() argument
115 cpu_max_bits_warn(cpu, nr_cpumask_bits); in cpumask_check()
116 return cpu; in cpumask_check()
158 unsigned int cpu) in cpumask_any_but()
178 #define for_each_cpu(cpu, mask) \ argument
179 for ((cpu) = 0; (cpu) < 1; (cpu)++, (void)mask)
180 #define for_each_cpu_not(cpu, mask) \ argument
181 for ((cpu) = 0; (cpu) < 1; (cpu)++, (void)mask)
[all …]
/Linux-v5.15/drivers/xen/
Dcpu_hotplug.c12 static void enable_hotplug_cpu(int cpu) in enable_hotplug_cpu() argument
14 if (!cpu_present(cpu)) in enable_hotplug_cpu()
15 xen_arch_register_cpu(cpu); in enable_hotplug_cpu()
17 set_cpu_present(cpu, true); in enable_hotplug_cpu()
20 static void disable_hotplug_cpu(int cpu) in disable_hotplug_cpu() argument
22 if (!cpu_is_hotpluggable(cpu)) in disable_hotplug_cpu()
25 if (cpu_online(cpu)) in disable_hotplug_cpu()
26 device_offline(get_cpu_device(cpu)); in disable_hotplug_cpu()
27 if (!cpu_online(cpu) && cpu_present(cpu)) { in disable_hotplug_cpu()
28 xen_arch_unregister_cpu(cpu); in disable_hotplug_cpu()
[all …]
/Linux-v5.15/arch/arm64/kernel/
Dsmp.c84 static void ipi_setup(int cpu);
87 static void ipi_teardown(int cpu);
88 static int op_cpu_kill(unsigned int cpu);
90 static inline int op_cpu_kill(unsigned int cpu) in op_cpu_kill() argument
101 static int boot_secondary(unsigned int cpu, struct task_struct *idle) in boot_secondary() argument
103 const struct cpu_operations *ops = get_cpu_ops(cpu); in boot_secondary()
106 return ops->cpu_boot(cpu); in boot_secondary()
113 int __cpu_up(unsigned int cpu, struct task_struct *idle) in __cpu_up() argument
126 ret = boot_secondary(cpu, idle); in __cpu_up()
128 pr_err("CPU%u: failed to boot: %d\n", cpu, ret); in __cpu_up()
[all …]
/Linux-v5.15/arch/s390/include/asm/
Dtopology.h9 struct cpu;
29 #define topology_physical_package_id(cpu) (cpu_topology[cpu].socket_id) argument
30 #define topology_thread_id(cpu) (cpu_topology[cpu].thread_id) argument
31 #define topology_sibling_cpumask(cpu) (&cpu_topology[cpu].thread_mask) argument
32 #define topology_core_id(cpu) (cpu_topology[cpu].core_id) argument
33 #define topology_core_cpumask(cpu) (&cpu_topology[cpu].core_mask) argument
34 #define topology_book_id(cpu) (cpu_topology[cpu].book_id) argument
35 #define topology_book_cpumask(cpu) (&cpu_topology[cpu].book_mask) argument
36 #define topology_drawer_id(cpu) (cpu_topology[cpu].drawer_id) argument
37 #define topology_drawer_cpumask(cpu) (&cpu_topology[cpu].drawer_mask) argument
[all …]
/Linux-v5.15/arch/x86/include/asm/
Dtopology.h48 extern int __cpu_to_node(int cpu);
51 extern int early_cpu_to_node(int cpu);
56 static inline int early_cpu_to_node(int cpu) in early_cpu_to_node() argument
58 return early_per_cpu(x86_cpu_to_node_map, cpu); in early_cpu_to_node()
94 static inline int early_cpu_to_node(int cpu) in early_cpu_to_node() argument
105 extern const struct cpumask *cpu_coregroup_mask(int cpu);
107 #define topology_logical_package_id(cpu) (cpu_data(cpu).logical_proc_id) argument
108 #define topology_physical_package_id(cpu) (cpu_data(cpu).phys_proc_id) argument
109 #define topology_logical_die_id(cpu) (cpu_data(cpu).logical_die_id) argument
110 #define topology_die_id(cpu) (cpu_data(cpu).cpu_die_id) argument
[all …]
/Linux-v5.15/arch/ia64/kernel/
Derr_inject.c61 u32 cpu=dev->id; \
62 return sprintf(buf, "%llx\n", name[cpu]); \
70 unsigned int cpu=dev->id; \
71 name[cpu] = simple_strtoull(buf, NULL, 16); \
84 unsigned int cpu=dev->id; in show() local
88 printk(KERN_DEBUG "pal_mc_err_inject for cpu%d:\n", cpu); in show()
89 printk(KERN_DEBUG "err_type_info=%llx,\n", err_type_info[cpu]); in show()
90 printk(KERN_DEBUG "err_struct_info=%llx,\n", err_struct_info[cpu]); in show()
92 err_data_buffer[cpu].data1, in show()
93 err_data_buffer[cpu].data2, in show()
[all …]
/Linux-v5.15/Documentation/devicetree/bindings/cpu/
Dcpu-topology.txt20 For instance in a system where CPUs support SMT, "cpu" nodes represent all
22 In systems where SMT is not supported "cpu" nodes represent all cores present
25 CPU topology bindings allow one to associate cpu nodes with hierarchical groups
29 Currently, only ARM/RISC-V intend to use this cpu topology binding but it may be
32 The cpu nodes, as per bindings defined in [4], represent the devices that
35 A topology description containing phandles to cpu nodes that are not compliant
39 2 - cpu-map node
42 The ARM/RISC-V CPU topology is defined within the cpu-map node, which is a direct
46 - cpu-map node
51 cpu-map node.
[all …]
/Linux-v5.15/arch/arm/kernel/
Dsmp.c87 static void ipi_setup(int cpu);
109 static int secondary_biglittle_prepare(unsigned int cpu) in secondary_biglittle_prepare() argument
111 if (!cpu_vtable[cpu]) in secondary_biglittle_prepare()
112 cpu_vtable[cpu] = kzalloc(sizeof(*cpu_vtable[cpu]), GFP_KERNEL); in secondary_biglittle_prepare()
114 return cpu_vtable[cpu] ? 0 : -ENOMEM; in secondary_biglittle_prepare()
122 static int secondary_biglittle_prepare(unsigned int cpu) in secondary_biglittle_prepare() argument
132 int __cpu_up(unsigned int cpu, struct task_struct *idle) in __cpu_up() argument
139 ret = secondary_biglittle_prepare(cpu); in __cpu_up()
161 ret = smp_ops.smp_boot_secondary(cpu, idle); in __cpu_up()
170 if (!cpu_online(cpu)) { in __cpu_up()
[all …]

12345678910>>...121