/linux-6.3-rc2/arch/s390/kernel/ |
A D | idle.c | 26 struct s390_idle_data *idle = this_cpu_ptr(&s390_idle); in account_idle_time_irq() local 34 this_cpu_add(mt_cycles[i], cycles_new[i] - idle->mt_cycles_enter[i]); in account_idle_time_irq() 37 idle_time = S390_lowcore.int_clock - idle->clock_idle_enter; in account_idle_time_irq() 46 WRITE_ONCE(idle->idle_time, READ_ONCE(idle->idle_time) + idle_time); in account_idle_time_irq() 47 WRITE_ONCE(idle->idle_count, READ_ONCE(idle->idle_count) + 1); in account_idle_time_irq() 53 struct s390_idle_data *idle = this_cpu_ptr(&s390_idle); in arch_cpu_idle() local 62 psw_idle(idle, psw_mask); in arch_cpu_idle() 68 struct s390_idle_data *idle = &per_cpu(s390_idle, dev->id); in show_idle_count() local 70 return sysfs_emit(buf, "%lu\n", READ_ONCE(idle->idle_count)); in show_idle_count() 77 struct s390_idle_data *idle = &per_cpu(s390_idle, dev->id); in show_idle_time() local [all …]
|
/linux-6.3-rc2/Documentation/devicetree/bindings/powerpc/opal/ |
A D | power-mgt.txt | 5 idle states. The description of these idle states is exposed via the 19 CPU from idle to running. 33 "ibm,cpu-idle-state-names" and "ibm,cpu-idle-state-flags" are 37 - ibm,cpu-idle-state-names: 40 - ibm,cpu-idle-state-flags: 63 ibm,cpu-idle-state-names. 73 - ibm,cpu-idle-state-psscr: 75 PSSCR for each of the idle states in ibm,cpu-idle-state-names. 78 - ibm,cpu-idle-state-psscr-mask: 106 - ibm,cpu-idle-state-pmicr: [all …]
|
/linux-6.3-rc2/Documentation/devicetree/bindings/cpu/ |
A D | idle-states.yaml | 26 2 - ARM idle states 52 3 - RISC-V idle states 125 of an idle state, e.g.: 234 5 - idle-states node 237 The processor idle states are defined within the idle-states node, which is 272 const: idle-states 305 - arm,idle-state 361 idle-state-name: 527 idle-states { 670 idle-states { [all …]
|
/linux-6.3-rc2/Documentation/devicetree/bindings/memory-controllers/ |
A D | rockchip,rk3399-dmc.yaml | 285 rockchip,pd-idle-ns: 291 rockchip,sr-idle-ns: 298 rockchip,sr-mc-gate-idle-ns: 304 rockchip,srpd-lite-idle-ns: 310 rockchip,standby-idle-ns: 316 rockchip,pd-idle-dis-freq-hz: 319 frequency is greater than pd-idle-dis-freq, power-down idle is disabled. 322 rockchip,sr-idle-dis-freq-hz: 325 frequency is greater than sr-idle-dis-freq, self-refresh idle is 332 sr-mc-gate-idle-dis-freq, the clock will not be gated when idle. See also [all …]
|
/linux-6.3-rc2/Documentation/admin-guide/pm/ |
A D | intel_idle.rst | 66 `below <intel-idle-parameters_>`_.] 86 initialized to represent a "polling idle state" (a pseudo-idle state in which 97 governors during CPU idle state selection). Otherwise, some of the listed idle 112 entry in the final list of idle states. The name of the idle state represented 126 .. _intel-idle-initialization: 144 `below <intel-idle-parameters_>`_), the idle states information provided by the 162 .. _intel-idle-parameters: 168 options related to CPU idle time management: ``idle=poll``, ``idle=halt``, 181 after finding that number of usable idle states (the other idle states that 208 idle state; see :ref:`idle-states-representation` in [all …]
|
A D | cpuidle.rst | 82 special "idle" task. 103 in Linux idle CPUs run the code of the "idle" task called *the idle loop*. That 106 idle states, or there is not enough time to spend in an idle state before the 119 idle time management subsystem called ``CPUIdle`` to select an idle state for 138 the shallower idle states instead. [The "depth" of an idle state roughly 165 tick can be `stopped by the idle loop <idle-cpus-and-tick_>`_. Available 210 exiting idle states due to the tick wakeups on idle CPUs will be wasted. 270 idle duration and uses the predicted value for idle state selection. 358 For the CPU idle time management purposes all of the physical idle states 619 options related to CPU idle time management: ``idle=poll``, ``idle=halt``, [all …]
|
/linux-6.3-rc2/Documentation/devicetree/bindings/thermal/ |
A D | thermal-idle.yaml | 5 $id: http://devicetree.org/schemas/thermal/thermal-idle.yaml# 8 title: Thermal idle cooling device 14 The thermal idle cooling device allows the system to passively 15 mitigate the temperature on the device by injecting idle cycles, 18 This binding describes the thermal idle node. 22 const: thermal-idle 24 A thermal-idle node describes the idle cooling device properties to 36 The idle duration in microsecond the device should cool down. 42 idle state from among all the present ones. 75 cpu_b0_therm: thermal-idle { [all …]
|
/linux-6.3-rc2/Documentation/devicetree/bindings/power/ |
A D | domain-idle-state.yaml | 4 $id: http://devicetree.org/schemas/power/domain-idle-state.yaml# 13 A domain idle state node represents the state parameters that will be used to 18 const: domain-idle-states 25 Each state node represents a domain idle state description. 29 const: domain-idle-state 33 The worst case latency in microseconds required to enter the idle 39 The worst case latency in microseconds required to exit the idle 44 The minimum residency duration in microseconds after which the idle 46 entering the idle state. 68 domain-idle-states { [all …]
|
A D | power-domain.yaml | 30 domain-idle-states: 35 Phandles of idle states that defines the available states for the 36 power-domain provider. The idle state definitions are compatible with the 37 domain-idle-state bindings, specified in ./domain-idle-state.yaml. 39 Note that, the domain-idle-state property reflects the idle states of this 42 the parent domain's idle states. In the absence of this property, the 109 domain-idle-states = <&DOMAIN_RET>, <&DOMAIN_PWR_DN>; 117 domain-idle-states = <&DOMAIN_PWR_DN>; 120 domain-idle-states { 122 compatible = "domain-idle-state"; [all …]
|
/linux-6.3-rc2/drivers/staging/media/atomisp/pci/ |
A D | sh_css_hrt.c | 39 bool not_idle = false, idle; in sh_css_hrt_system_is_idle() local 42 idle = sp_ctrl_getbit(SP0_ID, SP_SC_REG, SP_IDLE_BIT); in sh_css_hrt_system_is_idle() 43 not_idle |= !idle; in sh_css_hrt_system_is_idle() 44 if (!idle) in sh_css_hrt_system_is_idle() 47 idle = isp_ctrl_getbit(ISP0_ID, ISP_SC_REG, ISP_IDLE_BIT); in sh_css_hrt_system_is_idle() 48 not_idle |= !idle; in sh_css_hrt_system_is_idle() 49 if (!idle) in sh_css_hrt_system_is_idle()
|
/linux-6.3-rc2/Documentation/admin-guide/thermal/ |
A D | intel_powerclamp.rst | 70 If the kernel can also inject idle time to the system, then a 94 kidle_inject/cpu. During idle injection, it runs monitor/mwait idle 125 In terms of dynamics of the idle control system, package level idle 152 a) determine the effective range of idle injection ratio 259 target idle ratio. The compensation also increases as the idle ratio 283 and includes natural idle. When idle injection is disabled, reading 289 - To inject 25% idle time:: 295 will not show idle injection kernel threads. 298 idle time, powerclamp kernel threads will do idle injection. Forced 299 idle time is accounted as normal idle in that common code path is [all …]
|
/linux-6.3-rc2/Documentation/devicetree/bindings/mux/ |
A D | mux-controller.yaml | 33 have when it is idle. The idle-state property is used for this. If the 36 idle-state property is an array with one idle state for each mux controller. 39 as is when it is idle. This is the default, but can still be useful for 41 there is a need to "step past" a mux controller and set some other idle 46 is indicated with idle state (-2). 62 idle-state = <MUX_IDLE_DISCONNECT MUX_IDLE_AS_IS 2>; 85 idle-state: 89 idle-states: 92 idle. If the idle-state is not present, the mux controller is typically 94 controllers, the idle-state property is an array with one idle state for [all …]
|
/linux-6.3-rc2/fs/proc/ |
A D | stat.c | 29 u64 idle; in get_idle_time() local 31 idle = kcs->cpustat[CPUTIME_IDLE]; in get_idle_time() 33 idle += arch_idle_time(cpu); in get_idle_time() 34 return idle; in get_idle_time() 51 u64 idle, idle_usecs = -1ULL; in get_idle_time() local 58 idle = kcs->cpustat[CPUTIME_IDLE]; in get_idle_time() 60 idle = idle_usecs * NSEC_PER_USEC; in get_idle_time() 62 return idle; in get_idle_time() 118 user = nice = system = idle = iowait = in show_stat() 134 idle += get_idle_time(&kcpustat, i); in show_stat() [all …]
|
A D | uptime.c | 15 struct timespec64 idle; in uptime_proc_show() local 31 idle.tv_sec = div_u64_rem(idle_nsec, NSEC_PER_SEC, &rem); in uptime_proc_show() 32 idle.tv_nsec = rem; in uptime_proc_show() 36 (unsigned long) idle.tv_sec, in uptime_proc_show() 37 (idle.tv_nsec / (NSEC_PER_SEC / 100))); in uptime_proc_show()
|
/linux-6.3-rc2/drivers/gpu/drm/nouveau/nvkm/engine/gr/ |
A D | g84.c | 121 bool idle, timeout = false; in g84_gr_tlb_flush() local 132 idle = true; in g84_gr_tlb_flush() 134 for (tmp = nvkm_rd32(device, 0x400380); tmp && idle; tmp >>= 3) { in g84_gr_tlb_flush() 136 idle = false; in g84_gr_tlb_flush() 139 for (tmp = nvkm_rd32(device, 0x400384); tmp && idle; tmp >>= 3) { in g84_gr_tlb_flush() 141 idle = false; in g84_gr_tlb_flush() 144 for (tmp = nvkm_rd32(device, 0x400388); tmp && idle; tmp >>= 3) { in g84_gr_tlb_flush() 146 idle = false; in g84_gr_tlb_flush() 148 } while (!idle && in g84_gr_tlb_flush()
|
/linux-6.3-rc2/arch/arm/mach-tegra/ |
A D | platsmp.c | 42 static int tegra20_boot_secondary(unsigned int cpu, struct task_struct *idle) in tegra20_boot_secondary() argument 70 static int tegra30_boot_secondary(unsigned int cpu, struct task_struct *idle) in tegra30_boot_secondary() argument 129 static int tegra114_boot_secondary(unsigned int cpu, struct task_struct *idle) in tegra114_boot_secondary() argument 159 struct task_struct *idle) in tegra_boot_secondary() argument 162 return tegra20_boot_secondary(cpu, idle); in tegra_boot_secondary() 164 return tegra30_boot_secondary(cpu, idle); in tegra_boot_secondary() 166 return tegra114_boot_secondary(cpu, idle); in tegra_boot_secondary() 168 return tegra114_boot_secondary(cpu, idle); in tegra_boot_secondary()
|
/linux-6.3-rc2/drivers/cpuidle/ |
A D | Kconfig.arm | 6 bool "Generic ARM CPU idle Driver" 12 It provides a generic idle driver whose idle states are configured 14 initialized by calling the CPU operations init idle hook 18 bool "PSCI CPU idle Driver" 24 It provides an idle driver that is capable of detecting and 25 managing idle states through the PSCI firmware interface. 29 all idle states are still available. 33 being shared among a group of CPUs (aka cluster idle states). 36 bool "PSCI CPU idle Domain" 44 idle states. [all …]
|
/linux-6.3-rc2/Documentation/driver-api/thermal/ |
A D | cpu-idle-cooling.rst | 37 decrease. Acting on the idle state duration or the idle cycle 49 idle state target residency, we lead to dropping the static and the 61 idle state for a specified time each control cycle, it provides 69 We use a fixed duration of idle injection that gives an acceptable 71 or decreased by modulating the duty cycle of the idle injection. 82 idle <----------------------> 110 idle <--------------> 124 idle <------> 172 the idle injection we need. Alternatively if we have the idle 190 rigorously compute the idle injection [all …]
|
/linux-6.3-rc2/Documentation/devicetree/bindings/arm/msm/ |
A D | qcom,idle-state.txt | 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 - 59 the idle-states device node. 61 The devicetree representation of the idle state should be - 66 "qcom,idle-state-ret", 67 "qcom,idle-state-spc", 68 "qcom,idle-state-pc", 69 and "arm,idle-state". 75 idle-states { 77 compatible = "qcom,idle-state-spc", "arm,idle-state"; [all …]
|
/linux-6.3-rc2/Documentation/driver-api/pm/ |
A D | cpuidle.rst | 21 belongs to. That can be done by making the idle logical CPU stop fetching 23 depended on by it into an idle state in which they will draw less power. 28 particular idle state. That is the role of the CPU idle time management 85 struct cpuidle_state objects representing idle states that the 128 processor will be asked to enter the selected idle state without 131 asking the processor to enter the idle state). 145 idle state selections in the future. 180 governors for computations related to idle state selection: 185 be saved by staying in a shallower idle state for the same amount of 203 enter this particular idle state: [all …]
|
/linux-6.3-rc2/Documentation/devicetree/bindings/i2c/ |
A D | i2c-mux-pinctrl.yaml | 34 The only exception is that no bus will be created for a state named "idle". If such a state is 37 pinctrl-names = "ddc", "pta", "idle" -> ddc = bus 0, pta = bus 1 38 pinctrl-names = "ddc", "idle", "pta" -> Invalid ("idle" not last) 39 pinctrl-names = "idle", "ddc", "pta" -> Invalid ("idle" not last) 44 If an idle state is defined, whenever an access is not being made to a device on a child bus, 45 the idle pinctrl state will be programmed into hardware. 47 If an idle state is not defined, the most recently used pinctrl state will be left programmed 77 pinctrl-names = "ddc", "pta", "idle";
|
/linux-6.3-rc2/tools/power/cpupower/ |
A D | cpupower-completion.sh | 41 idle-info) COMPREPLY=($(compgen -W "$flags" -- "$cur")) ;; 51 idle-set) COMPREPLY=($(compgen -W "$flags" -- "$cur")) ;; 86 idle-info) _idle_info ;; 87 idle-set) _idle_set ;; 120 idle-info) _idle_info ;; 121 idle-set) _idle_set ;;
|
/linux-6.3-rc2/arch/arm64/boot/dts/freescale/ |
A D | fsl-ls2080a.dtsi | 21 cpu-idle-states = <&CPU_PW20>; 31 cpu-idle-states = <&CPU_PW20>; 41 cpu-idle-states = <&CPU_PW20>; 51 cpu-idle-states = <&CPU_PW20>; 61 cpu-idle-states = <&CPU_PW20>; 71 cpu-idle-states = <&CPU_PW20>; 82 cpu-idle-states = <&CPU_PW20>; 91 cpu-idle-states = <&CPU_PW20>; 117 compatible = "arm,idle-state"; 118 idle-state-name = "PW20";
|
A D | fsl-ls2088a.dtsi | 21 cpu-idle-states = <&CPU_PW20>; 31 cpu-idle-states = <&CPU_PW20>; 41 cpu-idle-states = <&CPU_PW20>; 51 cpu-idle-states = <&CPU_PW20>; 62 cpu-idle-states = <&CPU_PW20>; 71 cpu-idle-states = <&CPU_PW20>; 81 cpu-idle-states = <&CPU_PW20>; 91 cpu-idle-states = <&CPU_PW20>; 117 compatible = "arm,idle-state"; 118 idle-state-name = "PW20";
|
/linux-6.3-rc2/Documentation/admin-guide/mm/ |
A D | idle_page_tracking.rst | 8 The idle page tracking feature allows to track which memory pages are being 9 accessed by a workload and which are idle. This information can be useful for 21 The idle page tracking API is located at ``/sys/kernel/mm/page_idle``. 28 set, the corresponding page is idle. 30 A page is considered idle if it has not been accessed since it was marked idle 33 To mark a page idle one has to set the bit corresponding to 40 and hence such pages are never reported idle. 42 For huge pages the idle flag is set only on the head page, so one has to read 43 ``/proc/kpageflags`` in order to correctly count idle huge pages. 53 1. Mark all the workload's pages as idle by setting corresponding bits in [all …]
|