We no longer need to maintain some of the GuC ABI definitions
inside the i915 driver as the shared one are exactly the same.

Signed-off-by: Michal Wajdeczko <[email protected]>
---
 drivers/gpu/drm/i915/Makefile                 |   5 +
 .../gt/uc/abi/guc_communication_ctb_abi.h     | 170 -----------
 .../gt/uc/abi/guc_communication_mmio_abi.h    |  49 ----
 drivers/gpu/drm/i915/gt/uc/abi/guc_klvs_abi.h | 112 --------
 .../gpu/drm/i915/gt/uc/abi/guc_messages_abi.h | 264 ------------------
 5 files changed, 5 insertions(+), 595 deletions(-)
 delete mode 100644 drivers/gpu/drm/i915/gt/uc/abi/guc_communication_ctb_abi.h
 delete mode 100644 drivers/gpu/drm/i915/gt/uc/abi/guc_communication_mmio_abi.h
 delete mode 100644 drivers/gpu/drm/i915/gt/uc/abi/guc_klvs_abi.h
 delete mode 100644 drivers/gpu/drm/i915/gt/uc/abi/guc_messages_abi.h

diff --git a/drivers/gpu/drm/i915/Makefile b/drivers/gpu/drm/i915/Makefile
index 4022e4499382..7702ad1f59fc 100644
--- a/drivers/gpu/drm/i915/Makefile
+++ b/drivers/gpu/drm/i915/Makefile
@@ -15,6 +15,11 @@ subdir-ccflags-y += -DI915
 
 subdir-ccflags-y += -I$(src)
 
+# Shared ABI definitions
+subdir-ccflags-y += \
+       -I$(srctree)/drivers/gpu/drm/intel/guc/ \
+       -I$(srctree)/drivers/gpu/drm/intel/guc/abi
+
 # Please keep these build lists sorted!
 
 # core driver code
