From e479b3e356fae73b10deb147005c2e2a6be72d91 Mon Sep 17 00:00:00 2001 From: Felix Held Date: Wed, 12 Jul 2023 20:12:12 +0200 Subject: [PATCH] vc/amd/fsp/*/platform_descriptor: add dxio_link_hotplug_type enum Add the dxio_link_hotplug_type enum definition for the link_hotplug field in the DXIO descriptor struct. Signed-off-by: Felix Held Change-Id: Ieeb3e3edaed2c689707edc4df7d25c777005fde2 Reviewed-on: https://review.coreboot.org/c/coreboot/+/76438 Tested-by: build bot (Jenkins) Reviewed-by: Matt DeVillier Reviewed-by: Eric Lai --- .../amd/fsp/cezanne/platform_descriptors.h | 12 +++++++++++- src/vendorcode/amd/fsp/glinda/platform_descriptors.h | 12 +++++++++++- .../amd/fsp/mendocino/platform_descriptors.h | 12 +++++++++++- .../amd/fsp/phoenix/platform_descriptors.h | 12 +++++++++++- .../amd/fsp/picasso/platform_descriptors.h | 12 +++++++++++- 5 files changed, 55 insertions(+), 5 deletions(-) diff --git a/src/vendorcode/amd/fsp/cezanne/platform_descriptors.h b/src/vendorcode/amd/fsp/cezanne/platform_descriptors.h index 5c06a82bf4..ef6292b687 100644 --- a/src/vendorcode/amd/fsp/cezanne/platform_descriptors.h +++ b/src/vendorcode/amd/fsp/cezanne/platform_descriptors.h @@ -68,6 +68,16 @@ enum dxio_aspm_type { ASPM_MAX // Not valid value, used to verify input }; +/* PCIe link hotplug */ +enum dxio_link_hotplug_type { + HOTPLUG_DISABLED = 0, + HOTPLUG_BASIC, + HOTPLUG_SERVER, + HOTPLUG_ENHANCED, + HOTPLUG_INBOARD, + HOTPLUG_SERVER_SSD, +}; + enum dxio_port_param_type { PP_DEVICE = 1, PP_FUNCTION, @@ -200,7 +210,7 @@ typedef struct __packed { uint32_t link_aspm_L1_1 :1; // En/Dis root port capabilities for L1.1 uint32_t link_aspm_L1_2 :1; // En/Dis root port capabilities for L1.2 uint32_t clk_req :4; // See cpm_clk_req - uint8_t link_hotplug; // Currently unused by FSP + uint8_t link_hotplug; // See dxio_link_hotplug_type uint8_t slot_power_limit; // Currently unused by FSP uint32_t slot_power_limit_scale :2; // Currently unused by FSP uint32_t reserved_4 :6; diff --git a/src/vendorcode/amd/fsp/glinda/platform_descriptors.h b/src/vendorcode/amd/fsp/glinda/platform_descriptors.h index c315e1cca8..67fb3ff930 100644 --- a/src/vendorcode/amd/fsp/glinda/platform_descriptors.h +++ b/src/vendorcode/amd/fsp/glinda/platform_descriptors.h @@ -72,6 +72,16 @@ enum dxio_aspm_type { ASPM_MAX // Not valid value, used to verify input }; +/* PCIe link hotplug */ +enum dxio_link_hotplug_type { + HOTPLUG_DISABLED = 0, + HOTPLUG_BASIC, + HOTPLUG_SERVER, + HOTPLUG_ENHANCED, + HOTPLUG_INBOARD, + HOTPLUG_SERVER_SSD, +}; + enum dxio_port_param_type { PP_DEVICE = 1, PP_FUNCTION, @@ -195,7 +205,7 @@ typedef struct __packed { uint32_t link_aspm_L1_1 :1; // En/Dis root port capabilities for L1.1 uint32_t link_aspm_L1_2 :1; // En/Dis root port capabilities for L1.2 uint32_t clk_req :4; // See cpm_clk_req - uint8_t link_hotplug; // Currently unused by FSP + uint8_t link_hotplug; // See dxio_link_hotplug_type uint8_t slot_power_limit; // Currently unused by FSP uint32_t slot_power_limit_scale :2; // Currently unused by FSP uint32_t reserved_4 :6; diff --git a/src/vendorcode/amd/fsp/mendocino/platform_descriptors.h b/src/vendorcode/amd/fsp/mendocino/platform_descriptors.h index 318a6abf9d..6b2147d478 100644 --- a/src/vendorcode/amd/fsp/mendocino/platform_descriptors.h +++ b/src/vendorcode/amd/fsp/mendocino/platform_descriptors.h @@ -68,6 +68,16 @@ enum dxio_aspm_type { ASPM_MAX // Not valid value, used to verify input }; +/* PCIe link hotplug */ +enum dxio_link_hotplug_type { + HOTPLUG_DISABLED = 0, + HOTPLUG_BASIC, + HOTPLUG_SERVER, + HOTPLUG_ENHANCED, + HOTPLUG_INBOARD, + HOTPLUG_SERVER_SSD, +}; + enum dxio_port_param_type { PP_DEVICE = 1, PP_FUNCTION, @@ -222,7 +232,7 @@ typedef struct __packed { uint32_t link_aspm_L1_1 :1; // En/Dis root port capabilities for L1.1 uint32_t link_aspm_L1_2 :1; // En/Dis root port capabilities for L1.2 uint32_t clk_req :4; // See cpm_clk_req - uint8_t link_hotplug; // Currently unused by FSP + uint8_t link_hotplug; // See dxio_link_hotplug_type uint8_t slot_power_limit; // Currently unused by FSP uint32_t slot_power_limit_scale :2; // Currently unused by FSP uint32_t reserved_4 :6; diff --git a/src/vendorcode/amd/fsp/phoenix/platform_descriptors.h b/src/vendorcode/amd/fsp/phoenix/platform_descriptors.h index a6133c1d17..47506a711e 100644 --- a/src/vendorcode/amd/fsp/phoenix/platform_descriptors.h +++ b/src/vendorcode/amd/fsp/phoenix/platform_descriptors.h @@ -72,6 +72,16 @@ enum dxio_aspm_type { ASPM_MAX // Not valid value, used to verify input }; +/* PCIe link hotplug */ +enum dxio_link_hotplug_type { + HOTPLUG_DISABLED = 0, + HOTPLUG_BASIC, + HOTPLUG_SERVER, + HOTPLUG_ENHANCED, + HOTPLUG_INBOARD, + HOTPLUG_SERVER_SSD, +}; + enum dxio_port_param_type { PP_DEVICE = 1, PP_FUNCTION, @@ -229,7 +239,7 @@ typedef struct __packed { uint32_t link_aspm_L1_1 :1; // En/Dis root port capabilities for L1.1 uint32_t link_aspm_L1_2 :1; // En/Dis root port capabilities for L1.2 uint32_t clk_req :4; // See cpm_clk_req - uint8_t link_hotplug; // Hotplug control + uint8_t link_hotplug; // See dxio_link_hotplug_type uint8_t slot_power_limit; // PCIe slot power limit uint32_t slot_power_limit_scale :2; // PCIe slot power limit scale uint32_t :6; diff --git a/src/vendorcode/amd/fsp/picasso/platform_descriptors.h b/src/vendorcode/amd/fsp/picasso/platform_descriptors.h index 44e233dd3c..0b0de108d9 100644 --- a/src/vendorcode/amd/fsp/picasso/platform_descriptors.h +++ b/src/vendorcode/amd/fsp/picasso/platform_descriptors.h @@ -67,6 +67,16 @@ typedef enum { ASPM_MAX // Not valid value, used to verify input } dxio_aspm_type; +/* PCIe link hotplug */ +enum dxio_link_hotplug_type { + HOTPLUG_DISABLED = 0, + HOTPLUG_BASIC, + HOTPLUG_SERVER, + HOTPLUG_ENHANCED, + HOTPLUG_INBOARD, + HOTPLUG_SERVER_SSD, +}; + /* DDI Aux channel */ typedef enum { AUX1 = 0, @@ -173,7 +183,7 @@ typedef struct __packed { uint32_t link_aspm_L1_1 :1; // En/Dis root port capabilities for L1.1 uint32_t link_aspm_L1_2 :1; // En/Dis root port capabilities for L1.2 uint32_t clk_req :4; // See cpm_clk_req - uint8_t link_hotplug; // Currently unused by FSP + uint8_t link_hotplug; // See dxio_link_hotplug_type uint8_t slot_power_limit; // Currently unused by FSP uint32_t slot_power_limit_scale :2; // Currently unused by FSP uint32_t reserved_4 :6;