|
|
@@ -81,11 +81,14 @@
|
|
|
#define GUC_CTL_CTXINFO 0
|
|
|
#define GUC_CTL_CTXNUM_IN16_SHIFT 0
|
|
|
#define GUC_CTL_BASE_ADDR_SHIFT 12
|
|
|
+
|
|
|
#define GUC_CTL_ARAT_HIGH 1
|
|
|
#define GUC_CTL_ARAT_LOW 2
|
|
|
+
|
|
|
#define GUC_CTL_DEVICE_INFO 3
|
|
|
#define GUC_CTL_GTTYPE_SHIFT 0
|
|
|
#define GUC_CTL_COREFAMILY_SHIFT 7
|
|
|
+
|
|
|
#define GUC_CTL_LOG_PARAMS 4
|
|
|
#define GUC_LOG_VALID (1 << 0)
|
|
|
#define GUC_LOG_NOTIFY_ON_HALF_FULL (1 << 1)
|
|
|
@@ -97,9 +100,12 @@
|
|
|
#define GUC_LOG_ISR_PAGES 3
|
|
|
#define GUC_LOG_ISR_SHIFT 9
|
|
|
#define GUC_LOG_BUF_ADDR_SHIFT 12
|
|
|
+
|
|
|
#define GUC_CTL_PAGE_FAULT_CONTROL 5
|
|
|
+
|
|
|
#define GUC_CTL_WA 6
|
|
|
#define GUC_CTL_WA_UK_BY_DRIVER (1 << 3)
|
|
|
+
|
|
|
#define GUC_CTL_FEATURE 7
|
|
|
#define GUC_CTL_VCS2_ENABLED (1 << 0)
|
|
|
#define GUC_CTL_KERNEL_SUBMISSIONS (1 << 1)
|
|
|
@@ -109,6 +115,7 @@
|
|
|
#define GUC_CTL_PREEMPTION_LOG (1 << 5)
|
|
|
#define GUC_CTL_ENABLE_SLPC (1 << 7)
|
|
|
#define GUC_CTL_RESET_ON_PREMPT_FAILURE (1 << 8)
|
|
|
+
|
|
|
#define GUC_CTL_DEBUG 8
|
|
|
#define GUC_LOG_VERBOSITY_SHIFT 0
|
|
|
#define GUC_LOG_VERBOSITY_LOW (0 << GUC_LOG_VERBOSITY_SHIFT)
|
|
|
@@ -118,9 +125,19 @@
|
|
|
/* Verbosity range-check limits, without the shift */
|
|
|
#define GUC_LOG_VERBOSITY_MIN 0
|
|
|
#define GUC_LOG_VERBOSITY_MAX 3
|
|
|
+#define GUC_LOG_VERBOSITY_MASK 0x0000000f
|
|
|
+#define GUC_LOG_DESTINATION_MASK (3 << 4)
|
|
|
+#define GUC_LOG_DISABLED (1 << 6)
|
|
|
+#define GUC_PROFILE_ENABLED (1 << 7)
|
|
|
+#define GUC_WQ_TRACK_ENABLED (1 << 8)
|
|
|
+#define GUC_ADS_ENABLED (1 << 9)
|
|
|
+#define GUC_DEBUG_RESERVED (1 << 10)
|
|
|
+#define GUC_ADS_ADDR_SHIFT 11
|
|
|
+#define GUC_ADS_ADDR_MASK 0xfffff800
|
|
|
+
|
|
|
#define GUC_CTL_RSRVD 9
|
|
|
|
|
|
-#define GUC_CTL_MAX_DWORDS (GUC_CTL_RSRVD + 1)
|
|
|
+#define GUC_CTL_MAX_DWORDS (SOFT_SCRATCH_COUNT - 2) /* [1..14] */
|
|
|
|
|
|
/**
|
|
|
* DOC: GuC Firmware Layout
|
|
|
@@ -299,6 +316,18 @@ struct guc_context_desc {
|
|
|
#define GUC_POWER_D2 3
|
|
|
#define GUC_POWER_D3 4
|
|
|
|
|
|
+/* GuC Additional Data Struct */
|
|
|
+
|
|
|
+struct guc_ads {
|
|
|
+ u32 reg_state_addr;
|
|
|
+ u32 reg_state_buffer;
|
|
|
+ u32 golden_context_lrca;
|
|
|
+ u32 scheduler_policies;
|
|
|
+ u32 reserved0[3];
|
|
|
+ u32 eng_state_size[I915_NUM_RINGS];
|
|
|
+ u32 reserved2[4];
|
|
|
+} __packed;
|
|
|
+
|
|
|
/* This Action will be programmed in C180 - SOFT_SCRATCH_O_REG */
|
|
|
enum host2guc_action {
|
|
|
HOST2GUC_ACTION_DEFAULT = 0x0,
|