intel_step.h 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. /* SPDX-License-Identifier: MIT */
  2. /*
  3. * Copyright © 2020,2021 Intel Corporation
  4. */
  5. #ifndef __INTEL_STEP_H__
  6. #define __INTEL_STEP_H__
  7. #include <linux/types.h>
  8. struct drm_i915_private;
  9. struct intel_step_info {
  10. /*
  11. * It is expected to have 4 number steps per letter. Deviation from
  12. * the expectation breaks gmd_to_intel_step().
  13. */
  14. u8 graphics_step; /* Represents the compute tile on Xe_HPC */
  15. u8 media_step;
  16. };
  17. #define STEP_ENUM_VAL(name) STEP_##name,
  18. #define STEP_NAME_LIST(func) \
  19. func(A0) \
  20. func(A1) \
  21. func(A2) \
  22. func(A3) \
  23. func(B0) \
  24. func(B1) \
  25. func(B2) \
  26. func(B3) \
  27. func(C0) \
  28. func(C1) \
  29. func(C2) \
  30. func(C3) \
  31. func(D0) \
  32. func(D1) \
  33. func(D2) \
  34. func(D3) \
  35. func(E0) \
  36. func(E1) \
  37. func(E2) \
  38. func(E3) \
  39. func(F0) \
  40. func(F1) \
  41. func(F2) \
  42. func(F3) \
  43. func(G0) \
  44. func(G1) \
  45. func(G2) \
  46. func(G3) \
  47. func(H0) \
  48. func(H1) \
  49. func(H2) \
  50. func(H3) \
  51. func(I0) \
  52. func(I1) \
  53. func(I2) \
  54. func(I3) \
  55. func(J0) \
  56. func(J1) \
  57. func(J2) \
  58. func(J3)
  59. /*
  60. * Symbolic steppings that do not match the hardware. These are valid both as gt
  61. * and display steppings as symbolic names.
  62. */
  63. enum intel_step {
  64. STEP_NONE = 0,
  65. STEP_NAME_LIST(STEP_ENUM_VAL)
  66. STEP_FUTURE,
  67. STEP_FOREVER,
  68. };
  69. void intel_step_init(struct drm_i915_private *i915);
  70. const char *intel_step_name(enum intel_step step);
  71. #endif /* __INTEL_STEP_H__ */