48 lines
1.9 KiB
YAML
48 lines
1.9 KiB
YAML
# SPDX-License-Identifier: GPL-2.0-only
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/powerpc/sleep.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: PowerPC sleep property
|
|
|
|
maintainers:
|
|
- Rob Herring <robh@kernel.org>
|
|
|
|
description: |
|
|
Devices on SOCs often have mechanisms for placing devices into low-power
|
|
states that are decoupled from the devices' own register blocks. Sometimes,
|
|
this information is more complicated than a cell-index property can
|
|
reasonably describe. Thus, each device controlled in such a manner
|
|
may contain a "sleep" property which describes these connections.
|
|
|
|
The sleep property consists of one or more sleep resources, each of
|
|
which consists of a phandle to a sleep controller, followed by a
|
|
controller-specific sleep specifier of zero or more cells.
|
|
|
|
The semantics of what type of low power modes are possible are defined
|
|
by the sleep controller. Some examples of the types of low power modes
|
|
that may be supported are:
|
|
|
|
- Dynamic: The device may be disabled or enabled at any time.
|
|
- System Suspend: The device may request to be disabled or remain
|
|
awake during system suspend, but will not be disabled until then.
|
|
- Permanent: The device is disabled permanently (until the next hard
|
|
reset).
|
|
|
|
Some devices may share a clock domain with each other, such that they should
|
|
only be suspended when none of the devices are in use. Where reasonable,
|
|
such nodes should be placed on a virtual bus, where the bus has the sleep
|
|
property. If the clock domain is shared among devices that cannot be
|
|
reasonably grouped in this manner, then create a virtual sleep controller
|
|
(similar to an interrupt nexus, except that defining a standardized
|
|
sleep-map should wait until its necessity is demonstrated).
|
|
|
|
select: true
|
|
|
|
properties:
|
|
sleep:
|
|
$ref: /schemas/types.yaml#/definitions/phandle-array
|
|
|
|
additionalProperties: true
|