diff --git a/drivers/gpu/drm/i915/gt/uc/abi/guc_communication_ctb_abi.h 
b/drivers/gpu/drm/i915/gt/uc/abi/guc_communication_ctb_abi.h
deleted file mode 100644
index f7d70db16d76..000000000000
--- a/drivers/gpu/drm/i915/gt/uc/abi/guc_communication_ctb_abi.h
+++ /dev/null
@@ -1,170 +0,0 @@
-/* SPDX-License-Identifier: MIT */
-/*
- * Copyright © 2014-2021 Intel Corporation
- */
-
-#ifndef _ABI_GUC_COMMUNICATION_CTB_ABI_H
-#define _ABI_GUC_COMMUNICATION_CTB_ABI_H
-
-#include <linux/types.h>
-#include <linux/build_bug.h>
-
-#include "guc_messages_abi.h"
-
-/**
- * DOC: CT Buffer
- *
- * Circular buffer used to send `CTB Message`_
- */
-
-/**
- * DOC: CTB Descriptor
- *
- *  
+---+-------+--------------------------------------------------------------+
- *  |   | Bits  | Description                                                  
|
- *  
+===+=======+==============================================================+
- *  | 0 |  31:0 | **HEAD** - offset (in dwords) to the last dword that was     
|
- *  |   |       | read from the `CT Buffer`_.                                  
|
- *  |   |       | It can only be updated by the receiver.                      
|
- *  
+---+-------+--------------------------------------------------------------+
- *  | 1 |  31:0 | **TAIL** - offset (in dwords) to the last dword that was     
|
- *  |   |       | written to the `CT Buffer`_.                                 
|
- *  |   |       | It can only be updated by the sender.                        
|
- *  
+---+-------+--------------------------------------------------------------+
- *  | 2 |  31:0 | **STATUS** - status of the CTB                               
|
- *  |   |       |                                                              
|
- *  |   |       |   - _`GUC_CTB_STATUS_NO_ERROR` = 0 (normal operation)        
|
- *  |   |       |   - _`GUC_CTB_STATUS_OVERFLOW` = 1 (head/tail too large)     
|
- *  |   |       |   - _`GUC_CTB_STATUS_UNDERFLOW` = 2 (truncated message)      
|
- *  |   |       |   - _`GUC_CTB_STATUS_MISMATCH` = 4 (head/tail modified)      
|
- *  |   |       |   - _`GUC_CTB_STATUS_UNUSED` = 8 (CTB is not in use)         
|
- *  
+---+-------+--------------------------------------------------------------+
- *  |...|       | RESERVED = MBZ                                               
|
- *  
+---+-------+--------------------------------------------------------------+
- *  | 15|  31:0 | RESERVED = MBZ                                               
|
- *  
+---+-------+--------------------------------------------------------------+
- */
-
-struct guc_ct_buffer_desc {
-       u32 head;
-       u32 tail;
-       u32 status;
-#define GUC_CTB_STATUS_NO_ERROR                                0
-#define GUC_CTB_STATUS_OVERFLOW                                BIT(0)
-#define GUC_CTB_STATUS_UNDERFLOW                       BIT(1)
-#define GUC_CTB_STATUS_MISMATCH                                BIT(2)
-#define GUC_CTB_STATUS_UNUSED                          BIT(3)
-       u32 reserved[13];
-} __packed;
-static_assert(sizeof(struct guc_ct_buffer_desc) == 64);
-
-/**
- * DOC: CTB Message
- *
- *  
+---+-------+--------------------------------------------------------------+
- *  |   | Bits  | Description                                                  
|
- *  
+===+=======+==============================================================+
- *  | 0 | 31:16 | **FENCE** - message identifier                               
|
- *  |   
+-------+--------------------------------------------------------------+
- *  |   | 15:12 | **FORMAT** - format of the CTB message                       
|
- *  |   |       |  - _`GUC_CTB_FORMAT_HXG` = 0 - see `CTB HXG Message`_        
|
- *  |   
+-------+--------------------------------------------------------------+
- *  |   |  11:8 | **RESERVED**                                                 
|
- *  |   
+-------+--------------------------------------------------------------+
- *  |   |   7:0 | **NUM_DWORDS** - length of the CTB message (w/o header)      
|
- *  
+---+-------+--------------------------------------------------------------+
- *  | 1 |  31:0 | optional (depends on FORMAT)                                 
|
- *  +---+-------+                                                              
|
- *  |...|       |                                                              
|
- *  +---+-------+                                                              
|
- *  | n |  31:0 |                                                              
|
- *  
+---+-------+--------------------------------------------------------------+
- */
-
-#define GUC_CTB_HDR_LEN                                1u
-#define GUC_CTB_MSG_MIN_LEN                    GUC_CTB_HDR_LEN
-#define GUC_CTB_MSG_MAX_LEN                    256u
-#define GUC_CTB_MSG_0_FENCE                    (0xffffU << 16)
-#define GUC_CTB_MSG_0_FORMAT                   (0xf << 12)
-#define   GUC_CTB_FORMAT_HXG                   0u
-#define GUC_CTB_MSG_0_RESERVED                 (0xf << 8)
-#define GUC_CTB_MSG_0_NUM_DWORDS               (0xff << 0)
-
-/**
- * DOC: CTB HXG Message
- *
- *  
+---+-------+--------------------------------------------------------------+
- *  |   | Bits  | Description                                                  
|
- *  
+===+=======+==============================================================+
- *  | 0 | 31:16 | FENCE                                                        
|
- *  |   
+-------+--------------------------------------------------------------+
- *  |   | 15:12 | FORMAT = GUC_CTB_FORMAT_HXG_                                 
|
- *  |   
+-------+--------------------------------------------------------------+
- *  |   |  11:8 | RESERVED = MBZ                                               
|
- *  |   
+-------+--------------------------------------------------------------+
- *  |   |   7:0 | NUM_DWORDS = length (in dwords) of the embedded HXG message  
|
- *  
+---+-------+--------------------------------------------------------------+
- *  | 1 |  31:0 |                                                              
|
- *  +---+-------+                                                              
|
- *  |...|       | [Embedded `HXG Message`_]                                    
|
- *  +---+-------+                                                              
|
- *  | n |  31:0 |                                                              
|
- *  
+---+-------+--------------------------------------------------------------+
- */
-
-#define GUC_CTB_HXG_MSG_MIN_LEN                (GUC_CTB_MSG_MIN_LEN + 
GUC_HXG_MSG_MIN_LEN)
-#define GUC_CTB_HXG_MSG_MAX_LEN                GUC_CTB_MSG_MAX_LEN
-
-/**
- * DOC: CTB based communication
- *
- * The CTB (command transport buffer) communication between Host and GuC
- * is based on u32 data stream written to the shared buffer. One buffer can
- * be used to transmit data only in one direction (one-directional channel).
- *
- * Current status of the each buffer is stored in the buffer descriptor.
- * Buffer descriptor holds tail and head fields that represents active data
- * stream. The tail field is updated by the data producer (sender), and head
- * field is updated by the data consumer (receiver)::
- *
- *      +------------+
- *      | DESCRIPTOR |          +=================+============+========+
- *      +============+          |                 | MESSAGE(s) |        |
- *      | address    |--------->+=================+============+========+
- *      +------------+
- *      | head       |          ^-----head--------^
- *      +------------+
- *      | tail       |          ^---------tail-----------------^
- *      +------------+
- *      | size       |          ^---------------size--------------------^
- *      +------------+
- *
- * Each message in data stream starts with the single u32 treated as a header,
- * followed by optional set of u32 data that makes message specific payload::
- *
- *      +------------+---------+---------+---------+
- *      |         MESSAGE                          |
- *      +------------+---------+---------+---------+
- *      |   msg[0]   |   [1]   |   ...   |  [n-1]  |
- *      +------------+---------+---------+---------+
- *      |   MESSAGE  |       MESSAGE PAYLOAD       |
- *      +   HEADER   +---------+---------+---------+
- *      |            |    0    |   ...   |    n    |
- *      +======+=====+=========+=========+=========+
- *      | 31:16| code|         |         |         |
- *      +------+-----+         |         |         |
- *      |  15:5|flags|         |         |         |
- *      +------+-----+         |         |         |
- *      |   4:0|  len|         |         |         |
- *      +------+-----+---------+---------+---------+
- *
- *                   ^-------------len-------------^
- *
- * The message header consists of:
- *
- * - **len**, indicates length of the message payload (in u32)
- * - **code**, indicates message code
- * - **flags**, holds various bits to control message handling
- */
-
-#endif /* _ABI_GUC_COMMUNICATION_CTB_ABI_H */
diff --git a/drivers/gpu/drm/i915/gt/uc/abi/guc_communication_mmio_abi.h 
b/drivers/gpu/drm/i915/gt/uc/abi/guc_communication_mmio_abi.h
deleted file mode 100644
index 9baa3cb07d13..000000000000
--- a/drivers/gpu/drm/i915/gt/uc/abi/guc_communication_mmio_abi.h
+++ /dev/null
@@ -1,49 +0,0 @@
-/* SPDX-License-Identifier: MIT */
-/*
- * Copyright © 2014-2021 Intel Corporation
- */
-
-#ifndef _ABI_GUC_COMMUNICATION_MMIO_ABI_H
-#define _ABI_GUC_COMMUNICATION_MMIO_ABI_H
-
-/**
- * DOC: GuC MMIO based communication
- *
- * The MMIO based communication between Host and GuC relies on special
- * hardware registers which format could be defined by the software
- * (so called scratch registers).
- *
- * Each MMIO based message, both Host to GuC (H2G) and GuC to Host (G2H)
- * messages, which maximum length depends on number of available scratch
- * registers, is directly written into those scratch registers.
- *
- * For Gen9+, there are 16 software scratch registers 0xC180-0xC1B8,
- * but no H2G command takes more than 4 parameters and the GuC firmware
- * itself uses an 4-element array to store the H2G message.
- *
- * For Gen11+, there are additional 4 registers 0x190240-0x19024C, which
- * are, regardless on lower count, preferred over legacy ones.
- *
- * The MMIO based communication is mainly used during driver initialization
- * phase to setup the `CTB based communication`_ that will be used afterwards.
- */
-
-#define GUC_MAX_MMIO_MSG_LEN           4
-
-/**
- * DOC: MMIO HXG Message
- *
- * Format of the MMIO messages follows definitions of `HXG Message`_.
- *
- *  
+---+-------+--------------------------------------------------------------+
- *  |   | Bits  | Description                                                  
|
- *  
+===+=======+==============================================================+
- *  | 0 |  31:0 |                                                              
|
- *  +---+-------+                                                              
|
- *  |...|       | [Embedded `HXG Message`_]                                    
|
- *  +---+-------+                                                              
|
- *  | n |  31:0 |                                                              
|
- *  
+---+-------+--------------------------------------------------------------+
- */
-
-#endif /* _ABI_GUC_COMMUNICATION_MMIO_ABI_H */
diff --git a/drivers/gpu/drm/i915/gt/uc/abi/guc_klvs_abi.h 
b/drivers/gpu/drm/i915/gt/uc/abi/guc_klvs_abi.h
deleted file mode 100644
index 37ff539a6963..000000000000
--- a/drivers/gpu/drm/i915/gt/uc/abi/guc_klvs_abi.h
+++ /dev/null
@@ -1,112 +0,0 @@
-/* SPDX-License-Identifier: MIT */
-/*
- * Copyright © 2021 Intel Corporation
- */
-
-#ifndef _ABI_GUC_KLVS_ABI_H
-#define _ABI_GUC_KLVS_ABI_H
-
-#include <linux/types.h>
-
-/**
- * DOC: GuC KLV
- *
- *  
+---+-------+--------------------------------------------------------------+
- *  |   | Bits  | Description                                                  
|
- *  
+===+=======+==============================================================+
- *  | 0 | 31:16 | **KEY** - KLV key identifier                                 
|
- *  |   |       |   - `GuC Self Config KLVs`_                                  
|
- *  |   |       |                                                              
|
- *  |   
+-------+--------------------------------------------------------------+
- *  |   |  15:0 | **LEN** - length of VALUE (in 32bit dwords)                  
|
- *  
+---+-------+--------------------------------------------------------------+
- *  | 1 |  31:0 | **VALUE** - actual value of the KLV (format depends on KEY)  
|
- *  +---+-------+                                                              
|
- *  |...|       |                                                              
|
- *  +---+-------+                                                              
|
- *  | n |  31:0 |                                                              
|
- *  
+---+-------+--------------------------------------------------------------+
- */
-
-#define GUC_KLV_LEN_MIN                                1u
-#define GUC_KLV_0_KEY                          (0xffffu << 16)
-#define GUC_KLV_0_LEN                          (0xffffu << 0)
-#define GUC_KLV_n_VALUE                                (0xffffffffu << 0)
-
-/**
- * DOC: GuC Self Config KLVs
- *
- * `GuC KLV`_ keys available for use with HOST2GUC_SELF_CFG_.
- *
- * _`GUC_KLV_SELF_CFG_H2G_CTB_ADDR` : 0x0902
- *      Refers to 64 bit Global Gfx address of H2G `CT Buffer`_.
- *      Should be above WOPCM address but below APIC base address for native 
mode.
- *
- * _`GUC_KLV_SELF_CFG_H2G_CTB_DESCRIPTOR_ADDR` : 0x0903
- *      Refers to 64 bit Global Gfx address of H2G `CTB Descriptor`_.
- *      Should be above WOPCM address but below APIC base address for native 
mode.
- *
- * _`GUC_KLV_SELF_CFG_H2G_CTB_SIZE` : 0x0904
- *      Refers to size of H2G `CT Buffer`_ in bytes.
- *      Should be a multiple of 4K.
- *
- * _`GUC_KLV_SELF_CFG_G2H_CTB_ADDR` : 0x0905
- *      Refers to 64 bit Global Gfx address of G2H `CT Buffer`_.
- *      Should be above WOPCM address but below APIC base address for native 
mode.
- *
- * _`GUC_KLV_SELF_CFG_G2H_CTB_DESCRIPTOR_ADDR` : 0x0906
- *      Refers to 64 bit Global Gfx address of G2H `CTB Descriptor`_.
- *      Should be above WOPCM address but below APIC base address for native 
mode.
- *
- * _`GUC_KLV_SELF_CFG_G2H_CTB_SIZE` : 0x0907
- *      Refers to size of G2H `CT Buffer`_ in bytes.
- *      Should be a multiple of 4K.
- */
-
-#define GUC_KLV_SELF_CFG_H2G_CTB_ADDR_KEY              0x0902
-#define GUC_KLV_SELF_CFG_H2G_CTB_ADDR_LEN              2u
-
-#define GUC_KLV_SELF_CFG_H2G_CTB_DESCRIPTOR_ADDR_KEY   0x0903
-#define GUC_KLV_SELF_CFG_H2G_CTB_DESCRIPTOR_ADDR_LEN   2u
-
-#define GUC_KLV_SELF_CFG_H2G_CTB_SIZE_KEY              0x0904
-#define GUC_KLV_SELF_CFG_H2G_CTB_SIZE_LEN              1u
-
-#define GUC_KLV_SELF_CFG_G2H_CTB_ADDR_KEY              0x0905
-#define GUC_KLV_SELF_CFG_G2H_CTB_ADDR_LEN              2u
-
-#define GUC_KLV_SELF_CFG_G2H_CTB_DESCRIPTOR_ADDR_KEY   0x0906
-#define GUC_KLV_SELF_CFG_G2H_CTB_DESCRIPTOR_ADDR_LEN   2u
-
-#define GUC_KLV_SELF_CFG_G2H_CTB_SIZE_KEY              0x0907
-#define GUC_KLV_SELF_CFG_G2H_CTB_SIZE_LEN              1u
-
-/*
- * Global scheduling policy update keys.
- */
-enum {
-       GUC_SCHEDULING_POLICIES_KLV_ID_RENDER_COMPUTE_YIELD     = 0x1001,
-};
-
-/*
- * Per context scheduling policy update keys.
- */
-enum {
-       GUC_CONTEXT_POLICIES_KLV_ID_EXECUTION_QUANTUM                   = 
0x2001,
-       GUC_CONTEXT_POLICIES_KLV_ID_PREEMPTION_TIMEOUT                  = 
0x2002,
-       GUC_CONTEXT_POLICIES_KLV_ID_SCHEDULING_PRIORITY                 = 
0x2003,
-       GUC_CONTEXT_POLICIES_KLV_ID_PREEMPT_TO_IDLE_ON_QUANTUM_EXPIRY   = 
0x2004,
-       GUC_CONTEXT_POLICIES_KLV_ID_SLPM_GT_FREQUENCY                   = 
0x2005,
-
-       GUC_CONTEXT_POLICIES_KLV_NUM_IDS = 5,
-};
-
-/*
- * Workaround keys:
- */
-enum {
-       GUC_WORKAROUND_KLV_SERIALIZED_RA_MODE                           = 
0x9001,
-       GUC_WORKAROUND_KLV_BLOCK_INTERRUPTS_WHEN_MGSR_BLOCKED           = 
0x9002,
-};
-
-#endif /* _ABI_GUC_KLVS_ABI_H */
diff --git a/drivers/gpu/drm/i915/gt/uc/abi/guc_messages_abi.h 
b/drivers/gpu/drm/i915/gt/uc/abi/guc_messages_abi.h
deleted file mode 100644
index 98eb4f46572b..000000000000
--- a/drivers/gpu/drm/i915/gt/uc/abi/guc_messages_abi.h
+++ /dev/null
@@ -1,264 +0,0 @@
-/* SPDX-License-Identifier: MIT */
-/*
- * Copyright © 2014-2021 Intel Corporation
- */
-
-#ifndef _ABI_GUC_MESSAGES_ABI_H
-#define _ABI_GUC_MESSAGES_ABI_H
-
-/**
- * DOC: HXG Message
- *
- * All messages exchanged with GuC are defined using 32 bit dwords.
- * First dword is treated as a message header. Remaining dwords are optional.
- *
- *  
+---+-------+--------------------------------------------------------------+
- *  |   | Bits  | Description                                                  
|
- *  
+===+=======+==============================================================+
- *  |   |       |                                                              
|
- *  | 0 |    31 | **ORIGIN** - originator of the message                       
|
- *  |   |       |   - _`GUC_HXG_ORIGIN_HOST` = 0                               
|
- *  |   |       |   - _`GUC_HXG_ORIGIN_GUC` = 1                                
|
- *  |   |       |                                                              
|
- *  |   
+-------+--------------------------------------------------------------+
- *  |   | 30:28 | **TYPE** - message type                                      
|
- *  |   |       |   - _`GUC_HXG_TYPE_REQUEST` = 0                              
|
- *  |   |       |   - _`GUC_HXG_TYPE_EVENT` = 1                                
|
- *  |   |       |   - _`GUC_HXG_TYPE_FAST_REQUEST` = 2                         
|
- *  |   |       |   - _`GUC_HXG_TYPE_NO_RESPONSE_BUSY` = 3                     
|
- *  |   |       |   - _`GUC_HXG_TYPE_NO_RESPONSE_RETRY` = 5                    
|
- *  |   |       |   - _`GUC_HXG_TYPE_RESPONSE_FAILURE` = 6                     
|
- *  |   |       |   - _`GUC_HXG_TYPE_RESPONSE_SUCCESS` = 7                     
|
- *  |   
+-------+--------------------------------------------------------------+
- *  |   |  27:0 | **AUX** - auxiliary data (depends on TYPE)                   
|
- *  
+---+-------+--------------------------------------------------------------+
- *  | 1 |  31:0 |                                                              
|
- *  +---+-------+                                                              
|
- *  |...|       | **PAYLOAD** - optional payload (depends on TYPE)             
|
- *  +---+-------+                                                              
|
- *  | n |  31:0 |                                                              
|
- *  
+---+-------+--------------------------------------------------------------+
- */
-
-#define GUC_HXG_MSG_MIN_LEN                    1u
-#define GUC_HXG_MSG_0_ORIGIN                   (0x1U << 31)
-#define   GUC_HXG_ORIGIN_HOST                  0u
-#define   GUC_HXG_ORIGIN_GUC                   1u
-#define GUC_HXG_MSG_0_TYPE                     (0x7 << 28)
-#define   GUC_HXG_TYPE_REQUEST                 0u
-#define   GUC_HXG_TYPE_EVENT                   1u
-#define   GUC_HXG_TYPE_FAST_REQUEST            2u
-#define   GUC_HXG_TYPE_NO_RESPONSE_BUSY                3u
-#define   GUC_HXG_TYPE_NO_RESPONSE_RETRY       5u
-#define   GUC_HXG_TYPE_RESPONSE_FAILURE                6u
-#define   GUC_HXG_TYPE_RESPONSE_SUCCESS                7u
-#define GUC_HXG_MSG_0_AUX                      (0xfffffff << 0)
-#define GUC_HXG_MSG_n_PAYLOAD                  (0xffffffff << 0)
-
-/**
- * DOC: HXG Request
- *
- * The `HXG Request`_ message should be used to initiate synchronous activity
- * for which confirmation or return data is expected.
- *
- * The recipient of this message shall use `HXG Response`_, `HXG Failure`_
- * or `HXG Retry`_ message as a definite reply, and may use `HXG Busy`_
- * message as a intermediate reply.
- *
- * Format of @DATA0 and all @DATAn fields depends on the @ACTION code.
- *
- *  
+---+-------+--------------------------------------------------------------+
- *  |   | Bits  | Description                                                  
|
- *  
+===+=======+==============================================================+
- *  | 0 |    31 | ORIGIN                                                       
|
- *  |   
+-------+--------------------------------------------------------------+
- *  |   | 30:28 | TYPE = GUC_HXG_TYPE_REQUEST_                                 
|
- *  |   
+-------+--------------------------------------------------------------+
- *  |   | 27:16 | **DATA0** - request data (depends on ACTION)                 
|
- *  |   
+-------+--------------------------------------------------------------+
- *  |   |  15:0 | **ACTION** - requested action code                           
|
- *  
+---+-------+--------------------------------------------------------------+
- *  | 1 |  31:0 |                                                              
|
- *  +---+-------+                                                              
|
- *  |...|       | **DATAn** - optional data (depends on ACTION)                
|
- *  +---+-------+                                                              
|
- *  | n |  31:0 |                                                              
|
- *  
+---+-------+--------------------------------------------------------------+
- */
-
-#define GUC_HXG_REQUEST_MSG_MIN_LEN            GUC_HXG_MSG_MIN_LEN
-#define GUC_HXG_REQUEST_MSG_0_DATA0            (0xfff << 16)
-#define GUC_HXG_REQUEST_MSG_0_ACTION           (0xffff << 0)
-#define GUC_HXG_REQUEST_MSG_n_DATAn            GUC_HXG_MSG_n_PAYLOAD
-
-/**
- * DOC: HXG Fast Request
- *
- * The `HXG Request`_ message should be used to initiate asynchronous activity
- * for which confirmation or return data is not expected.
- *
- * If confirmation is required then `HXG Request`_ shall be used instead.
- *
- * The recipient of this message may only use `HXG Failure`_ message if it was
- * unable to accept this request (like invalid data).
- *
- * Format of `HXG Fast Request`_ message is same as `HXG Request`_ except 
@TYPE.
- *
- *  
+---+-------+--------------------------------------------------------------+
- *  |   | Bits  | Description                                                  
|
- *  
+===+=======+==============================================================+
- *  | 0 |    31 | ORIGIN - see `HXG Message`_                                  
|
- *  |   
+-------+--------------------------------------------------------------+
- *  |   | 30:28 | TYPE = `GUC_HXG_TYPE_FAST_REQUEST`_                          
|
- *  |   
+-------+--------------------------------------------------------------+
- *  |   | 27:16 | DATA0 - see `HXG Request`_                                   
|
- *  |   
+-------+--------------------------------------------------------------+
- *  |   |  15:0 | ACTION - see `HXG Request`_                                  
|
- *  
+---+-------+--------------------------------------------------------------+
- *  |...|       | DATAn - see `HXG Request`_                                   
|
- *  
+---+-------+--------------------------------------------------------------+
- */
-
-/**
- * DOC: HXG Event
- *
- * The `HXG Event`_ message should be used to initiate asynchronous activity
- * that does not involves immediate confirmation nor data.
- *
- * Format of @DATA0 and all @DATAn fields depends on the @ACTION code.
- *
- *  
+---+-------+--------------------------------------------------------------+
- *  |   | Bits  | Description                                                  
|
- *  
+===+=======+==============================================================+
- *  | 0 |    31 | ORIGIN                                                       
|
- *  |   
+-------+--------------------------------------------------------------+
- *  |   | 30:28 | TYPE = GUC_HXG_TYPE_EVENT_                                   
|
- *  |   
+-------+--------------------------------------------------------------+
- *  |   | 27:16 | **DATA0** - event data (depends on ACTION)                   
|
- *  |   
+-------+--------------------------------------------------------------+
- *  |   |  15:0 | **ACTION** - event action code                               
|
- *  
+---+-------+--------------------------------------------------------------+
- *  | 1 |  31:0 |                                                              
|
- *  +---+-------+                                                              
|
- *  |...|       | **DATAn** - optional event  data (depends on ACTION)         
|
- *  +---+-------+                                                              
|
- *  | n |  31:0 |                                                              
|
- *  
+---+-------+--------------------------------------------------------------+
- */
-
-#define GUC_HXG_EVENT_MSG_MIN_LEN              GUC_HXG_MSG_MIN_LEN
-#define GUC_HXG_EVENT_MSG_0_DATA0              (0xfff << 16)
-#define GUC_HXG_EVENT_MSG_0_ACTION             (0xffff << 0)
-#define GUC_HXG_EVENT_MSG_n_DATAn              GUC_HXG_MSG_n_PAYLOAD
-
-/**
- * DOC: HXG Busy
- *
- * The `HXG Busy`_ message may be used to acknowledge reception of the `HXG 
Request`_
- * message if the recipient expects that it processing will be longer than 
default
- * timeout.
- *
- * The @COUNTER field may be used as a progress indicator.
- *
- *  
+---+-------+--------------------------------------------------------------+
- *  |   | Bits  | Description                                                  
|
- *  
+===+=======+==============================================================+
- *  | 0 |    31 | ORIGIN                                                       
|
- *  |   
+-------+--------------------------------------------------------------+
- *  |   | 30:28 | TYPE = GUC_HXG_TYPE_NO_RESPONSE_BUSY_                        
|
- *  |   
+-------+--------------------------------------------------------------+
- *  |   |  27:0 | **COUNTER** - progress indicator                             
|
- *  
+---+-------+--------------------------------------------------------------+
- */
-
-#define GUC_HXG_BUSY_MSG_LEN                   GUC_HXG_MSG_MIN_LEN
-#define GUC_HXG_BUSY_MSG_0_COUNTER             GUC_HXG_MSG_0_AUX
-
-/**
- * DOC: HXG Retry
- *
- * The `HXG Retry`_ message should be used by recipient to indicate that the
- * `HXG Request`_ message was dropped and it should be resent again.
- *
- * The @REASON field may be used to provide additional information.
- *
- *  
+---+-------+--------------------------------------------------------------+
- *  |   | Bits  | Description                                                  
|
- *  
+===+=======+==============================================================+
- *  | 0 |    31 | ORIGIN                                                       
|
- *  |   
+-------+--------------------------------------------------------------+
- *  |   | 30:28 | TYPE = GUC_HXG_TYPE_NO_RESPONSE_RETRY_                       
|
- *  |   
+-------+--------------------------------------------------------------+
- *  |   |  27:0 | **REASON** - reason for retry                                
|
- *  |   |       |  - _`GUC_HXG_RETRY_REASON_UNSPECIFIED` = 0                   
|
- *  
+---+-------+--------------------------------------------------------------+
- */
-
-#define GUC_HXG_RETRY_MSG_LEN                  GUC_HXG_MSG_MIN_LEN
-#define GUC_HXG_RETRY_MSG_0_REASON             GUC_HXG_MSG_0_AUX
-#define   GUC_HXG_RETRY_REASON_UNSPECIFIED     0u
-
-/**
- * DOC: HXG Failure
- *
- * The `HXG Failure`_ message shall be used as a reply to the `HXG Request`_
- * message that could not be processed due to an error.
- *
- *  
+---+-------+--------------------------------------------------------------+
- *  |   | Bits  | Description                                                  
|
- *  
+===+=======+==============================================================+
- *  | 0 |    31 | ORIGIN                                                       
|
- *  |   
+-------+--------------------------------------------------------------+
- *  |   | 30:28 | TYPE = GUC_HXG_TYPE_RESPONSE_FAILURE_                        
|
- *  |   
+-------+--------------------------------------------------------------+
- *  |   | 27:16 | **HINT** - additional error hint                             
|
- *  |   
+-------+--------------------------------------------------------------+
- *  |   |  15:0 | **ERROR** - error/result code                                
|
- *  
+---+-------+--------------------------------------------------------------+
- */
-
-#define GUC_HXG_FAILURE_MSG_LEN                        GUC_HXG_MSG_MIN_LEN
-#define GUC_HXG_FAILURE_MSG_0_HINT             (0xfff << 16)
-#define GUC_HXG_FAILURE_MSG_0_ERROR            (0xffff << 0)
-
-/**
- * DOC: HXG Response
- *
- * The `HXG Response`_ message shall be used as a reply to the `HXG Request`_
- * message that was successfully processed without an error.
- *
- *  
+---+-------+--------------------------------------------------------------+
- *  |   | Bits  | Description                                                  
|
- *  
+===+=======+==============================================================+
- *  | 0 |    31 | ORIGIN                                                       
|
- *  |   
+-------+--------------------------------------------------------------+
- *  |   | 30:28 | TYPE = GUC_HXG_TYPE_RESPONSE_SUCCESS_                        
|
- *  |   
+-------+--------------------------------------------------------------+
- *  |   |  27:0 | **DATA0** - data (depends on ACTION from `HXG Request`_)     
|
- *  
+---+-------+--------------------------------------------------------------+
- *  | 1 |  31:0 |                                                              
|
- *  +---+-------+                                                              
|
- *  |...|       | **DATAn** - data (depends on ACTION from `HXG Request`_)     
|
- *  +---+-------+                                                              
|
- *  | n |  31:0 |                                                              
|
- *  
+---+-------+--------------------------------------------------------------+
- */
-
-#define GUC_HXG_RESPONSE_MSG_MIN_LEN           GUC_HXG_MSG_MIN_LEN
-#define GUC_HXG_RESPONSE_MSG_0_DATA0           GUC_HXG_MSG_0_AUX
-#define GUC_HXG_RESPONSE_MSG_n_DATAn           GUC_HXG_MSG_n_PAYLOAD
-
-/* deprecated */
-#define INTEL_GUC_MSG_TYPE_SHIFT       28
-#define INTEL_GUC_MSG_TYPE_MASK                (0xF << 
INTEL_GUC_MSG_TYPE_SHIFT)
-#define INTEL_GUC_MSG_DATA_SHIFT       16
-#define INTEL_GUC_MSG_DATA_MASK                (0xFFF << 
INTEL_GUC_MSG_DATA_SHIFT)
-#define INTEL_GUC_MSG_CODE_SHIFT       0
-#define INTEL_GUC_MSG_CODE_MASK                (0xFFFF << 
INTEL_GUC_MSG_CODE_SHIFT)
-
-enum intel_guc_msg_type {
-       INTEL_GUC_MSG_TYPE_REQUEST = 0x0,
-       INTEL_GUC_MSG_TYPE_RESPONSE = 0xF,
-};
-
-#endif /* _ABI_GUC_MESSAGES_ABI_H */
-- 
2.43.0

Reply via email to