Home
last modified time | relevance | path

Searched +full:pm +full:- +full:domains (Results 1 – 25 of 259) sorted by relevance

1234567891011

/linux-6.14.4/Documentation/devicetree/bindings/power/
Dpower_domain.txt1 * Generic PM domains
3 System on chip designs are often divided into multiple PM domains that can be
7 This device tree binding can be used to bind PM domain consumer devices with
8 their PM domains provided by PM domain providers. A PM domain provider can be
9 represented by any node in the device tree and can provide one or more PM
10 domains. A consumer node can refer to the provider by a phandle and a set of
11 phandle arguments (so called PM domain specifiers) of length specified by the
12 #power-domain-cells property in the PM domain provider node.
14 ==PM domain providers==
16 See power-domain.yaml.
[all …]
Dpower-domain.yaml1 # SPDX-License-Identifier: GPL-2.0
3 ---
4 $id: http://devicetree.org/schemas/power/power-domain.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Generic PM domains
10 - Rafael J. Wysocki <[email protected]>
11 - Kevin Hilman <[email protected]>
12 - Ulf Hansson <[email protected]>
15 System on chip designs are often divided into multiple PM domains that can be
17 leakage current. Moreover, in some cases the similar PM domains may also be
[all …]
Drenesas,sysc-rmobile.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/power/renesas,sysc-rmobile.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Renesas R-Mobile System Controller
10 - Geert Uytterhoeven <[email protected]>
11 - Magnus Damm <[email protected]>
14 The R-Mobile System Controller provides the following functions:
15 - Boot mode management,
16 - Reset generation,
[all …]
/linux-6.14.4/drivers/base/power/
Dcommon.c1 // SPDX-License-Identifier: GPL-2.0
3 * drivers/base/power/common.c - Common device power management code.
19 * dev_pm_get_subsys_data - Create or refcount power.subsys_data for device.
32 return -ENOMEM; in dev_pm_get_subsys_data()
34 spin_lock_irq(&dev->power.lock); in dev_pm_get_subsys_data()
36 if (dev->power.subsys_data) { in dev_pm_get_subsys_data()
37 dev->power.subsys_data->refcount++; in dev_pm_get_subsys_data()
39 spin_lock_init(&psd->lock); in dev_pm_get_subsys_data()
40 psd->refcount = 1; in dev_pm_get_subsys_data()
41 dev->power.subsys_data = psd; in dev_pm_get_subsys_data()
[all …]
/linux-6.14.4/Documentation/devicetree/bindings/arm/ux500/
Dpower_domain.txt1 * ST-Ericsson UX500 PM Domains
3 UX500 supports multiple PM domains which are used to gate power to one or
6 The implementation of PM domains for UX500 are based upon the generic PM domain
9 ==PM domain providers==
12 - compatible: Must be "stericsson,ux500-pm-domains".
13 - #power-domain-cells : Number of cells in a power domain specifier, must be 1.
17 compatible = "stericsson,ux500-pm-domains";
18 #power-domain-cells = <1>;
21 ==PM domain consumers==
24 - power-domains: A phandle and PM domain specifier. Below are the list of
[all …]
/linux-6.14.4/drivers/pmdomain/xilinx/
Dzynqmp-pm-domains.c1 // SPDX-License-Identifier: GPL-2.0
3 * ZynqMP Generic PM domain support
5 * Copyright (C) 2015-2019 Xilinx, Inc.
20 #include <linux/firmware/xlnx-zynqmp.h>
27 * struct zynqmp_pm_domain - Wrapper around struct generic_pm_domain
29 * @node_id: PM node ID corresponding to device inside PM domain
30 * @requested: The PM node mapped to the PM domain has been requested
42 * zynqmp_gpd_is_active_wakeup_path() - Check if device is in wakeup source
65 * zynqmp_gpd_power_on() - Power on PM domain
66 * @domain: Generic PM domain
[all …]
DKconfig1 # SPDX-License-Identifier: GPL-2.0
4 bool "Enable Zynq MPSoC generic PM domains"
6 depends on PM && ZYNQMP_FIRMWARE
9 Say yes to enable device power management through PM domains
/linux-6.14.4/drivers/pmdomain/bcm/
DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
2 menu "Broadcom PM Domains"
8 select PM_GENERIC_DOMAINS if PM
11 This enables support for the BCM2835 power domains and reset
12 controller. Any usage of power domains by the Raspberry Pi
20 select PM_GENERIC_DOMAINS if PM
22 This enables support for the RPi power domains which can be enabled
29 select PM_GENERIC_DOMAINS if PM
37 select PM_GENERIC_DOMAINS if PM
39 This enables support for the BCM63xx power domains controller on
Dbcm2835-power.c1 // SPDX-License-Identifier: GPL-2.0+
8 #include <dt-bindings/soc/bcm2835-pm.h>
12 #include <linux/mfd/bcm2835-pm.h>
16 #include <linux/reset-controller.h>
109 #define PM_READ(reg) readl(power->base + (reg))
110 #define PM_WRITE(reg, val) writel(PM_PASSWORD | (val), power->base + (reg))
140 /* PM registers. */
148 struct bcm2835_power_domain domains[BCM2835_POWER_DOMAIN_COUNT]; member
154 void __iomem *base = power->asb; in bcm2835_asb_control()
163 if (power->rpivid_asb) in bcm2835_asb_control()
[all …]
/linux-6.14.4/drivers/pmdomain/amlogic/
DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
2 menu "Amlogic PM Domains"
5 tristate "Amlogic Meson Everything-Else Power Domains driver"
7 depends on PM && OF
12 Say yes to expose Amlogic Meson Everything-Else Power Domains as
13 Generic Power Domains.
16 tristate "Amlogic Meson Secure Power Domains driver"
18 depends on PM && OF
25 Say yes to expose Amlogic Meson Secure Power Domains as Generic
26 Power Domains.
/linux-6.14.4/Documentation/devicetree/bindings/bus/
Dsimple-pm-bus.yaml1 # SPDX-License-Identifier: GPL-2.0
3 ---
4 $id: http://devicetree.org/schemas/bus/simple-pm-bus.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Simple Power-Managed Bus
10 - Geert Uytterhoeven <[email protected]>
13 A Simple Power-Managed Bus is a transparent bus that doesn't need a real
16 However, its bus controller is part of a PM domain, or under the control
17 of a functional clock. Hence, the bus controller's PM domain and/or
19 on-SoC or externally) to function.
[all …]
Dfsl,imx8qxp-pixel-link-msi-bus.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/bus/fsl,imx8qxp-pixel-link-msi-bus.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - Liu Ying <[email protected]>
18 i.MX8qxp pixel link MSI bus is a simple memory-mapped bus. Two input clocks,
35 - $ref: simple-pm-bus.yaml#
37 # We need a select here so we don't match all nodes with 'simple-pm-bus'.
43 - fsl,imx8qxp-display-pixel-link-msi-bus
44 - fsl,imx8qm-display-pixel-link-msi-bus
[all …]
/linux-6.14.4/drivers/pmdomain/renesas/
Drmobile-sysc.c1 // SPDX-License-Identifier: GPL-2.0
9 * based on pm-sh7372.c
19 #include <linux/pm.h>
49 unsigned int mask = BIT(rmobile_pd->bit_shift); in rmobile_pd_power_down()
52 if (rmobile_pd->suspend) { in rmobile_pd_power_down()
53 int ret = rmobile_pd->suspend(); in rmobile_pd_power_down()
59 if (readl(rmobile_pd->base + PSTR) & mask) { in rmobile_pd_power_down()
60 writel(mask, rmobile_pd->base + SPDCR); in rmobile_pd_power_down()
62 readl_poll_timeout_atomic(rmobile_pd->base + SPDCR, val, in rmobile_pd_power_down()
66 pr_debug("%s: Power off, 0x%08x -> PSTR = 0x%08x\n", genpd->name, mask, in rmobile_pd_power_down()
[all …]
Drcar-gen4-sysc.c1 // SPDX-License-Identifier: GPL-2.0
3 * R-Car Gen4 SYSC Power management support
22 #include "rcar-gen4-sysc.h"
26 #define SYSCPONSR(x) (0x800 + ((x) * 0x4)) /* Power-ON Status Register 0 */
27 #define SYSCPOFFSR(x) (0x808 + ((x) * 0x4)) /* Power-OFF Status Register */
39 #define PWRON_PWROFF BIT(0) /* Power-ON/OFF request */
45 #define PDRSR_OFF BIT(0) /* Power-OFF state */
46 #define PDRSR_ON BIT(4) /* Power-ON state */
47 #define PDRSR_OFF_STATE BIT(8) /* Processing Power-OFF sequence */
48 #define PDRSR_ON_STATE BIT(12) /* Processing Power-ON sequence */
[all …]
Drcar-sysc.c1 // SPDX-License-Identifier: GPL-2.0
3 * R-Car SYSC Power management support
6 * Copyright (C) 2015-2017 Glider bvba
19 #include <linux/soc/renesas/rcar-sysc.h>
21 #include "rcar-sysc.h"
37 * Use WFI to power off, CPG/APMU to resume ARM cores on R-Car Gen2
38 * Use PSCI on R-Car Gen3
57 #define RCAR_PD_ALWAYS_ON 32 /* Always-on power area */
91 return -EAGAIN; in rcar_sysc_pwr_on_off()
93 /* Power-off delay quirk */ in rcar_sysc_pwr_on_off()
[all …]
/linux-6.14.4/drivers/pmdomain/st/
Dste-ux500-pm-domain.c1 // SPDX-License-Identifier: GPL-2.0-only
7 * Implements PM domains using the generic PM domain for ux500.
18 #include <dt-bindings/arm/ux500_pm_domains.h>
23 * Handle the gating of the PM domain regulator here. in pd_power_off()
25 * Drivers/subsystems handling devices in the PM domain needs to perform in pd_power_off()
26 * register context save/restore from their respective runtime PM in pd_power_off()
27 * callbacks, to be able to enable PM domain gating/ungating. in pd_power_off()
35 * Handle the ungating of the PM domain regulator here. in pd_power_on()
37 * Drivers/subsystems handling devices in the PM domain needs to perform in pd_power_on()
38 * register context save/restore from their respective runtime PM in pd_power_on()
[all …]
/linux-6.14.4/drivers/pmdomain/mediatek/
Dmtk-pm-domains.c1 // SPDX-License-Identifier: GPL-2.0-only
6 #include <linux/clk-provider.h>
19 #include "mt6735-pm-domains.h"
20 #include "mt6795-pm-domains.h"
21 #include "mt8167-pm-domains.h"
22 #include "mt8173-pm-domains.h"
23 #include "mt8183-pm-domains.h"
24 #include "mt8186-pm-domains.h"
25 #include "mt8188-pm-domains.h"
26 #include "mt8192-pm-domains.h"
[all …]
/linux-6.14.4/drivers/pmdomain/arm/
DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
6 select PM_GENERIC_DOMAINS if PM
8 This enables support for the SCMI performance domains which can be
18 select PM_GENERIC_DOMAINS if PM
20 This enables support for the SCMI power domains which can be
31 select PM_GENERIC_DOMAINS if PM
33 This enables support for the SCPI power domains which can be
/linux-6.14.4/Documentation/devicetree/bindings/soc/bcm/
Dbrcm,bcm2835-pm.yaml1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
3 ---
4 $id: http://devicetree.org/schemas/soc/bcm/brcm,bcm2835-pm.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: BCM2835 PM (Power domains, watchdog)
10 The PM block controls power domains and some reset lines, and includes a
14 - Nicolas Saenz Julienne <[email protected]>
17 - $ref: /schemas/watchdog/watchdog.yaml#
22 - enum:
23 - brcm,bcm2835-pm
[all …]
/linux-6.14.4/drivers/pmdomain/
Dcore.c1 // SPDX-License-Identifier: GPL-2.0
3 * drivers/base/power/domain.c - Common code related to device power domains.
7 #define pr_fmt(fmt) "PM: " fmt
37 __routine = genpd->dev_ops.callback; \
56 mutex_lock(&genpd->mlock); in genpd_lock_mtx()
62 mutex_lock_nested(&genpd->mlock, depth); in genpd_lock_nested_mtx()
67 return mutex_lock_interruptible(&genpd->mlock); in genpd_lock_interruptible_mtx()
72 return mutex_unlock(&genpd->mlock); in genpd_unlock_mtx()
83 __acquires(&genpd->slock) in genpd_lock_spin()
87 spin_lock_irqsave(&genpd->slock, flags); in genpd_lock_spin()
[all …]
/linux-6.14.4/drivers/pmdomain/imx/
DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
2 menu "i.MX PM Domains"
5 bool "i.MX GPCv2 PM domains"
7 depends on PM
/linux-6.14.4/drivers/pmdomain/qcom/
DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
2 menu "Qualcomm PM Domains"
18 be called qcom-cpr
24 QCOM RPMh Power domain driver to support power-domains with
31 depends on PM && OF
36 QCOM RPM Power domain driver to support power-domains with
/linux-6.14.4/drivers/cpuidle/
Dcpuidle-psci-domain.c1 // SPDX-License-Identifier: GPL-2.0
3 * PM domains for CPUs via genpd - managed by cpuidle-psci.
22 #include "cpuidle-psci.h"
35 struct genpd_power_state *state = &pd->states[pd->state_idx]; in psci_pd_power_off()
38 if (!state->data) in psci_pd_power_off()
42 return -EBUSY; in psci_pd_power_off()
45 pd_state = state->data; in psci_pd_power_off()
56 int ret = -ENOMEM; in psci_pd_init()
66 pd->flags |= GENPD_FLAG_IRQ_SAFE | GENPD_FLAG_CPU_DOMAIN; in psci_pd_init()
71 * supported, but only during system-wide suspend. in psci_pd_init()
[all …]
/linux-6.14.4/Documentation/driver-api/pm/
Ddevices.rst1 .. SPDX-License-Identifier: GPL-2.0
10 :Copyright: |copy| 2010-2011 Rafael J. Wysocki <[email protected]>, Novell Inc.
18 management (PM) code is also driver-specific. Most drivers will do very
22 This writeup gives an overview of how drivers interact with system-wide
25 background for the domain-specific work you'd do with any specific driver.
31 Drivers will use one or both of these models to put devices into low-power
36 Drivers can enter low-power states as part of entering system-wide
37 low-power states like "suspend" (also known as "suspend-to-RAM"), or
39 "suspend-to-disk").
42 by implementing various role-specific suspend and resume methods to
[all …]
/linux-6.14.4/Documentation/trace/
Devents-power.rst8 - Power state switch which reports events related to suspend (S-states),
9 cpuidle (C-states) and cpufreq (P-states)
10 - System clock related changes
11 - Power domains related changes and transitions
22 -----------------
24 A 'cpu' event class gathers the CPU-related events: cpuidle and
39 Note: the value of '-1' or '4294967295' for state means an exit from the current state,
62 3. Power domains events
64 The power domain events are used for power domains transitions
72 4. PM QoS events
[all …]

1234567891011