Lines Matching +full:num +full:- +full:guest +full:- +full:ids
1 .. SPDX-License-Identifier: GPL-2.0
10 This document explains how a guest operating system can act as a
15 guest virtual machine that is directly run under L0 and is initiated
16 and controlled by L0. L2 is a guest virtual machine that is initiated
36 KVM: PPC: Book3S HV: Nested guest entry via hypercall
44 vCPU (except in the short sequence in the L0 on L1 -> L2 entry and L2
45 -> L1 exit).
74 - L1 and L0 negotiate capabilities with H_GUEST_{G,S}ET_CAPABILITIES()
77 - L1 requests the L0 create an L2 with H_GUEST_CREATE() and receives a token
79 - L1 requests the L0 create an L2 vCPU with H_GUEST_CREATE_VCPU()
81 - L1 and L0 communicate the vCPU state using the H_GUEST_{G,S}ET() hcall
83 - L1 requests the L0 runs the vCPU running H_GUEST_VCPU_RUN() hcall
85 - L1 deletes L2 with H_GUEST_DELETE()
99 --------------------------
115 --------------------------
138 ----------------
149 continueToken: Initial call set to -1. Subsequent calls,
154 H_Not_Enough_Resources: Unable to create Guest VCPU due to not
157 R4: If R3 = H_Busy or_H_LongBusyOrder -> continueToken
160 ---------------------
178 H_Not_Enough_Resources: Unable to create Guest VCPU due to not
183 -------------------
185 This is called to get state associated with an L2 (Guest-wide or vCPU specific).
186 This info is passed via the Guest State Buffer (GSB), a standard format as
193 IDs in the GSB must match this.
196 provided is the L2 and vCPU IDs associated with the state to set.
198 The L1 writes only the IDs and sizes in the GSB. L0 writes the
209 Bit 0: getGuestWideState: Request state of the Guest instead
218 Bits 2-63: Reserved
235 -------------------
238 passed via the Guest State Buffer (GSB), necessary details below:
244 IDs in the GSB must match this.
247 provided is the L2 and vCPU IDs associated with the state to set.
260 Bit 0: getGuestWideState: Request state of the Guest instead
262 Bit 1: returnOwnershipOfVcpuState Return Guest VCPU state. See
264 Bits 2-63: Reserved
281 ------------------
283 This is called to run an L2 vCPU. The L2 and vCPU IDs are passed in as
303 0xc00), then GPR3-12 are provided in the output GSB as this is the
324 Bits 3-63: Reserved
344 ----------------
358 Bits 1-63: Reserved
363 Guest State Buffer
366 The Guest State Buffer (GSB) is the main method of communicating state
376 The Guest state buffer has a header which gives the number of
381 +----------+----------+-------------------------------------------+
386 +----------+----------+-------------------------------------------+
387 | 4 | | Guest state buffer elements |
388 +----------+----------+-------------------------------------------+
392 +----------+----------+-------------------------------------------+
397 +----------+----------+-------------------------------------------+
399 +----------+----------+-------------------------------------------+
401 +----------+----------+-------------------------------------------+
408 +--------+-------+----+--------+----------------------------------+
410 | | Bytes | | Guest | |
414 +--------+-------+----+--------+----------------------------------+
418 +--------+-------+----+--------+----------------------------------+
420 +--------+-------+----+--------+----------------------------------+
422 +--------+-------+----+--------+----------------------------------+
424 +--------+-------+----+--------+----------------------------------+
427 | | | | |- 0x00 Addr part scope table |
428 | | | | |- 0x08 Num addr bits |
429 | | | | |- 0x10 Size root dir |
430 +--------+-------+----+--------+----------------------------------+
433 | | | | |- 0x0 Addr proc scope table |
434 | | | | |- 0x8 Table size. |
435 +--------+-------+----+--------+----------------------------------+
436 | 0x0007-| | | | Reserved |
438 +--------+-------+----+--------+----------------------------------+
441 | | | | |- 0x0 Addr of buffer |
442 | | | | |- 0x8 Buffer Size. |
443 +--------+-------+----+--------+----------------------------------+
446 | | | | |- 0x0 Addr of buffer |
447 | | | | |- 0x8 Buffer Size. |
448 +--------+-------+----+--------+----------------------------------+
450 +--------+-------+----+--------+----------------------------------+
451 | 0x0C03-| | | | Reserved |
453 +--------+-------+----+--------+----------------------------------+
454 | 0x1000-| 0x08 | RW | T | GPR 0-31 |
456 +--------+-------+----+--------+----------------------------------+
458 +--------+-------+----+--------+----------------------------------+
460 +--------+-------+----+--------+----------------------------------+
462 +--------+-------+----+--------+----------------------------------+
464 +--------+-------+----+--------+----------------------------------+
466 +--------+-------+----+--------+----------------------------------+
468 +--------+-------+----+--------+----------------------------------+
470 +--------+-------+----+--------+----------------------------------+
472 +--------+-------+----+--------+----------------------------------+
474 +--------+-------+----+--------+----------------------------------+
476 +--------+-------+----+--------+----------------------------------+
478 +--------+-------+----+--------+----------------------------------+
480 +--------+-------+----+--------+----------------------------------+
482 +--------+-------+----+--------+----------------------------------+
484 +--------+-------+----+--------+----------------------------------+
486 +--------+-------+----+--------+----------------------------------+
488 +--------+-------+----+--------+----------------------------------+
490 +--------+-------+----+--------+----------------------------------+
492 +--------+-------+----+--------+----------------------------------+
494 +--------+-------+----+--------+----------------------------------+
496 +--------+-------+----+--------+----------------------------------+
498 +--------+-------+----+--------+----------------------------------+
500 +--------+-------+----+--------+----------------------------------+
501 | 0x1036-| 0x08 | RW | T | SPRG 0-3 |
503 +--------+-------+----+--------+----------------------------------+
505 +--------+-------+----+--------+----------------------------------+
506 | 0x103B | 0x08 | RW | T | MMCR 0-3 |
508 +--------+-------+----+--------+----------------------------------+
510 +--------+-------+----+--------+----------------------------------+
512 +--------+-------+----+--------+----------------------------------+
514 +--------+-------+----+--------+----------------------------------+
516 +--------+-------+----+--------+----------------------------------+
518 +--------+-------+----+--------+----------------------------------+
520 +--------+-------+----+--------+----------------------------------+
522 +--------+-------+----+--------+----------------------------------+
524 +--------+-------+----+--------+----------------------------------+
526 +--------+-------+----+--------+----------------------------------+
528 +--------+-------+----+--------+----------------------------------+
530 +--------+-------+----+--------+----------------------------------+
532 +--------+-------+----+--------+----------------------------------+
534 +--------+-------+----+--------+----------------------------------+
536 +--------+-------+----+--------+----------------------------------+
538 +--------+-------+----+--------+----------------------------------+
540 +--------+-------+----+--------+----------------------------------+
542 +--------+-------+----+--------+----------------------------------+
544 +--------+-------+----+--------+----------------------------------+
546 +--------+-------+----+--------+----------------------------------+
548 +--------+-------+----+--------+----------------------------------+
550 +--------+-------+----+--------+----------------------------------+
551 | 0x1054-| | | | Reserved |
553 +--------+-------+----+--------+----------------------------------+
555 +--------+-------+----+--------+----------------------------------+
557 +--------+-------+----+--------+----------------------------------+
559 +--------+-------+----+--------+----------------------------------+
561 +--------+-------+----+--------+----------------------------------+
563 +--------+-------+----+--------+----------------------------------+
565 +--------+-------+----+--------+----------------------------------+
567 +--------+-------+----+--------+----------------------------------+
568 | 0x2007-| 0x04 | RW | T | PMC 1-6 |
570 +--------+-------+----+--------+----------------------------------+
572 +--------+-------+----+--------+----------------------------------+
574 +--------+-------+----+--------+----------------------------------+
575 | 0x200F-| | | | Reserved |
577 +--------+-------+----+--------+----------------------------------+
578 | 0x3000-| 0x10 | RW | T | VSR 0-63 |
580 +--------+-------+----+--------+----------------------------------+
581 | 0x3040-| | | | Reserved |
583 +--------+-------+----+--------+----------------------------------+
585 +--------+-------+----+--------+----------------------------------+
587 +--------+-------+----+--------+----------------------------------+
589 +--------+-------+----+--------+----------------------------------+
591 +--------+-------+----+--------+----------------------------------+
598 --------------------------
609 ----------------------------------------