/* SPDX-License-Identifier: MIT */
/*
* Copyright © 2023 Intel Corporation
*/
#ifndef _ABI_GUC_ACTIONS_SRIOV_ABI_H
#define _ABI_GUC_ACTIONS_SRIOV_ABI_H
#include "guc_communication_ctb_abi.h"
/**
* DOC : GUC2PF_RELAY_FROM_VF
*
* This message is used by the GuC firmware to forward a VF2PF ` Relay Message ` _
* received from the Virtual Function ( VF ) driver to this Physical Function ( PF )
* driver .
*
* This message is always sent as ` CTB HXG Message ` _ .
*
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | Bits | Description |
* + = = = + = = = = = = = + = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = +
* | 0 | 31 | ORIGIN = GUC_HXG_ORIGIN_GUC_ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 30 : 28 | TYPE = GUC_HXG_TYPE_EVENT_ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 27 : 16 | MBZ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 15 : 0 | ACTION = _ ` XE_GUC_ACTION_GUC2PF_RELAY_FROM_VF ` = 0 x5100 |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | 1 | 31 : 0 | * * VFID * * - source VF identifier |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | 2 | 31 : 0 | * * RELAY_ID * * - VF / PF message ID |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | 3 | 31 : 0 | * * RELAY_DATA1 * * | |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - + |
* | . . . | | | [ Embedded ` Relay Message ` _ ] |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - + |
* | n | 31 : 0 | * * RELAY_DATAx * * | |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
*/
#define XE_GUC_ACTION_GUC2PF_RELAY_FROM_VF 0 x5100
#define GUC2PF_RELAY_FROM_VF_EVENT_MSG_MIN_LEN (GUC_HXG_EVENT_MSG_MIN_LEN + 2 u)
#define GUC2PF_RELAY_FROM_VF_EVENT_MSG_MAX_LEN \
(GUC2PF_RELAY_FROM_VF_EVENT_MSG_MIN_LEN + GUC_RELAY_MSG_MAX_LEN)
#define GUC2PF_RELAY_FROM_VF_EVENT_MSG_0_MBZ GUC_HXG_EVENT_MSG_0_DATA0
#define GUC2PF_RELAY_FROM_VF_EVENT_MSG_1_VFID GUC_HXG_EVENT_MSG_n_DATAn
#define GUC2PF_RELAY_FROM_VF_EVENT_MSG_2_RELAY_ID GUC_HXG_EVENT_MSG_n_DATAn
#define GUC2PF_RELAY_FROM_VF_EVENT_MSG_3_RELAY_DATA1 GUC_HXG_EVENT_MSG_n_DATAn
#define GUC2PF_RELAY_FROM_VF_EVENT_MSG_n_RELAY_DATAx GUC_HXG_EVENT_MSG_n_DATAn
#define GUC2PF_RELAY_FROM_VF_EVENT_MSG_NUM_RELAY_DATA GUC_RELAY_MSG_MAX_LEN
/**
* DOC : PF2GUC_RELAY_TO_VF
*
* This H2G message is used by the Physical Function ( PF ) driver to send embedded
* VF2PF ` Relay Message ` _ to the VF .
*
* This action message must be sent over CTB as ` CTB HXG Message ` _ .
*
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | Bits | Description |
* + = = = + = = = = = = = + = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = +
* | 0 | 31 | ORIGIN = GUC_HXG_ORIGIN_HOST_ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 30 : 28 | TYPE = ` GUC_HXG_TYPE_FAST_REQUEST ` _ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 27 : 16 | MBZ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 15 : 0 | ACTION = _ ` XE_GUC_ACTION_PF2GUC_RELAY_TO_VF ` = 0 x5101 |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | 1 | 31 : 0 | * * VFID * * - target VF identifier |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | 2 | 31 : 0 | * * RELAY_ID * * - VF / PF message ID |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | 3 | 31 : 0 | * * RELAY_DATA1 * * | |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - + |
* | . . . | | | [ Embedded ` Relay Message ` _ ] |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - + |
* | n | 31 : 0 | * * RELAY_DATAx * * | |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
*/
#define XE_GUC_ACTION_PF2GUC_RELAY_TO_VF 0 x5101
#define PF2GUC_RELAY_TO_VF_REQUEST_MSG_MIN_LEN (GUC_HXG_REQUEST_MSG_MIN_LEN + 2 u)
#define PF2GUC_RELAY_TO_VF_REQUEST_MSG_MAX_LEN \
(PF2GUC_RELAY_TO_VF_REQUEST_MSG_MIN_LEN + GUC_RELAY_MSG_MAX_LEN)
#define PF2GUC_RELAY_TO_VF_REQUEST_MSG_0_MBZ GUC_HXG_REQUEST_MSG_0_DATA0
#define PF2GUC_RELAY_TO_VF_REQUEST_MSG_1_VFID GUC_HXG_REQUEST_MSG_n_DATAn
#define PF2GUC_RELAY_TO_VF_REQUEST_MSG_2_RELAY_ID GUC_HXG_REQUEST_MSG_n_DATAn
#define PF2GUC_RELAY_TO_VF_REQUEST_MSG_3_RELAY_DATA1 GUC_HXG_REQUEST_MSG_n_DATAn
#define PF2GUC_RELAY_TO_VF_REQUEST_MSG_n_RELAY_DATAx GUC_HXG_REQUEST_MSG_n_DATAn
#define PF2GUC_RELAY_TO_VF_REQUEST_MSG_NUM_RELAY_DATA GUC_RELAY_MSG_MAX_LEN
/**
* DOC : GUC2VF_RELAY_FROM_PF
*
* This message is used by the GuC firmware to deliver ` Relay Message ` _ from the
* Physical Function ( PF ) driver to this Virtual Function ( VF ) driver .
* See ` GuC Relay Communication ` _ for details .
*
* This message is always sent over CTB .
*
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | Bits | Description |
* + = = = + = = = = = = = + = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = +
* | 0 | 31 | ORIGIN = GUC_HXG_ORIGIN_GUC_ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 30 : 28 | TYPE = GUC_HXG_TYPE_EVENT_ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 27 : 16 | MBZ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 15 : 0 | ACTION = _ ` XE_GUC_ACTION_GUC2VF_RELAY_FROM_PF ` = 0 x5102 |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | 1 | 31 : 0 | * * RELAY_ID * * - VF / PF message ID |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | 2 | 31 : 0 | * * RELAY_DATA1 * * | |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - + |
* | . . . | | | [ Embedded ` Relay Message ` _ ] |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - + |
* | n | 31 : 0 | * * RELAY_DATAx * * | |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
*/
#define XE_GUC_ACTION_GUC2VF_RELAY_FROM_PF 0 x5102
#define GUC2VF_RELAY_FROM_PF_EVENT_MSG_MIN_LEN (GUC_HXG_EVENT_MSG_MIN_LEN + 1 u)
#define GUC2VF_RELAY_FROM_PF_EVENT_MSG_MAX_LEN \
(GUC2VF_RELAY_FROM_PF_EVENT_MSG_MIN_LEN + GUC_RELAY_MSG_MAX_LEN)
#define GUC2VF_RELAY_FROM_PF_EVENT_MSG_0_MBZ GUC_HXG_EVENT_MSG_0_DATA0
#define GUC2VF_RELAY_FROM_PF_EVENT_MSG_1_RELAY_ID GUC_HXG_EVENT_MSG_n_DATAn
#define GUC2VF_RELAY_FROM_PF_EVENT_MSG_n_RELAY_DATAx GUC_HXG_EVENT_MSG_n_DATAn
#define GUC2VF_RELAY_FROM_PF_EVENT_MSG_NUM_RELAY_DATA GUC_RELAY_MSG_MAX_LEN
/**
* DOC : VF2GUC_RELAY_TO_PF
*
* This message is used by the Virtual Function ( VF ) drivers to communicate with
* the Physical Function ( PF ) driver and send ` Relay Message ` _ to the PF driver .
* See ` GuC Relay Communication ` _ for details .
*
* This message must be sent over CTB .
*
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | Bits | Description |
* + = = = + = = = = = = = + = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = +
* | 0 | 31 | ORIGIN = GUC_HXG_ORIGIN_HOST_ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 30 : 28 | TYPE = GUC_HXG_TYPE_REQUEST_ or GUC_HXG_TYPE_FAST_REQUEST_ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 27 : 16 | MBZ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 15 : 0 | ACTION = _ ` XE_GUC_ACTION_VF2GUC_RELAY_TO_PF ` = 0 x5103 |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | 1 | 31 : 0 | * * RELAY_ID * * - VF / PF message ID |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | 2 | 31 : 0 | * * RELAY_DATA1 * * | |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - + |
* | . . . | | | [ Embedded ` Relay Message ` _ ] |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - + |
* | n | 31 : 0 | * * RELAY_DATAx * * | |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
*/
#define XE_GUC_ACTION_VF2GUC_RELAY_TO_PF 0 x5103
#define VF2GUC_RELAY_TO_PF_REQUEST_MSG_MIN_LEN (GUC_HXG_REQUEST_MSG_MIN_LEN + 1 u)
#define VF2GUC_RELAY_TO_PF_REQUEST_MSG_MAX_LEN \
(VF2GUC_RELAY_TO_PF_REQUEST_MSG_MIN_LEN + GUC_RELAY_MSG_MAX_LEN)
#define VF2GUC_RELAY_TO_PF_REQUEST_MSG_0_MBZ GUC_HXG_REQUEST_MSG_0_DATA0
#define VF2GUC_RELAY_TO_PF_REQUEST_MSG_1_RELAY_ID GUC_HXG_REQUEST_MSG_n_DATAn
#define VF2GUC_RELAY_TO_PF_REQUEST_MSG_n_RELAY_DATAx GUC_HXG_REQUEST_MSG_n_DATAn
#define VF2GUC_RELAY_TO_PF_REQUEST_MSG_NUM_RELAY_DATA GUC_RELAY_MSG_MAX_LEN
/**
* DOC : GUC2PF_ADVERSE_EVENT
*
* This message is used by the GuC to notify PF about adverse events .
*
* This G2H message must be sent as ` CTB HXG Message ` _ .
*
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | Bits | Description |
* + = = = + = = = = = = = + = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = +
* | 0 | 31 | ORIGIN = GUC_HXG_ORIGIN_GUC_ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 30 : 28 | TYPE = GUC_HXG_TYPE_EVENT_ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 27 : 16 | DATA0 = MBZ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 15 : 0 | ACTION = _ ` GUC_ACTION_GUC2PF_ADVERSE_EVENT ` = 0 x5104 |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | 1 | 31 : 0 | DATA1 = * * VFID * * - VF identifier |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | 2 | 31 : 0 | DATA2 = * * THRESHOLD * * - key of the exceeded threshold |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
*/
#define GUC_ACTION_GUC2PF_ADVERSE_EVENT 0 x5104
#define GUC2PF_ADVERSE_EVENT_EVENT_MSG_LEN (GUC_HXG_EVENT_MSG_MIN_LEN + 2 u)
#define GUC2PF_ADVERSE_EVENT_EVENT_MSG_0_MBZ GUC_HXG_EVENT_MSG_0_DATA0
#define GUC2PF_ADVERSE_EVENT_EVENT_MSG_1_VFID GUC_HXG_EVENT_MSG_n_DATAn
#define GUC2PF_ADVERSE_EVENT_EVENT_MSG_2_THRESHOLD GUC_HXG_EVENT_MSG_n_DATAn
/**
* DOC : GUC2PF_VF_STATE_NOTIFY
*
* The GUC2PF_VF_STATE_NOTIFY message is used by the GuC to notify PF about change
* of the VF state .
*
* This G2H message is sent as ` CTB HXG Message ` _ .
*
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | Bits | Description |
* + = = = + = = = = = = = + = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = +
* | 0 | 31 | ORIGIN = GUC_HXG_ORIGIN_GUC_ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 30 : 28 | TYPE = GUC_HXG_TYPE_EVENT_ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 27 : 16 | DATA0 = MBZ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 15 : 0 | ACTION = _ ` GUC_ACTION_GUC2PF_VF_STATE_NOTIFY ` = 0 x5106 |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | 1 | 31 : 0 | DATA1 = * * VFID * * - VF identifier |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | 2 | 31 : 0 | DATA2 = * * EVENT * * - notification event : |
* | | | |
* | | | - _ ` GUC_PF_NOTIFY_VF_ENABLE ` = 1 ( only if VFID = 0 ) |
* | | | - _ ` GUC_PF_NOTIFY_VF_FLR ` = 1 |
* | | | - _ ` GUC_PF_NOTIFY_VF_FLR_DONE ` = 2 |
* | | | - _ ` GUC_PF_NOTIFY_VF_PAUSE_DONE ` = 3 |
* | | | - _ ` GUC_PF_NOTIFY_VF_FIXUP_DONE ` = 4 |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
*/
#define GUC_ACTION_GUC2PF_VF_STATE_NOTIFY 0 x5106u
#define GUC2PF_VF_STATE_NOTIFY_EVENT_MSG_LEN (GUC_HXG_EVENT_MSG_MIN_LEN + 2 u)
#define GUC2PF_VF_STATE_NOTIFY_EVENT_MSG_0_MBZ GUC_HXG_EVENT_MSG_0_DATA0
#define GUC2PF_VF_STATE_NOTIFY_EVENT_MSG_1_VFID GUC_HXG_EVENT_MSG_n_DATAn
#define GUC2PF_VF_STATE_NOTIFY_EVENT_MSG_2_EVENT GUC_HXG_EVENT_MSG_n_DATAn
#define GUC_PF_NOTIFY_VF_ENABLE 1 u
#define GUC_PF_NOTIFY_VF_FLR 1 u
#define GUC_PF_NOTIFY_VF_FLR_DONE 2 u
#define GUC_PF_NOTIFY_VF_PAUSE_DONE 3 u
#define GUC_PF_NOTIFY_VF_FIXUP_DONE 4 u
/**
* DOC : VF2GUC_MATCH_VERSION
*
* This action is used to match VF interface version used by VF and GuC .
*
* This message must be sent as ` MMIO HXG Message ` _ .
*
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | Bits | Description |
* + = = = + = = = = = = = + = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = +
* | 0 | 31 | ORIGIN = GUC_HXG_ORIGIN_HOST_ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 30 : 28 | TYPE = GUC_HXG_TYPE_REQUEST_ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 27 : 16 | DATA0 = MBZ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 15 : 0 | ACTION = _ ` GUC_ACTION_VF2GUC_MATCH_VERSION ` = 0 x5500 |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | 1 | 31 : 24 | * * BRANCH * * - branch ID of the VF interface |
* | | | ( use BRANCH_ANY to request latest version supported by GuC ) |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 23 : 16 | * * MAJOR * * - major version of the VF interface |
* | | | ( use MAJOR_ANY to request latest version supported by GuC ) |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 15 : 8 | * * MINOR * * - minor version of the VF interface |
* | | | ( use MINOR_ANY to request latest version supported by GuC ) |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 7 : 0 | * * MBZ * * |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
*
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | Bits | Description |
* + = = = + = = = = = = = + = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = +
* | 0 | 31 | ORIGIN = GUC_HXG_ORIGIN_GUC_ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 30 : 28 | TYPE = GUC_HXG_TYPE_RESPONSE_SUCCESS_ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 27 : 0 | DATA0 = MBZ |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | 1 | 31 : 24 | * * BRANCH * * - branch ID of the VF interface |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 23 : 16 | * * MAJOR * * - major version of the VF interface |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 15 : 8 | * * MINOR * * - minor version of the VF interface |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 7 : 0 | * * PATCH * * - patch version of the VF interface |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
*/
#define GUC_ACTION_VF2GUC_MATCH_VERSION 0 x5500u
#define VF2GUC_MATCH_VERSION_REQUEST_MSG_LEN (GUC_HXG_REQUEST_MSG_MIN_LEN + 1 u)
#define VF2GUC_MATCH_VERSION_REQUEST_MSG_0_MBZ GUC_HXG_REQUEST_MSG_0_DATA0
#define VF2GUC_MATCH_VERSION_REQUEST_MSG_1_BRANCH (0 xffu << 24 )
#define GUC_VERSION_BRANCH_ANY 0
#define VF2GUC_MATCH_VERSION_REQUEST_MSG_1_MAJOR (0 xffu << 16 )
#define GUC_VERSION_MAJOR_ANY 0
#define VF2GUC_MATCH_VERSION_REQUEST_MSG_1_MINOR (0 xffu << 8 )
#define GUC_VERSION_MINOR_ANY 0
#define VF2GUC_MATCH_VERSION_REQUEST_MSG_1_MBZ (0 xffu << 0 )
#define VF2GUC_MATCH_VERSION_RESPONSE_MSG_LEN (GUC_HXG_RESPONSE_MSG_MIN_LEN + 1 u)
#define VF2GUC_MATCH_VERSION_RESPONSE_MSG_0_MBZ GUC_HXG_RESPONSE_MSG_0_DATA0
#define VF2GUC_MATCH_VERSION_RESPONSE_MSG_1_BRANCH (0 xffu << 24 )
#define VF2GUC_MATCH_VERSION_RESPONSE_MSG_1_MAJOR (0 xffu << 16 )
#define VF2GUC_MATCH_VERSION_RESPONSE_MSG_1_MINOR (0 xffu << 8 )
#define VF2GUC_MATCH_VERSION_RESPONSE_MSG_1_PATCH (0 xffu << 0 )
/**
* DOC : PF2GUC_UPDATE_VGT_POLICY
*
* This message is used by the PF to set ` GuC VGT Policy KLVs ` _ .
*
* This message must be sent as ` CTB HXG Message ` _ .
*
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | Bits | Description |
* + = = = + = = = = = = = + = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = +
* | 0 | 31 | ORIGIN = GUC_HXG_ORIGIN_HOST_ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 30 : 28 | TYPE = GUC_HXG_TYPE_REQUEST_ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 27 : 16 | MBZ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 15 : 0 | ACTION = _ ` GUC_ACTION_PF2GUC_UPDATE_VGT_POLICY ` = 0 x5502 |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | 1 | 31 : 0 | * * CFG_ADDR_LO * * - dword aligned GGTT offset that |
* | | | represents the start of ` GuC VGT Policy KLVs ` _ list . |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | 2 | 31 : 0 | * * CFG_ADDR_HI * * - upper 32 bits of above offset . |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | 3 | 31 : 0 | * * CFG_SIZE * * - size ( in dwords ) of the config buffer |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
*
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | Bits | Description |
* + = = = + = = = = = = = + = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = +
* | 0 | 31 | ORIGIN = GUC_HXG_ORIGIN_GUC_ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 30 : 28 | TYPE = GUC_HXG_TYPE_RESPONSE_SUCCESS_ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 27 : 0 | * * COUNT * * - number of KLVs successfully applied |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* /
# define GUC_ACTION_PF2GUC_UPDATE_VGT_POLICY 0 x5502u
# define PF2GUC_UPDATE_VGT_POLICY_REQUEST_MSG_LEN ( GUC_HXG_REQUEST_MSG_MIN_LEN + 3 u )
# define PF2GUC_UPDATE_VGT_POLICY_REQUEST_MSG_0_MBZ GUC_HXG_REQUEST_MSG_0_DATA0
# define PF2GUC_UPDATE_VGT_POLICY_REQUEST_MSG_1_CFG_ADDR_LO GUC_HXG_REQUEST_MSG_n_DATAn
# define PF2GUC_UPDATE_VGT_POLICY_REQUEST_MSG_2_CFG_ADDR_HI GUC_HXG_REQUEST_MSG_n_DATAn
# define PF2GUC_UPDATE_VGT_POLICY_REQUEST_MSG_3_CFG_SIZE GUC_HXG_REQUEST_MSG_n_DATAn
# define PF2GUC_UPDATE_VGT_POLICY_RESPONSE_MSG_LEN GUC_HXG_RESPONSE_MSG_MIN_LEN
# define PF2GUC_UPDATE_VGT_POLICY_RESPONSE_MSG_0_COUNT GUC_HXG_RESPONSE_MSG_0_DATA0
/ * *
* DOC : PF2GUC_UPDATE_VF_CFG
*
* The ` PF2GUC_UPDATE_VF_CFG ` _ message is used by PF to provision single VF in GuC .
*
* This message must be sent as ` CTB HXG Message ` _ .
*
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | Bits | Description |
* + = = = + = = = = = = = + = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = +
* | 0 | 31 | ORIGIN = GUC_HXG_ORIGIN_HOST_ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 30 : 28 | TYPE = GUC_HXG_TYPE_REQUEST_ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 27 : 16 | MBZ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 15 : 0 | ACTION = _ ` GUC_ACTION_PF2GUC_UPDATE_VF_CFG ` = 0 x5503 |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | 1 | 31 : 0 | * * VFID * * - identifier of the VF that the KLV |
* | | | configurations are being applied to |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | 2 | 31 : 0 | * * CFG_ADDR_LO * * - dword aligned GGTT offset that represents |
* | | | the start of a list of virtualization related KLV configs |
* | | | that are to be applied to the VF . |
* | | | If this parameter is zero , the list is not parsed . |
* | | | If full configs address parameter is zero and configs_size is |
* | | | zero associated VF config shall be reset to its default state |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | 3 | 31 : 0 | * * CFG_ADDR_HI * * - upper 32 bits of configs address . |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | 4 | 31 : 0 | * * CFG_SIZE * * - size ( in dwords ) of the config buffer |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
*
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | Bits | Description |
* + = = = + = = = = = = = + = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = +
* | 0 | 31 | ORIGIN = GUC_HXG_ORIGIN_GUC_ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 30 : 28 | TYPE = GUC_HXG_TYPE_RESPONSE_SUCCESS_ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 27 : 0 | * * COUNT * * - number of KLVs successfully applied |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* /
# define GUC_ACTION_PF2GUC_UPDATE_VF_CFG 0 x5503u
# define PF2GUC_UPDATE_VF_CFG_REQUEST_MSG_LEN ( GUC_HXG_REQUEST_MSG_MIN_LEN + 4 u )
# define PF2GUC_UPDATE_VF_CFG_REQUEST_MSG_0_MBZ GUC_HXG_REQUEST_MSG_0_DATA0
# define PF2GUC_UPDATE_VF_CFG_REQUEST_MSG_1_VFID GUC_HXG_REQUEST_MSG_n_DATAn
# define PF2GUC_UPDATE_VF_CFG_REQUEST_MSG_2_CFG_ADDR_LO GUC_HXG_REQUEST_MSG_n_DATAn
# define PF2GUC_UPDATE_VF_CFG_REQUEST_MSG_3_CFG_ADDR_HI GUC_HXG_REQUEST_MSG_n_DATAn
# define PF2GUC_UPDATE_VF_CFG_REQUEST_MSG_4_CFG_SIZE GUC_HXG_REQUEST_MSG_n_DATAn
# define PF2GUC_UPDATE_VF_CFG_RESPONSE_MSG_LEN GUC_HXG_RESPONSE_MSG_MIN_LEN
# define PF2GUC_UPDATE_VF_CFG_RESPONSE_MSG_0_COUNT GUC_HXG_RESPONSE_MSG_0_DATA0
/ * *
* DOC : PF2GUC_VF_CONTROL
*
* The PF2GUC_VF_CONTROL message is used by the PF to trigger VF state change
* maintained by the GuC .
*
* This H2G message must be sent as ` CTB HXG Message ` _ .
*
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | Bits | Description |
* + = = = + = = = = = = = + = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = +
* | 0 | 31 | ORIGIN = GUC_HXG_ORIGIN_HOST_ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 30 : 28 | TYPE = GUC_HXG_TYPE_REQUEST_ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 27 : 16 | DATA0 = MBZ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 15 : 0 | ACTION = _ ` GUC_ACTION_PF2GUC_VF_CONTROL_CMD ` = 0 x5506 |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | 1 | 31 : 0 | DATA1 = * * VFID * * - VF identifier |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | 2 | 31 : 0 | DATA2 = * * COMMAND * * - control command : |
* | | | |
* | | | - _ ` GUC_PF_TRIGGER_VF_PAUSE ` = 1 |
* | | | - _ ` GUC_PF_TRIGGER_VF_RESUME ` = 2 |
* | | | - _ ` GUC_PF_TRIGGER_VF_STOP ` = 3 |
* | | | - _ ` GUC_PF_TRIGGER_VF_FLR_START ` = 4 |
* | | | - _ ` GUC_PF_TRIGGER_VF_FLR_FINISH ` = 5 |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
*
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | Bits | Description |
* + = = = + = = = = = = = + = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = +
* | 0 | 31 | ORIGIN = GUC_HXG_ORIGIN_GUC_ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 30 : 28 | TYPE = GUC_HXG_TYPE_RESPONSE_SUCCESS_ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 27 : 0 | DATA0 = MBZ |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* /
# define GUC_ACTION_PF2GUC_VF_CONTROL 0 x5506u
# define PF2GUC_VF_CONTROL_REQUEST_MSG_LEN ( GUC_HXG_EVENT_MSG_MIN_LEN + 2 u )
# define PF2GUC_VF_CONTROL_REQUEST_MSG_0_MBZ GUC_HXG_EVENT_MSG_0_DATA0
# define PF2GUC_VF_CONTROL_REQUEST_MSG_1_VFID GUC_HXG_EVENT_MSG_n_DATAn
# define PF2GUC_VF_CONTROL_REQUEST_MSG_2_COMMAND GUC_HXG_EVENT_MSG_n_DATAn
# define GUC_PF_TRIGGER_VF_PAUSE 1 u
# define GUC_PF_TRIGGER_VF_RESUME 2 u
# define GUC_PF_TRIGGER_VF_STOP 3 u
# define GUC_PF_TRIGGER_VF_FLR_START 4 u
# define GUC_PF_TRIGGER_VF_FLR_FINISH 5 u
/ * *
* DOC : VF2GUC_VF_RESET
*
* This action is used by VF to reset GuC ' s VF state .
*
* This message must be sent as ` MMIO HXG Message ` _ .
*
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | Bits | Description |
* + = = = + = = = = = = = + = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = +
* | 0 | 31 | ORIGIN = GUC_HXG_ORIGIN_HOST_ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 30 : 28 | TYPE = GUC_HXG_TYPE_REQUEST_ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 27 : 16 | DATA0 = MBZ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 15 : 0 | ACTION = _ ` GUC_ACTION_VF2GUC_VF_RESET ` = 0 x5507 |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
*
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | Bits | Description |
* + = = = + = = = = = = = + = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = +
* | 0 | 31 | ORIGIN = GUC_HXG_ORIGIN_GUC_ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 30 : 28 | TYPE = GUC_HXG_TYPE_RESPONSE_SUCCESS_ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 27 : 0 | DATA0 = MBZ |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* /
# define GUC_ACTION_VF2GUC_VF_RESET 0 x5507u
# define VF2GUC_VF_RESET_REQUEST_MSG_LEN GUC_HXG_REQUEST_MSG_MIN_LEN
# define VF2GUC_VF_RESET_REQUEST_MSG_0_MBZ GUC_HXG_REQUEST_MSG_0_DATA0
# define VF2GUC_VF_RESET_RESPONSE_MSG_LEN GUC_HXG_RESPONSE_MSG_MIN_LEN
# define VF2GUC_VF_RESET_RESPONSE_MSG_0_MBZ GUC_HXG_RESPONSE_MSG_0_DATA0
/ * *
* DOC : VF2GUC_NOTIFY_RESFIX_DONE
*
* This action is used by VF to notify the GuC that the VF KMD has completed
* post - migration recovery steps .
*
* This message must be sent as ` MMIO HXG Message ` _ .
*
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | Bits | Description |
* + = = = + = = = = = = = + = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = +
* | 0 | 31 | ORIGIN = GUC_HXG_ORIGIN_HOST_ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 30 : 28 | TYPE = GUC_HXG_TYPE_REQUEST_ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 27 : 16 | DATA0 = MBZ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 15 : 0 | ACTION = _ ` GUC_ACTION_VF2GUC_NOTIFY_RESFIX_DONE ` = 0 x5508 |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
*
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | Bits | Description |
* + = = = + = = = = = = = + = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = +
* | 0 | 31 | ORIGIN = GUC_HXG_ORIGIN_GUC_ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 30 : 28 | TYPE = GUC_HXG_TYPE_RESPONSE_SUCCESS_ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 27 : 0 | DATA0 = MBZ |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* /
# define GUC_ACTION_VF2GUC_NOTIFY_RESFIX_DONE 0 x5508u
# define VF2GUC_NOTIFY_RESFIX_DONE_REQUEST_MSG_LEN GUC_HXG_REQUEST_MSG_MIN_LEN
# define VF2GUC_NOTIFY_RESFIX_DONE_REQUEST_MSG_0_MBZ GUC_HXG_REQUEST_MSG_0_DATA0
# define VF2GUC_NOTIFY_RESFIX_DONE_RESPONSE_MSG_LEN GUC_HXG_RESPONSE_MSG_MIN_LEN
# define VF2GUC_NOTIFY_RESFIX_DONE_RESPONSE_MSG_0_MBZ GUC_HXG_RESPONSE_MSG_0_DATA0
/ * *
* DOC : VF2GUC_QUERY_SINGLE_KLV
*
* This action is used by VF to query value of the single KLV data .
*
* This message must be sent as ` MMIO HXG Message ` _ .
*
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | Bits | Description |
* + = = = + = = = = = = = + = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = +
* | 0 | 31 | ORIGIN = GUC_HXG_ORIGIN_HOST_ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 30 : 28 | TYPE = GUC_HXG_TYPE_REQUEST_ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 27 : 16 | MBZ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 15 : 0 | ACTION = _ ` GUC_ACTION_VF2GUC_QUERY_SINGLE_KLV ` = 0 x5509 |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | 1 | 31 : 16 | MBZ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 15 : 0 | * * KEY * * - key for which value is requested |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
*
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | Bits | Description |
* + = = = + = = = = = = = + = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = +
* | 0 | 31 | ORIGIN = GUC_HXG_ORIGIN_GUC_ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 30 : 28 | TYPE = GUC_HXG_TYPE_RESPONSE_SUCCESS_ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 27 : 16 | MBZ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 15 : 0 | * * LENGTH * * - length of data in dwords |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | 1 | 31 : 0 | * * VALUE32 * * - bits 31 : 0 of value if * * LENGTH * * > = 1 |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | 2 | 31 : 0 | * * VALUE64 * * - bits 63 : 32 of value if * * LENGTH * * > = 2 |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | 3 | 31 : 0 | * * VALUE96 * * - bits 95 : 64 of value if * * LENGTH * * > = 3 |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* /
# define GUC_ACTION_VF2GUC_QUERY_SINGLE_KLV 0 x5509u
# define VF2GUC_QUERY_SINGLE_KLV_REQUEST_MSG_LEN ( GUC_HXG_REQUEST_MSG_MIN_LEN + 1 u )
# define VF2GUC_QUERY_SINGLE_KLV_REQUEST_MSG_0_MBZ GUC_HXG_REQUEST_MSG_0_DATA0
# define VF2GUC_QUERY_SINGLE_KLV_REQUEST_MSG_1_MBZ ( 0 xffffu < < 16 )
# define VF2GUC_QUERY_SINGLE_KLV_REQUEST_MSG_1_KEY ( 0 xffffu < < 0 )
# define VF2GUC_QUERY_SINGLE_KLV_RESPONSE_MSG_MIN_LEN GUC_HXG_RESPONSE_MSG_MIN_LEN
# define VF2GUC_QUERY_SINGLE_KLV_RESPONSE_MSG_MAX_LEN ( GUC_HXG_RESPONSE_MSG_MIN_LEN + 3 u )
# define VF2GUC_QUERY_SINGLE_KLV_RESPONSE_MSG_0_MBZ ( 0 xfffu < < 16 )
# define VF2GUC_QUERY_SINGLE_KLV_RESPONSE_MSG_0_LENGTH ( 0 xffffu < < 0 )
# define VF2GUC_QUERY_SINGLE_KLV_RESPONSE_MSG_1_VALUE32 GUC_HXG_REQUEST_MSG_n_DATAn
# define VF2GUC_QUERY_SINGLE_KLV_RESPONSE_MSG_2_VALUE64 GUC_HXG_REQUEST_MSG_n_DATAn
# define VF2GUC_QUERY_SINGLE_KLV_RESPONSE_MSG_3_VALUE96 GUC_HXG_REQUEST_MSG_n_DATAn
/ * *
* DOC : PF2GUC_SAVE_RESTORE_VF
*
* This message is used by the PF to migrate VF info state maintained by the GuC .
*
* This message must be sent as ` CTB HXG Message ` _ .
*
* Available since GuC version 70 . 25 . 0
*
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | Bits | Description |
* + = = = + = = = = = = = + = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = +
* | 0 | 31 | ORIGIN = GUC_HXG_ORIGIN_HOST_ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 30 : 28 | TYPE = GUC_HXG_TYPE_REQUEST_ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 27 : 16 | DATA0 = * * OPCODE * * - operation to take : |
* | | | |
* | | | - _ ` GUC_PF_OPCODE_VF_SAVE ` = 0 |
* | | | - _ ` GUC_PF_OPCODE_VF_RESTORE ` = 1 |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 15 : 0 | ACTION = _ ` GUC_ACTION_PF2GUC_SAVE_RESTORE_VF ` = 0 x550B |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | 1 | 31 : 0 | * * VFID * * - VF identifier |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | 2 | 31 : 0 | * * ADDR_LO * * - lower 32 - bits of GGTT offset to the buffer |
* | | | where the VF info will be save to or restored from . |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | 3 | 31 : 0 | * * ADDR_HI * * - upper 32 - bits of GGTT offset to the buffer |
* | | | where the VF info will be save to or restored from . |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | 4 | 27 : 0 | * * SIZE * * - size of the buffer ( in dwords ) |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 31 : 28 | MBZ |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
*
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | Bits | Description |
* + = = = + = = = = = = = + = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = +
* | 0 | 31 | ORIGIN = GUC_HXG_ORIGIN_GUC_ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 30 : 28 | TYPE = GUC_HXG_TYPE_RESPONSE_SUCCESS_ |
* | + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* | | 27 : 0 | DATA0 = * * USED * * - size of used buffer space ( in dwords ) |
* + - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
* /
# define GUC_ACTION_PF2GUC_SAVE_RESTORE_VF 0 x550Bu
# define PF2GUC_SAVE_RESTORE_VF_REQUEST_MSG_LEN ( GUC_HXG_EVENT_MSG_MIN_LEN + 4 u )
# define PF2GUC_SAVE_RESTORE_VF_REQUEST_MSG_0_OPCODE GUC_HXG_EVENT_MSG_0_DATA0
# define GUC_PF_OPCODE_VF_SAVE 0 u
# define GUC_PF_OPCODE_VF_RESTORE 1 u
# define PF2GUC_SAVE_RESTORE_VF_REQUEST_MSG_1_VFID GUC_HXG_EVENT_MSG_n_DATAn
# define PF2GUC_SAVE_RESTORE_VF_REQUEST_MSG_2_ADDR_LO GUC_HXG_EVENT_MSG_n_DATAn
# define PF2GUC_SAVE_RESTORE_VF_REQUEST_MSG_3_ADDR_HI GUC_HXG_EVENT_MSG_n_DATAn
# define PF2GUC_SAVE_RESTORE_VF_REQUEST_MSG_4_SIZE ( 0 xfffffffu < < 0 )
# define PF2GUC_SAVE_RESTORE_VF_REQUEST_MSG_4_MBZ ( 0 xfu < < 28 )
# define PF2GUC_SAVE_RESTORE_VF_RESPONSE_MSG_LEN GUC_HXG_RESPONSE_MSG_MIN_LEN
# define PF2GUC_SAVE_RESTORE_VF_RESPONSE_MSG_0_USED GUC_HXG_RESPONSE_MSG_0_DATA0
# endif
Messung V0.5 in Prozent C=100 H=100 G=100
¤ Dauer der Verarbeitung: 0.109 Sekunden
¤
*© Formatika GbR, Deutschland