8b449f1c44
For PVC, the base die and compute tile have separate stepping values that we need to track; we'll use the existing graphics_step field to represent the compute tile stepping and add a new 'basedie_step' field. Unlike past platforms, steppings for these components are represented by specific bitfields within the PCI revision ID, and we shouldn't make assumptions about the non-CT, non-BD bits staying 0. Let's update our stepping code accordingly. Bspec: 44484 Signed-off-by: Matt Roper <matthew.d.roper@intel.com> Reviewed-by: Matt Atwood <matthew.s.atwood@intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20220527163348.1936146-2-matthew.d.roper@intel.com
57 lines
1023 B
C
57 lines
1023 B
C
/* SPDX-License-Identifier: MIT */
|
|
/*
|
|
* Copyright © 2020,2021 Intel Corporation
|
|
*/
|
|
|
|
#ifndef __INTEL_STEP_H__
|
|
#define __INTEL_STEP_H__
|
|
|
|
#include <linux/types.h>
|
|
|
|
struct drm_i915_private;
|
|
|
|
struct intel_step_info {
|
|
u8 graphics_step; /* Represents the compute tile on Xe_HPC */
|
|
u8 display_step;
|
|
u8 media_step;
|
|
u8 basedie_step;
|
|
};
|
|
|
|
#define STEP_ENUM_VAL(name) STEP_##name,
|
|
|
|
#define STEP_NAME_LIST(func) \
|
|
func(A0) \
|
|
func(A1) \
|
|
func(A2) \
|
|
func(B0) \
|
|
func(B1) \
|
|
func(B2) \
|
|
func(B3) \
|
|
func(C0) \
|
|
func(C1) \
|
|
func(D0) \
|
|
func(D1) \
|
|
func(E0) \
|
|
func(F0) \
|
|
func(G0) \
|
|
func(H0) \
|
|
func(I0) \
|
|
func(I1) \
|
|
func(J0)
|
|
|
|
/*
|
|
* Symbolic steppings that do not match the hardware. These are valid both as gt
|
|
* and display steppings as symbolic names.
|
|
*/
|
|
enum intel_step {
|
|
STEP_NONE = 0,
|
|
STEP_NAME_LIST(STEP_ENUM_VAL)
|
|
STEP_FUTURE,
|
|
STEP_FOREVER,
|
|
};
|
|
|
|
void intel_step_init(struct drm_i915_private *i915);
|
|
const char *intel_step_name(enum intel_step step);
|
|
|
|
#endif /* __INTEL_STEP_H__ */
|