Lines Matching +full:power +full:- +full:domains

7 "logical"/para-virtual resources like memory, CPUs, and "physical"
8 host-bridges, which are generally managed by the host/hypervisor and provided
10 are documented extensively in section 13 of the Linux on Power Architecture
14 Dynamic-reconfiguration Connectors
26 the name/index/power-domain/type of each DRC allocated to a guest at
33 for hot plugged resources described under :ref:`guest-host-interface`.
37 of ``ibm,drc-indexes``:
39 ``ibm,drc-names``
40 -----------------
42 First 4-bytes: big-endian (BE) encoded integer denoting the number of entries.
44 Each entry: a NULL-terminated ``<name>`` string encoded as a byte array.
47 Power Architecture Reference ([LoPAR]_) section 13.5.2.4, and basically
63 ``ibm,drc-indexes``
64 -------------------
66 First 4-bytes: BE-encoded integer denoting the number of entries.
68 Each 4-byte entry: BE-encoded ``<index>`` integer that is unique across all
90 ``ibm,drc-power-domains``
91 -------------------------
93 First 4-bytes: BE-encoded integer denoting the number of entries.
95 Each 4-byte entry: 32-bit, BE-encoded ``<index>`` integer that specifies the
96 power domain the resource will be assigned to. In the case of QEMU we
97 associated all resources with a "live insertion" domain, where the power is
99 special value of ``-1``.
102 ``ibm,drc-types``
103 -----------------
105 First 4-bytes: BE-encoded integer denoting the number of entries.
107 Each entry: a NULL-terminated ``<type>`` string encoded as a byte array.
112 "PHB" for a physical host-bridge.
120 .. _guest-host-interface:
122 Guest->Host interface to manage dynamic resources
128 the guest->host interface.
130 ``rtas-set-power-level``
131 ------------------------
133 Set the power level for a specified power domain.
135 ``arg[0]``: integer identifying power domain.
137 ``arg[1]``: new power level for the domain, ``0-100``.
141 ``output[1]``: power level after command.
143 ``rtas-get-power-level``
144 ------------------------
146 Get the power level for a specified power domain.
148 ``arg[0]``: integer identifying power domain.
152 ``output[1]``: current power level.
154 ``rtas-set-indicator``
155 ----------------------
161 ``arg[1]``: index of sensor, for DR-related sensors this is generally the DRC
171 * ``9001``: ``isolation-state``, controls/indicates whether a device has been
178 * ``9002``: ``dr-indicator``, controls "visual" indicator associated with
189 * ``9003``: ``allocation-state``, generally only used for "logical" DR resources
191 ``isolation-state->unisolate``, or after releasing it via
192 ``isolation-state->isolate``, respectively. For "physical" DR (like PCI
193 hot plug/unplug) the pre-allocation of the resource is implied and this sensor
202 ``2``: ``exchange``, used to allocate a spare resource to use for fail-over
208 ``rtas-get-sensor-state:``
209 --------------------------
215 ``arg[1]``: index of sensor, for DR-related sensors this is generally the DRC
220 For DR-related operations, the only noteworthy sensor is ``dr-entity-sense``,
221 which has a type value of ``9003``, as ``allocation-state`` does in the case of
222 ``rtas-set-indicator``. The semantics/encodings of the sensor values are
225 Supported sensor values for ``dr-entity-sense`` (``9003``) sensor:
250 ``allocation-state`` sensor semantics above).
257 ``allocation-state`` sensor semantics above).
259 ``rtas-ibm-configure-connector``
260 --------------------------------
265 ``arg[0]``: guest physical address of 4096-byte work area buffer.
267 ``arg[1]``: 0, or address of additional 4096-byte work area buffer; only
268 non-zero if a prior RTAS response indicated a need for additional memory.
282 ``5``: instruct guest to provide additional work-area buffer via ``arg[1]``.
287 The DRC index is encoded in the first 4-bytes of the first work area buffer.
288 Work area (``wa``) layout, using 4-byte offsets:
292 ``wa[1]``: ``0`` (hard-coded).
296 For next-sibling/next-child response:
298 ``wa`` offset of null-terminated string denoting the new node's name.
300 For next-property response:
302 ``wa`` offset of null-terminated string denoting new property's name.
304 ``wa[3]``: for next-property response (unused otherwise):
306 Byte-length of new property's value.
308 ``wa[4]``: for next-property response (unused otherwise):
310 New property's value, encoded as an OFDT-compatible byte array.
315 For most DR operations, the hypervisor will issue host->guest add/remove events
316 using the EPOW/check-exception notification framework, where the host issues a
317 check-exception interrupt, then provides an RTAS event log via an
318 rtas-check-exception call issued by the guest in response. This framework is
323 previously unneeded due to direct manipulation of DR-related guest userspace
324 tools by host-level management such as an HMC. This level of management is not
325 applicable to KVM on Power, hence the reason for extending the notification
328 The format for these EPOW-signalled events is described below under
329 :ref:`hot-plug-unplug-event-structure`. Note that these events are not formally
331 also described below under :ref:`hot-plug-unplug-event-structure`, and so are
338 ``ibm,client-architecture-support`` hcall by setting byte 5, bit 6 of it's
339 ``ibm,architecture-vec-5`` option vector structure (as described by [LoPAR]_,
341 surfaced to the guest via check-exception RTAS calls, but use a dedicated event
343 addition of a ``hot-plug-events`` node under ``/event-sources`` node of the
347 .. _hot-plug-unplug-event-structure:
353 encoded in big-endian format):
355 .. code-block:: c
411 * DRC index <index + count - 1> in
422 ``ibm,lrdr-capacity``
425 ``ibm,lrdr-capacity`` is a property in the /rtas device tree node that
433 memory can be hot-plugged to the guest.
435 ``<maxcpus>``, a BE-encoded integer, represents the maximum number of
441 ``ibm,dynamic-reconfiguration-memory``
444 ``ibm,dynamic-reconfiguration-memory`` is a device tree node that represents
447 ``ibm,client-architecture-support`` call. Memory that is not dynamically
452 ``ibm,lmb-size``
453 ----------------
455 This 64-bit integer defines the size of each dynamically reconfigurable LMB.
457 ``ibm,associativity-lookup-arrays``
458 -----------------------------------
468 0 and M-1 which is used as an index into this table to select which
470 in ``ibm,dynamic-memory`` property.
472 ``ibm,dynamic-memory``
473 ----------------------
481 - Logical address of the start of the LMB encoded as a 64-bit integer. This
483 - DRC index of the LMB that corresponds to ``ibm,my-drc-index`` property
485 - Four bytes reserved for expansion.
486 - Associativity list index for the LMB that is used as an index into
487 ``ibm,associativity-lookup-arrays`` property described earlier. This is used
489 - A 32-bit flags word. The bit at bit position ``0x00000008`` defines whether
492 ``ibm,dynamic-memory-v2``
493 -------------------------
503 - Number of sequential LMBs in the entry represented by a 32-bit integer.
504 - Logical address of the first LMB in the set encoded as a 64-bit integer.
505 - DRC index of the first LMB in the set.
506 - Associativity list index that is used as an index into
507 ``ibm,associativity-lookup-arrays`` property described earlier. This
510 - A 32-bit flags word that applies to all the LMBs in the set.