Home
last modified time | relevance | path

Searched +full:power +full:- +full:domain (Results 1 – 25 of 149) sorted by relevance

123456

/Zephyr-Core-3.5.0/doc/services/pm/
Dpower_domain.rst1 .. _pm-power-domain:
3 Power Domain
9 The Zephyr power domain abstraction is designed to support groupings of devices
10 powered by a common source to be notified of power source state changes in a
12 that device B is on the same power domain and should also be configured into a
13 low power state.
15 Power domains are optional on Zephyr, to enable this feature the
18 When a power domain turns itself on or off, it is the responsibility of the
19 power domain to notify all devices using it through their power management
25 .. _pm-domain-work-flow:
[all …]
Ddevice.rst1 Device Power Management
7 Device power management (PM) on Zephyr is a feature that enables devices to
10 selected, device drivers implementing power management will be able to take
11 advantage of the device power management subsystem.
13 Zephyr supports two types of device power management:
15 - :ref:`Device Runtime Power Management <pm-device-runtime-pm>`
16 - :ref:`System Power Management <pm-device-system-pm>`
18 .. _pm-device-runtime-pm:
20 Device Runtime Power Management
24 and has the best knowledge of their use, performs the device power management. This
[all …]
Ddevice_runtime.rst1 .. _pm-device-runtime:
3 Device Runtime Power Management
9 The device runtime power management (PM) framework is an active power management
10 mechanism which reduces the overall system power consumption by suspending the
17 When device runtime power management is enabled on a device, its state will be
29 For devices on a power domain (via the devicetree 'power-domain' property), device runtime
30 power management automatically attempts to request and release the dependent domain
34 For the previous to automatically control the power domain state, device runtime PM must be enabled
35 on the power domain device (either through the `zephyr,pm-device-runtime-auto` devicetree property
49 init -> SUSPENDED;
[all …]
/Zephyr-Core-3.5.0/tests/subsys/pm/device_driver_init/
Dapp.overlay3 compatible = "power-domain-gpio";
4 enable-gpios = <&gpio0 0 0>;
8 compatible = "power-domain-gpio";
9 enable-gpios = <&gpio0 1 0>;
10 power-domain = <&test_reg>;
14 compatible = "power-domain-gpio";
15 enable-gpios = <&gpio0 2 0>;
16 power-domain = <&test_reg>;
17 zephyr,pm-device-runtime-auto;
21 compatible = "power-domain-gpio";
[all …]
/Zephyr-Core-3.5.0/subsys/pm/
DKconfig1 # Copyright (c) 2014-2015 Wind River Systems, Inc.
3 # SPDX-License-Identifier: Apache-2.0
5 menu "Power Management"
11 calls to configure low-power states.
14 bool "System Power Management"
17 This option enables the board to implement extra power management
19 power management subsystem of the number of ticks until the next kernel
25 module-str = System Power Management
29 bool "System Power Management Stats"
32 Enable System Power Management Stats.
[all …]
Ddevice.c4 * SPDX-License-Identifier: Apache-2.0
45 struct pm_device *pm = dev->pm; in pm_device_action_run()
49 return -ENOSYS; in pm_device_action_run()
53 return -EPERM; in pm_device_action_run()
57 if (pm->state == action_target_state[action]) { in pm_device_action_run()
58 return -EALREADY; in pm_device_action_run()
60 if (pm->state != action_expected_state[action]) { in pm_device_action_run()
61 return -ENOTSUP; in pm_device_action_run()
64 ret = pm->action_cb(dev, action); in pm_device_action_run()
67 * TURN_ON and TURN_OFF are actions triggered by a power domain in pm_device_action_run()
[all …]
/Zephyr-Core-3.5.0/tests/subsys/pm/device_power_domains/
Dapp.overlay3 compatible = "power-domain-gpio";
4 enable-gpios = <&gpio0 0 0>;
8 compatible = "power-domain-gpio";
9 enable-gpios = <&gpio0 1 0>;
13 compatible = "power-domain-gpio";
14 enable-gpios = <&gpio0 2 0>;
15 power-domain = <&test_reg_0>;
19 compatible = "test-device-pm";
21 power-domain = <&test_reg_1>;
22 alternate-domain = <&test_reg_chained>;
/Zephyr-Core-3.5.0/tests/subsys/pm/power_domain/
Dapp.overlay4 * SPDX-License-Identifier: Apache-2.0
9 compatible = "power-domain";
14 compatible = "test-device-pm";
16 power-domain = <&test_domain>;
20 compatible = "test-device-pm";
22 power-domain = <&test_domain>;
26 compatible = "power-domain";
31 compatible = "test-device-pm";
33 power-domain = <&test_domain_balanced>;
/Zephyr-Core-3.5.0/dts/bindings/power-domain/
Dintel,adsp-power-domain.yaml3 # SPDX-License-Identifier: Apache-2.0
5 description: Power domains for intel ADSP
7 compatible: "intel,adsp-power-domain"
9 include: power-domain.yaml
12 bit-position:
17 read_address (PWRSTS) to set power active or confirm power active
18 for a desired domain.
Dpower-domain-gpio.yaml2 # SPDX-License-Identifier: Apache-2.0
4 description: Simple GPIO controlled power domain
6 compatible: "power-domain-gpio"
8 include: power-domain.yaml
11 enable-gpios:
12 type: phandle-array
18 provide the GPIO polarity and open-drain status in the phandle
19 selector. The Linux enable-active-high and gpio-open-drain
22 startup-delay-us:
27 off-on-delay-us:
Dpower-domain.yaml2 # SPDX-License-Identifier: Apache-2.0
4 description: Properties for power domains
6 compatible: "power-domain"
/Zephyr-Core-3.5.0/drivers/power_domain/
DKconfig2 # SPDX-License-Identifier: Apache-2.0
5 bool "Power domain drivers"
7 Include drivers for power domains in system config
12 module-str = power_domain
16 bool "GPIO controlled power domain"
24 bool "Use Intel ADSP power gating mechanisms"
29 Include Intel ADSP power domain control mechanisms
Dpower_domain_gpio.c5 * SPDX-License-Identifier: Apache-2.0
29 const struct device *domain; member
39 /* Only run action if the device is on the specified domain */ in pd_on_domain_visitor()
40 if (!dev->pm || (dev->pm->domain != visitor_context->domain)) { in pd_on_domain_visitor()
44 (void)pm_device_action_run(dev, visitor_context->action); in pd_on_domain_visitor()
54 struct pd_visitor_context context = {.domain = dev}; in pd_gpio_pm_action()
56 const struct pd_gpio_config *cfg = dev->config; in pd_gpio_pm_action()
57 struct pd_gpio_data *data = dev->data; in pd_gpio_pm_action()
64 return -ENOTSUP; in pd_gpio_pm_action()
70 k_sleep(data->next_boot); in pd_gpio_pm_action()
[all …]
/Zephyr-Core-3.5.0/include/zephyr/pm/
Ddevice.h4 * SPDX-License-Identifier: Apache-2.0
20 * @brief Device Power Management API
34 /** Indicate if the device failed to power up. */
36 /** Indicate if the device has claimed a power domain */
49 /** Indicates if the device is used as a power domain */
57 /** @brief Device power states. */
71 * Device is turned off (power removed).
88 * Action triggered only by a power domain.
94 * Action triggered only by a power domain.
106 * @retval -ENOTSUP If the requested action is not supported.
[all …]
/Zephyr-Core-3.5.0/dts/bindings/base/
Dpm.yaml2 # SPDX-License-Identifier: Apache-2.0
4 # Properties for Power Management (PM)
7 wakeup-source:
19 power-domain:
23 Power domain the device belongs to.
25 The device will be notified when the power domain it belongs to is either
28 zephyr,pm-device-runtime-auto:
31 Automatically configure the device for runtime power management after the
/Zephyr-Core-3.5.0/dts/xtensa/intel/
Dintel_adsp_ace15_mtpm.dtsi4 * SPDX-License-Identifier: Apache-2.0
12 #address-cells = <1>;
13 #size-cells = <0>;
17 compatible = "cdns,tensilica-xtensa-lx7";
19 cpu-power-states = <&d0i3 &d3>;
20 i-cache-line-size = <64>;
21 d-cache-line-size = <64>;
26 compatible = "cdns,tensilica-xtensa-lx7";
28 cpu-power-states = <&d0i3 &d3>;
33 compatible = "cdns,tensilica-xtensa-lx7";
[all …]
Dintel_adsp_ace20_lnl.dtsi4 * SPDX-License-Identifier: Apache-2.0
12 #address-cells = <1>;
13 #size-cells = <0>;
17 compatible = "cdns,tensilica-xtensa-lx7";
19 cpu-power-states = <&d0i3 &d3>;
20 i-cache-line-size = <64>;
21 d-cache-line-size = <64>;
26 compatible = "cdns,tensilica-xtensa-lx7";
28 cpu-power-states = <&d0i3 &d3>;
33 compatible = "cdns,tensilica-xtensa-lx7";
[all …]
/Zephyr-Core-3.5.0/tests/subsys/pm/power_domain/src/
Dmain.c4 * SPDX-License-Identifier: Apache-2.0
17 static const struct device *const domain = DEVICE_DT_GET(TEST_DOMAIN); variable
31 /* Switch power on */ in domain_pm_action()
42 rc = -ENOTSUP; in domain_pm_action()
56 testing_domain_on_notitication--; in deva_pm_action()
60 testing_domain_off_notitication--; in deva_pm_action()
68 * Device B will return -ENOTSUP for TURN_ON and TURN_OFF actions.
80 ret = -ENOTSUP; in devb_pm_action()
81 testing_domain_on_notitication--; in devb_pm_action()
85 ret = -ENOTSUP; in devb_pm_action()
[all …]
/Zephyr-Core-3.5.0/soc/xtensa/intel_adsp/ace/include/intel_ace15_mtpm/
Dadsp_power.h3 * SPDX-License-Identifier: Apache-2.0
17 /* Power Control register - controls the power domain operations. */
34 /* Power Status register - reports the power domain status. */
50 * @brief Power up a specific CPU.
52 * This sets the "not power gating" bit in the power control
53 * register to disable power gating to CPU, thus powering up
60 ACE_PWRCTL->wpdsphpxpg |= BIT(cpu_num); in soc_cpu_power_up()
64 * @brief Power down a specific CPU.
66 * This clears the "not power gating" bit in the power control
67 * register to enable power gating to CPU, thus powering down
[all …]
/Zephyr-Core-3.5.0/drivers/spi/
Dspi_cc13xx_cc26xx.c4 * SPDX-License-Identifier: Apache-2.0
21 #include <ti/drivers/Power.h>
22 #include <ti/drivers/power/PowerCC26X2.h>
40 const struct spi_cc13xx_cc26xx_config *cfg = dev->config; in spi_cc13xx_cc26xx_configure()
41 struct spi_cc13xx_cc26xx_data *data = dev->data; in spi_cc13xx_cc26xx_configure()
42 struct spi_context *ctx = &data->ctx; in spi_cc13xx_cc26xx_configure()
50 if (config->operation & SPI_HALF_DUPLEX) { in spi_cc13xx_cc26xx_configure()
51 LOG_ERR("Half-duplex not supported"); in spi_cc13xx_cc26xx_configure()
52 return -ENOTSUP; in spi_cc13xx_cc26xx_configure()
56 if (SPI_OP_MODE_GET(config->operation) != SPI_OP_MODE_MASTER) { in spi_cc13xx_cc26xx_configure()
[all …]
/Zephyr-Core-3.5.0/drivers/bbram/
DKconfig.stm322 # SPDX-License-Identifier: Apache-2.0
5 bool "ST STM32 Battery-backed RAM drivers"
13 STM32 BBRAM are 32-bit registers which can be used for storing user
14 application data. They are implemented in the backup domain that remains
15 powered-on by VBAT when the VDD power is switched off. They are not reset
17 reset by a backup domain reset.
/Zephyr-Core-3.5.0/dts/bindings/power/
Dnuvoton,npcx-power-psl.yaml2 # SPDX-License-Identifier: Apache-2.0
4 description: Nuvoton, NPCX Power Switch Logic (PSL) control node
6 compatible: "nuvoton,npcx-power-psl"
8 include: [base.yaml, pinctrl-device.yaml]
11 enable-gpios:
12 type: phandle-array
15 GPIO to used to turn on/off the Core Domain power supply (VCC1) of NPCX
17 pinctrl-0:
19 pinctrl-names:
/Zephyr-Core-3.5.0/dts/bindings/memory-controllers/
Dst,stm32-bbram.yaml2 # SPDX-License-Identifier: Apache-2.0
7 STM32 BBRAM are 32-bit registers which can be used for storing user
8 application data. They are implemented in the backup domain that remains
9 powered-on by VBAT when the VDD power is switched off. They are not reset
11 reset by a backup domain reset.
13 compatible: "st,stm32-bbram"
18 st,backup-regs:
/Zephyr-Core-3.5.0/include/zephyr/drivers/
Dbbram.h4 * SPDX-License-Identifier: Apache-2.0
35 * @brief API template to check for standby power failure.
43 * @brief API template to check for V CC1 power failure.
87 * Check if "Invalid Battery-Backed RAM" status is set then reset the status bit. This may occur as
91 * @return 0 if the Battery-Backed RAM data is valid, -EFAULT otherwise.
98 (const struct bbram_driver_api *)dev->api; in z_impl_bbram_check_invalid()
100 if (!api->check_invalid) { in z_impl_bbram_check_invalid()
101 return -ENOTSUP; in z_impl_bbram_check_invalid()
104 return api->check_invalid(dev); in z_impl_bbram_check_invalid()
108 * @brief Check for standby (Volt SBY) power failure.
[all …]
/Zephyr-Core-3.5.0/tests/kernel/device/
Dapp.overlay5 * SPDX-License-Identifier: Apache-2.0
12 * with real-world devicetree nodes, to allow these tests to run on
17 #address-cells = <1>;
18 #size-cells = <1>;
50 reg-names = "chip",
58 power-domain = <&fakedomain_2>;
64 power-domain = <&fakedomain_0>;

123456