Home
last modified time | relevance | path

Searched +full:cpu +full:- +full:core (Results 1 – 25 of 1060) sorted by relevance

12345678910>>...43

/Linux-v5.15/Documentation/x86/
Dtopology.rst1 .. SPDX-License-Identifier: GPL-2.0
11 The architecture-agnostic topology definitions are in
12 Documentation/admin-guide/cputopology.rst. This file holds x86-specific
17 Needless to say, code should use the generic functions - this file is *only*
35 - packages
36 - cores
37 - threads
48 Package-related topology information in the kernel:
50 - cpuinfo_x86.x86_max_cores:
54 - cpuinfo_x86.x86_max_dies:
[all …]
/Linux-v5.15/arch/mips/kernel/
Dsmp-cps.c1 // SPDX-License-Identifier: GPL-2.0-or-later
7 #include <linux/cpu.h>
18 #include <asm/mips-cps.h>
21 #include <asm/pm-cps.h>
23 #include <asm/smp-cps.h>
39 static unsigned core_vpe_count(unsigned int cluster, unsigned core) in core_vpe_count() argument
44 return mips_cps_numvps(cluster, core); in core_vpe_count()
70 /* Use the number of VPEs in cluster 0 core 0 for smp_num_siblings */ in cps_smp_setup()
74 for (v = 0; v < min_t(int, core_vpes, NR_CPUS - nvpes); v++) { in cps_smp_setup()
87 /* Indicate present CPUs (CPU being synonymous with VPE) */ in cps_smp_setup()
[all …]
/Linux-v5.15/Documentation/admin-guide/pm/
Dintel-speed-select.rst1 .. SPDX-License-Identifier: GPL-2.0
8 collection of features that give more granular control over CPU performance.
14 - https://www.intel.com/content/www/us/en/architecture-and-technology/speed-select-technology-artic…
15 - https://builders.intel.com/docs/networkbuilders/intel-speed-select-technology-base-frequency-enha…
19 dynamically without pre-configuring via BIOS setup options. This dynamic
29 intel-speed-select configuration tool
32 Most Linux distribution packages may include the "intel-speed-select" tool. If not,
38 # cd tools/power/x86/intel-speed-select/
43 ------------
47 # intel-speed-select --help
[all …]
/Linux-v5.15/Documentation/devicetree/bindings/cpu/
Dcpu-topology.txt2 CPU topology binding description
6 1 - Introduction
12 - socket
13 - cluster
14 - core
15 - thread
17 The bottom hierarchy level sits at core or thread level depending on whether
18 symmetric multi-threading (SMT) is supported or not.
20 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
[all …]
/Linux-v5.15/arch/powerpc/include/asm/
Dcputhreads.h1 /* SPDX-License-Identifier: GPL-2.0 */
13 * threads per core and the same number for each core in the system
15 * as the CPU numbers are still allocated, just not brought online).
35 /* cpu_thread_mask_to_cores - Return a cpumask of one per cores
40 * This function returns a cpumask which will have one online cpu's
41 * bit set for each core that has at least one thread set in the argument.
44 * since those need to be done only once per core/TLB
49 int i, cpu; in cpu_thread_mask_to_cores() local
55 cpu = cpumask_next_and(-1, &tmp, cpu_online_mask); in cpu_thread_mask_to_cores()
56 if (cpu < nr_cpu_ids) in cpu_thread_mask_to_cores()
[all …]
/Linux-v5.15/tools/perf/util/
Dbpf_counter_cgroup.c1 // SPDX-License-Identifier: GPL-2.0
42 #define FD(evt, cpu) (*(int *)xyarray__entry(evt->core.fd, cpu, 0)) argument
49 __u32 i, cpu; in bperf_load_program() local
50 __u32 nr_cpus = evlist->core.all_cpus->nr; in bperf_load_program()
58 return -1; in bperf_load_program()
61 skel->rodata->num_cpus = total_cpus; in bperf_load_program()
62 skel->rodata->num_events = evlist->core.nr_entries / nr_cgroups; in bperf_load_program()
64 BUG_ON(evlist->core.nr_entries % nr_cgroups != 0); in bperf_load_program()
66 /* we need one copy of events per cpu for reading */ in bperf_load_program()
67 map_size = total_cpus * evlist->core.nr_entries / nr_cgroups; in bperf_load_program()
[all …]
Devsel.c1 // SPDX-License-Identifier: GPL-2.0-only
5 * Parts came from builtin-{top,stat,record}.c, see those files for further
15 #include <traceevent/event-parse.h>
44 #include "trace-event.h"
50 #include "pmu-hybrid.h"
51 #include "../perf-sys.h"
52 #include "util/parse-branch-options.h"
91 return -EINVAL; in evsel__object_config()
105 #define FD(e, x, y) (*(int *)xyarray__entry(e->core.fd, x, y))
124 * __perf_evsel__calc_id_pos - calculate id_pos.
[all …]
Devsel.h1 /* SPDX-License-Identifier: GPL-2.0 */
33 /** struct evsel - event selector
35 * @evlist - evlist this evsel is in, if it is in one.
36 * @core - libperf evsel object
37 * @name - Can be set to retain the original event name passed by the user,
44 * PERF_SAMPLE_IDENTIFIER) in a non-sample event i.e. if sample_id_all
45 * is used there is an id sample appended to non-sample events
49 struct perf_evsel core; member
57 * These fields can be set in the parse-events code or similar.
138 * 1. perf-stat -b counting events used byBPF programs
[all …]
Dmmap.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * Copyright (C) 2011-2017, Red Hat Inc, Arnaldo Carvalho de Melo <acme@redhat.com>
5 * Parts came from evlist.c builtin-{top,stat,record}.c, see those files for further
34 len = bitmap_scnprintf(mask->bits, mask->nbits, buf, MASK_SIZE); in mmap_cpu_mask__scnprintf()
36 pr_debug("%p: %s mask[%zd]: %s\n", mask, tag, mask->nbits, buf); in mmap_cpu_mask__scnprintf()
41 return perf_mmap__mmap_len(&map->core); in mmap__mmap_len()
73 return map->aio.nr_cblocks > 0; in perf_mmap__aio_enabled()
79 map->aio.data[idx] = mmap(NULL, mmap__mmap_len(map), PROT_READ|PROT_WRITE, in perf_mmap__aio_alloc()
81 if (map->aio.data[idx] == MAP_FAILED) { in perf_mmap__aio_alloc()
82 map->aio.data[idx] = NULL; in perf_mmap__aio_alloc()
[all …]
/Linux-v5.15/arch/arm/mach-bcm/
Dplatsmp.c1 // SPDX-License-Identifier: GPL-2.0
3 * Copyright (C) 2014-2015 Broadcom Corporation
12 #include <linux/irqchip/irq-bcm2836.h>
34 #define OF_SECONDARY_BOOT "secondary-boot-reg"
54 return -ENXIO; in scu_a9_enable()
60 pr_err("hardware reports only one core\n"); in scu_a9_enable()
61 return -ENOENT; in scu_a9_enable()
68 return -ENOMEM; in scu_a9_enable()
78 static u32 secondary_boot_addr_for(unsigned int cpu) in secondary_boot_addr_for() argument
81 struct device_node *cpu_node = of_get_cpu_node(cpu, NULL); in secondary_boot_addr_for()
[all …]
/Linux-v5.15/tools/power/cpupower/lib/
Dcpupower.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * (C) 2004-2009 Dominik Brodowski <linux@dominikbrodowski.de>
23 if (fd == -1) in cpupower_read_sysfs()
26 numread = read(fd, buf, buflen - 1); in cpupower_read_sysfs()
44 if (fd == -1) in cpupower_write_sysfs()
47 numwritten = write(fd, buf, buflen - 1); in cpupower_write_sysfs()
51 return -1; in cpupower_write_sysfs()
60 * Detect whether a CPU is online
63 * 1 -> if CPU is online
64 * 0 -> if CPU is offline
[all …]
/Linux-v5.15/Documentation/devicetree/bindings/regulator/
Dnvidia,tegra-regulators-coupling.txt4 NVIDIA Tegra SoC's have a mandatory voltage-coupling between regulators.
9 ------------------------
11 On Tegra20 SoC's there are 3 coupled regulators: CORE, RTC and CPU.
12 The CORE and RTC voltages shall be in a range of 170mV from each other
13 and they both shall be higher than the CPU voltage by at least 120mV.
16 ------------------------
18 On Tegra30 SoC's there are 2 coupled regulators: CORE and CPU. The CORE
19 and CPU voltages shall be in a range of 300mV from each other and CORE
20 voltage shall be higher than the CPU by N mV, where N depends on the CPU
24 - nvidia,tegra-core-regulator: Boolean property that designates regulator
[all …]
/Linux-v5.15/tools/perf/tests/
Dtopology.c1 // SPDX-License-Identifier: GPL-2.0
14 #define TEMPL "/tmp/perf-test-XXXXXX"
26 return -1; in get_temp()
45 session->evlist = evlist__new_default(); in session_write_header()
46 TEST_ASSERT_VAL("can't get evlist", session->evlist); in session_write_header()
50 session->evlist = evlist__new(); in session_write_header()
51 TEST_ASSERT_VAL("can't get evlist", session->evlist); in session_write_header()
52 parse_events(session->evlist, "cpu_core/cycles/", &err); in session_write_header()
55 perf_header__set_feat(&session->header, HEADER_CPU_TOPOLOGY); in session_write_header()
56 perf_header__set_feat(&session->header, HEADER_NRCPUS); in session_write_header()
[all …]
/Linux-v5.15/arch/mips/loongson64/
Dsmp.c1 // SPDX-License-Identifier: GPL-2.0-or-later
9 #include <linux/cpu.h>
54 static u32 (*ipi_read_clear)(int cpu);
55 static void (*ipi_write_action)(int cpu, u32 action);
56 static void (*ipi_write_enable)(int cpu);
57 static void (*ipi_clear_buf)(int cpu);
58 static void (*ipi_write_buf)(int cpu, struct task_struct *idle);
60 /* send mail via Mail_Send register for 3A4000+ CPU */
61 static void csr_mail_send(uint64_t data, int cpu, int mailbox) in csr_mail_send() argument
68 val |= (cpu << CSR_MAIL_SEND_CPU_SHIFT); in csr_mail_send()
[all …]
/Linux-v5.15/Documentation/devicetree/bindings/arm/msm/
Dqcom,idle-state.txt3 ARM provides idle-state node to define the cpuidle states, as defined in [1].
4 cpuidle-qcom is the cpuidle driver for Qualcomm SoCs and uses these idle
6 The idle states supported by the QCOM SoC are defined as -
14 When the WFI instruction is executed the ARM core would gate its internal
17 interrupt to trigger the core back in to active. This triggers the cache
20 cache hierarchy is also out of standby, and then the cpu is allowed to resume
26 Retention: Retention is a low power state where the core is clock gated and
27 the memory and the registers associated with the core are retained. The
30 sequence and would wait for interrupt, before restoring the cpu to execution
33 Standalone PC: A cpu can power down and warmboot if there is a sufficient time
[all …]
/Linux-v5.15/arch/mips/netlogic/xlp/
Dwakeup.c2 * Copyright 2003-2011 NetLogic Microsystems, Inc. (NetLogic). All rights
39 #include <asm/asm-offsets.h>
46 #include <asm/netlogic/mips-extns.h>
48 #include <asm/netlogic/xlp-hal/iomap.h>
49 #include <asm/netlogic/xlp-hal/xlp.h>
50 #include <asm/netlogic/xlp-hal/pic.h>
51 #include <asm/netlogic/xlp-hal/sys.h>
53 static int xlp_wakeup_core(uint64_t sysbase, int node, int core) in xlp_wakeup_core() argument
58 coremask = (1 << core); in xlp_wakeup_core()
60 /* Enable CPU clock in case of 8xx/3xx */ in xlp_wakeup_core()
[all …]
/Linux-v5.15/drivers/cpuidle/
Dcpuidle-cps.c1 // SPDX-License-Identifier: GPL-2.0-or-later
12 #include <asm/pm-cps.h>
17 STATE_NC_WAIT, /* MIPS wait instruction, non-coherent */
18 STATE_CLOCK_GATED, /* Core clock gated */
19 STATE_POWER_GATED, /* Core power gated */
30 * At least one core must remain powered up & clocked in order for the in cps_nc_enter()
33 * TODO: don't treat core 0 specially, just prevent the final core in cps_nc_enter()
36 if (cpus_are_siblings(0, dev->cpu) && (index > STATE_NC_WAIT)) in cps_nc_enter()
52 return -EINVAL; in cps_nc_enter()
55 /* Notify listeners the CPU is about to power down */ in cps_nc_enter()
[all …]
/Linux-v5.15/drivers/watchdog/
Docteon-wdt-main.c1 // SPDX-License-Identifier: GPL-2.0+
5 * Copyright (C) 2007-2017 Cavium, Inc.
11 * (c) Copyright 1996-1997 Alan Cox <alan@lxorguk.ukuu.org.uk>,
16 * "AS-IS" and at no charge.
39 * A watchdog is maintained for each CPU in the system, that way if
40 * one CPU suffers a lockup, we also get a register dump and reset.
55 #include <linux/cpu.h>
63 #include <asm/octeon/cvmx-boot-vector.h>
64 #include <asm/octeon/cvmx-ciu2-defs.h>
65 #include <asm/octeon/cvmx-rst-defs.h>
[all …]
/Linux-v5.15/arch/powerpc/perf/
Dimc-pmu.c1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * In-Memory Collection (IMC) Performance Monitor counter support.
12 #include <asm/imc-pmu.h>
20 * Used to avoid races in counting the nest-pmu units during hotplug
30 /* Core IMC data structures and variables */
49 * core and trace-imc
59 return container_of(event->pmu, struct imc_pmu, pmu); in imc_event_to_pmu()
62 PMU_FORMAT_ATTR(event, "config:0-61");
63 PMU_FORMAT_ATTR(offset, "config:0-31");
65 PMU_FORMAT_ATTR(mode, "config:33-40");
[all …]
/Linux-v5.15/drivers/base/
Darch_topology.c1 // SPDX-License-Identifier: GPL-2.0
3 * Arch specific cpu topology information
10 #include <linux/cpu.h>
61 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()
76 if (!sfd || sfd->source != SCALE_FREQ_SOURCE_ARCH) { 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
[all …]
/Linux-v5.15/Documentation/devicetree/bindings/clock/
Dmvebu-core-clock.txt1 * Core Clock bindings for Marvell MVEBU SoCs
3 Marvell MVEBU SoCs usually allow to determine core clock frequencies by
4 reading the Sample-At-Reset (SAR) register. The core clock consumer should
9 1 = cpuclk (CPU clock)
16 1 = cpuclk (CPU clock)
22 1 = cpuclk (CPU clock)
28 1 = cpuclk (CPU clock)
36 1 = cpuclk (CPU clock)
52 - compatible : shall be one of the following:
53 "marvell,armada-370-core-clock" - For Armada 370 SoC core clocks
[all …]
/Linux-v5.15/drivers/edac/
Docteon_edac-pc.c9 * written by Ralf Baechle <ralf@linux-mips.org>
34 * EDAC CPU cache error callback
36 * @event: non-zero if unrecoverable.
44 unsigned int core = cvmx_get_core_num(); in co_cache_error_event() local
45 unsigned int cpu = smp_processor_id(); in co_cache_error_event() local
50 dcache_err = cache_err_dcache[core]; in co_cache_error_event()
51 cache_err_dcache[core] = 0; in co_cache_error_event()
57 edac_device_printk(p->ed, KERN_ERR, in co_cache_error_event()
58 "CacheErr (Icache):%llx, core %d/cpu %d, cp0_errorepc == %lx\n", in co_cache_error_event()
59 (unsigned long long)icache_err, core, cpu, in co_cache_error_event()
[all …]
/Linux-v5.15/drivers/hwmon/
Dcoretemp.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * coretemp.c - Linux kernel module for hardware monitoring
18 #include <linux/hwmon-sysfs.h>
23 #include <linux/cpu.h>
34 * force_tjmax only matters when TjMax can't be read from the CPU itself.
43 #define NUM_REAL_CORES 128 /* Number of Real cores per cpu */
49 #define TO_CORE_ID(cpu) (cpu_data(cpu).cpu_core_id) argument
50 #define TO_ATTR_NO(cpu) (TO_CORE_ID(cpu) + BASE_SYSFS_ATTR_NO) argument
53 #define for_each_sibling(i, cpu) \ argument
54 for_each_cpu(i, topology_sibling_cpumask(cpu))
[all …]
/Linux-v5.15/Documentation/devicetree/bindings/arm/tegra/
Dnvidia,tegra20-pmc.yaml1 # SPDX-License-Identifier: GPL-2.0
3 ---
4 $id: http://devicetree.org/schemas/arm/tegra/nvidia,tegra20-pmc.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - Thierry Reding <thierry.reding@gmail.com>
11 - Jonathan Hunter <jonathanh@nvidia.com>
16 - nvidia,tegra20-pmc
17 - nvidia,tegra20-pmc
18 - nvidia,tegra30-pmc
19 - nvidia,tegra114-pmc
[all …]
/Linux-v5.15/Documentation/arm/samsung-s3c24xx/
Dcpufreq.rst6 ------------
9 the ability to change the core, memory and peripheral operating
10 frequencies. The core control is exported via the CPUFreq driver
12 rate the core is running at.
14 There are two forms of the driver depending on the specific CPU and
19 ARM core is available as a separate driver.
23 ------
25 The code core manages the CPU specific drivers, any data that they
27 system. Each CPU registers a driver to control the PLL, clock dividers
31 The core registers with drivers/cpufreq at init time if all the data
[all …]

12345678910>>...43