KtiEparam.c 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. /** @file
  2. @copyright
  3. Copyright 2018 - 2021 Intel Corporation. <BR>
  4. SPDX-License-Identifier: BSD-2-Clause-Patent
  5. **/
  6. #include "PeiBoardInit.h"
  7. #include <KtiSetupDefinitions.h>
  8. #include <UbaKti.h>
  9. extern EFI_GUID gPlatformKtiEparamUpdateDataGuid;
  10. ALL_LANES_EPARAM_LINK_INFO KtiIcxAllLanesEparamTable[] = {
  11. //
  12. // SocketID, Freq, Link, TXEQL, CTLEPEAK
  13. // Please propagate changes to WilsonCitySMT and WilsonCityModular UBA KtiEparam tables
  14. //
  15. //
  16. // Socket 0
  17. //
  18. {0x0, (1 << SPEED_REC_96GT) | (1 << SPEED_REC_104GT) | (1 << SPEED_REC_112GT), (1 << KTI_LINK0), 0x2B33373F, ADAPTIVE_CTLE},
  19. {0x0, (1 << SPEED_REC_96GT) | (1 << SPEED_REC_104GT) | (1 << SPEED_REC_112GT), (1 << KTI_LINK1), 0x2A33363F, ADAPTIVE_CTLE},
  20. {0x0, (1 << SPEED_REC_96GT) | (1 << SPEED_REC_104GT) | (1 << SPEED_REC_112GT), (1 << KTI_LINK2), 0x2B34363F, ADAPTIVE_CTLE},
  21. //
  22. // Socket 1
  23. //
  24. {0x1, (1 << SPEED_REC_96GT) | (1 << SPEED_REC_104GT) | (1 << SPEED_REC_112GT), (1 << KTI_LINK0), 0x2A31383F, ADAPTIVE_CTLE},
  25. {0x1, (1 << SPEED_REC_96GT) | (1 << SPEED_REC_104GT) | (1 << SPEED_REC_112GT), (1 << KTI_LINK1), 0x2A30393F, ADAPTIVE_CTLE},
  26. {0x1, (1 << SPEED_REC_96GT) | (1 << SPEED_REC_104GT) | (1 << SPEED_REC_112GT), (1 << KTI_LINK2), 0x2C34373F, ADAPTIVE_CTLE}
  27. };
  28. PLATFORM_KTI_EPARAM_UPDATE_TABLE TypeBoardPortTemplateIcxKtiEparamUpdate = {
  29. PLATFORM_KTIEP_UPDATE_SIGNATURE,
  30. PLATFORM_KTIEP_UPDATE_VERSION,
  31. KtiIcxAllLanesEparamTable,
  32. sizeof (KtiIcxAllLanesEparamTable),
  33. NULL,
  34. 0
  35. };
  36. EFI_STATUS
  37. TypeBoardPortTemplateInstallKtiEparamData (
  38. IN UBA_CONFIG_DATABASE_PPI *UbaConfigPpi
  39. )
  40. {
  41. EFI_STATUS Status;
  42. EFI_HOB_GUID_TYPE *GuidHob;
  43. EFI_PLATFORM_INFO *PlatformInfo;
  44. GuidHob = GetFirstGuidHob (&gEfiPlatformInfoGuid);
  45. ASSERT (GuidHob != NULL);
  46. if (GuidHob == NULL) {
  47. return EFI_NOT_FOUND;
  48. }
  49. PlatformInfo = GET_GUID_HOB_DATA (GuidHob);
  50. Status = UbaConfigPpi->AddData (
  51. UbaConfigPpi,
  52. &gPlatformKtiEparamUpdateDataGuid,
  53. &TypeBoardPortTemplateIcxKtiEparamUpdate,
  54. sizeof(TypeBoardPortTemplateIcxKtiEparamUpdate)
  55. );
  56. return Status;
  57. }