Lines Matching refs:power

3  * drivers/base/power/domain.c - Common code related to device power domains.
26 #include "power.h"
423 * dev_pm_genpd_set_performance_state- Set performance state of device's power
446 if (WARN_ON(!dev->power.subsys_data ||
447 !dev->power.subsys_data->domain_data))
488 td = to_gpd_data(dev->power.subsys_data->domain_data)->td;
520 * dev_pm_genpd_synced_poweroff - Next power off should be synchronous
524 * Allows a consumer of the genpd to notify the provider that the next power off
551 /* Notify consumers that we are about to power on. */
602 /* Notify consumers that we are about to power off. */
647 * @genpd: PM domain to power off.
658 * genpd_power_off - Remove power from a given PM domain.
659 * @genpd: PM domain to power down.
663 * be RPM_SUSPENDED, while it tries to power off the PM domain.
667 * have been powered down, remove power from @genpd.
678 * Do not try to power off the domain in the following situations:
679 * (1) The domain is already in the "power off" state.
686 * Abort power off for the PM domain in the following situations:
729 /* Don't power off, if a child domain is waiting to power on. */
754 * genpd_power_on - Restore power to a given PM domain and its parents.
755 * @genpd: PM domain to power up.
758 * Restore power to @genpd and all of its parents so that it is possible to
832 spin_lock_irq(&dev->power.lock);
834 pdd = dev->power.subsys_data ?
835 dev->power.subsys_data->domain_data : NULL;
844 spin_unlock_irq(&dev->power.lock);
853 if (!dev || dev->power.ignore_children)
983 * If power.irq_safe is set, this routine may be run with
1022 * As we don't power off a non IRQ safe domain, which holds
1023 * an IRQ safe device, we don't need to restore power to it.
1092 pr_warn("genpd: Not disabling unused power domains\n");
1110 * genpd_sync_power_off - Synchronously power off a PM domain and its parents.
1111 * @genpd: PM domain to power off, if possible.
1118 * This function is only called in "noirq" and "syscore" stages of system power
1162 * genpd_sync_power_on - Synchronously power on a PM domain and its parents.
1163 * @genpd: PM domain to power on.
1167 * This function is only called in "noirq" and "syscore" stages of system power
1196 * genpd_prepare - Start power transition of a device in a PM domain.
1199 * Start a power transition of a device (during a system-wide power transition)
1242 * Stop the device and remove power from the domain if all devices in it have
1284 * Stop the device and remove power from the domain if all devices in it have
1301 * Restore power to the device's PM domain, if necessary, and start the device.
1337 * Restore power to the device's PM domain, if necessary, and start the device.
1352 * struct generic_pm_domain representing a power domain consisting of I/O
1368 * Start the device, unless power has been removed from the domain already
1383 * Stop the device and remove power from the domain if all devices in it have
1399 * Make sure the domain will be in the same power state as before the
1410 * genpd_complete - Complete power transition of a device in a power domain.
1413 * Complete a power transition of a device (during a system-wide power
1416 * a power domain consisting of I/O devices.
1541 spin_lock_irq(&dev->power.lock);
1543 if (dev->power.subsys_data->domain_data)
1546 dev->power.subsys_data->domain_data = &gpd_data->base;
1548 spin_unlock_irq(&dev->power.lock);
1566 spin_lock_irq(&dev->power.lock);
1568 dev->power.subsys_data->domain_data = NULL;
1570 spin_unlock_irq(&dev->power.lock);
1696 pdd = dev->power.subsys_data->domain_data;
1749 * dev_pm_genpd_add_notifier - Add a genpd power on/off notifier for @dev
1754 * Users may call this function to add a genpd power on/off notifier for an
1773 if (WARN_ON(!dev->power.subsys_data ||
1774 !dev->power.subsys_data->domain_data))
1777 gpd_data = to_gpd_data(dev->power.subsys_data->domain_data);
1797 * dev_pm_genpd_remove_notifier - Remove a genpd power on/off notifier for @dev
1801 * Users may call this function to remove a genpd power on/off notifier for an
1819 if (WARN_ON(!dev->power.subsys_data ||
1820 !dev->power.subsys_data->domain_data))
1823 gpd_data = to_gpd_data(dev->power.subsys_data->domain_data);
2735 ret = of_parse_phandle_with_args(dev->of_node, "power-domains",
2736 "#power-domain-cells", index, &pd_args);
2793 dev_err(dev, "failed to set required performance state for power-domain %s: %d\n",
2807 * PM domain or when multiple power-domains exists for it, else a negative error
2808 * code. Note that if a power-domain exists for the device, but it cannot be
2821 if (of_count_phandle_with_args(dev->of_node, "power-domains",
2822 "#power-domain-cells") != 1)
2841 * failures. If a power-domain exists for the device, but cannot be found or
2856 num_domains = of_count_phandle_with_args(dev->of_node, "power-domains",
2857 "#power-domain-cells");
2897 * power-domain-names DT property. For further description see
2907 index = of_property_match_string(dev->of_node, "power-domain-names",
3044 * power domain OPP to performance state.
3093 if (dev->power.runtime_error)
3095 else if (dev->power.disable_depth)
3097 else if (dev->power.runtime_status < ARRAY_SIZE(status_lookup))
3098 p = status_lookup[dev->power.runtime_status];
3109 gpd_data = to_gpd_data(dev->power.subsys_data->domain_data);