]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
drm/amd/display: add macros to simplify code
authorWenjing Liu <wenjing.liu@amd.com>
Thu, 6 Nov 2025 05:49:18 +0000 (13:49 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Wed, 12 Nov 2025 02:53:26 +0000 (21:53 -0500)
[Why & How]
Adding macros to simplify the process of adding new error codes.
Currently, to add an error code, the developer needs to add both the
enum and the string translation. This is error prone and can lead to
inconsistencies. The refactor adds a macro to automatically add the
string translation based on the enum.

Reviewed-by: Aric Cyr <aric.cyr@amd.com>
Signed-off-by: Wenjing Liu <wenjing.liu@amd.com>
Signed-off-by: Ray Wu <ray.wu@amd.com>
Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/modules/hdcp/hdcp_log.c
drivers/gpu/drm/amd/display/modules/inc/mod_hdcp.h

index ac44ee1532fdad6801abec9ac7dede8347fc23d7..409a7d0e70fab2dfd41e368d754e1b666037ccb5 100644 (file)
@@ -125,131 +125,12 @@ void mod_hdcp_log_ddc_trace(struct mod_hdcp *hdcp)
        }
 }
 
+#define CASE_FORMAT(entry) case entry: return #entry;
+
 char *mod_hdcp_status_to_str(int32_t status)
 {
        switch (status) {
-       case MOD_HDCP_STATUS_SUCCESS:
-               return "MOD_HDCP_STATUS_SUCCESS";
-       case MOD_HDCP_STATUS_FAILURE:
-               return "MOD_HDCP_STATUS_FAILURE";
-       case MOD_HDCP_STATUS_RESET_NEEDED:
-               return "MOD_HDCP_STATUS_RESET_NEEDED";
-       case MOD_HDCP_STATUS_DISPLAY_OUT_OF_BOUND:
-               return "MOD_HDCP_STATUS_DISPLAY_OUT_OF_BOUND";
-       case MOD_HDCP_STATUS_DISPLAY_NOT_FOUND:
-               return "MOD_HDCP_STATUS_DISPLAY_NOT_FOUND";
-       case MOD_HDCP_STATUS_INVALID_STATE:
-               return "MOD_HDCP_STATUS_INVALID_STATE";
-       case MOD_HDCP_STATUS_NOT_IMPLEMENTED:
-               return "MOD_HDCP_STATUS_NOT_IMPLEMENTED";
-       case MOD_HDCP_STATUS_INTERNAL_POLICY_FAILURE:
-               return "MOD_HDCP_STATUS_INTERNAL_POLICY_FAILURE";
-       case MOD_HDCP_STATUS_UPDATE_TOPOLOGY_FAILURE:
-               return "MOD_HDCP_STATUS_UPDATE_TOPOLOGY_FAILURE";
-       case MOD_HDCP_STATUS_CREATE_PSP_SERVICE_FAILURE:
-               return "MOD_HDCP_STATUS_CREATE_PSP_SERVICE_FAILURE";
-       case MOD_HDCP_STATUS_DESTROY_PSP_SERVICE_FAILURE:
-               return "MOD_HDCP_STATUS_DESTROY_PSP_SERVICE_FAILURE";
-       case MOD_HDCP_STATUS_HDCP1_CREATE_SESSION_FAILURE:
-               return "MOD_HDCP_STATUS_HDCP1_CREATE_SESSION_FAILURE";
-       case MOD_HDCP_STATUS_HDCP1_DESTROY_SESSION_FAILURE:
-               return "MOD_HDCP_STATUS_HDCP1_DESTROY_SESSION_FAILURE";
-       case MOD_HDCP_STATUS_HDCP1_VALIDATE_ENCRYPTION_FAILURE:
-               return "MOD_HDCP_STATUS_HDCP1_VALIDATE_ENCRYPTION_FAILURE";
-       case MOD_HDCP_STATUS_HDCP1_NOT_HDCP_REPEATER:
-               return "MOD_HDCP_STATUS_HDCP1_NOT_HDCP_REPEATER";
-       case MOD_HDCP_STATUS_HDCP1_NOT_CAPABLE:
-               return "MOD_HDCP_STATUS_HDCP1_NOT_CAPABLE";
-       case MOD_HDCP_STATUS_HDCP1_R0_PRIME_PENDING:
-               return "MOD_HDCP_STATUS_HDCP1_R0_PRIME_PENDING";
-       case MOD_HDCP_STATUS_HDCP1_VALIDATE_RX_FAILURE:
-               return "MOD_HDCP_STATUS_HDCP1_VALIDATE_RX_FAILURE";
-       case MOD_HDCP_STATUS_HDCP1_BKSV_REVOKED:
-               return "MOD_HDCP_STATUS_HDCP1_BKSV_REVOKED";
-       case MOD_HDCP_STATUS_HDCP1_KSV_LIST_NOT_READY:
-               return "MOD_HDCP_STATUS_HDCP1_KSV_LIST_NOT_READY";
-       case MOD_HDCP_STATUS_HDCP1_VALIDATE_KSV_LIST_FAILURE:
-               return "MOD_HDCP_STATUS_HDCP1_VALIDATE_KSV_LIST_FAILURE";
-       case MOD_HDCP_STATUS_HDCP1_KSV_LIST_REVOKED:
-               return "MOD_HDCP_STATUS_HDCP1_KSV_LIST_REVOKED";
-       case MOD_HDCP_STATUS_HDCP1_ENABLE_ENCRYPTION_FAILURE:
-               return "MOD_HDCP_STATUS_HDCP1_ENABLE_ENCRYPTION_FAILURE";
-       case MOD_HDCP_STATUS_HDCP1_ENABLE_STREAM_ENCRYPTION_FAILURE:
-               return "MOD_HDCP_STATUS_HDCP1_ENABLE_STREAM_ENCRYPTION_FAILURE";
-       case MOD_HDCP_STATUS_HDCP1_MAX_CASCADE_EXCEEDED_FAILURE:
-               return "MOD_HDCP_STATUS_HDCP1_MAX_CASCADE_EXCEEDED_FAILURE";
-       case MOD_HDCP_STATUS_HDCP1_MAX_DEVS_EXCEEDED_FAILURE:
-               return "MOD_HDCP_STATUS_HDCP1_MAX_DEVS_EXCEEDED_FAILURE";
-       case MOD_HDCP_STATUS_HDCP1_DEVICE_COUNT_MISMATCH_FAILURE:
-               return "MOD_HDCP_STATUS_HDCP1_DEVICE_COUNT_MISMATCH_FAILURE";
-       case MOD_HDCP_STATUS_HDCP1_LINK_INTEGRITY_FAILURE:
-               return "MOD_HDCP_STATUS_HDCP1_LINK_INTEGRITY_FAILURE";
-       case MOD_HDCP_STATUS_HDCP1_REAUTH_REQUEST_ISSUED:
-               return "MOD_HDCP_STATUS_HDCP1_REAUTH_REQUEST_ISSUED";
-       case MOD_HDCP_STATUS_HDCP1_LINK_MAINTENANCE_FAILURE:
-               return "MOD_HDCP_STATUS_HDCP1_LINK_MAINTENANCE_FAILURE";
-       case MOD_HDCP_STATUS_HDCP1_INVALID_BKSV:
-               return "MOD_HDCP_STATUS_HDCP1_INVALID_BKSV";
-       case MOD_HDCP_STATUS_DDC_FAILURE:
-               return "MOD_HDCP_STATUS_DDC_FAILURE";
-       case MOD_HDCP_STATUS_INVALID_OPERATION:
-               return "MOD_HDCP_STATUS_INVALID_OPERATION";
-       case MOD_HDCP_STATUS_HDCP2_NOT_CAPABLE:
-               return "MOD_HDCP_STATUS_HDCP2_NOT_CAPABLE";
-       case MOD_HDCP_STATUS_HDCP2_CREATE_SESSION_FAILURE:
-               return "MOD_HDCP_STATUS_HDCP2_CREATE_SESSION_FAILURE";
-       case MOD_HDCP_STATUS_HDCP2_DESTROY_SESSION_FAILURE:
-               return "MOD_HDCP_STATUS_HDCP2_DESTROY_SESSION_FAILURE";
-       case MOD_HDCP_STATUS_HDCP2_PREP_AKE_INIT_FAILURE:
-               return "MOD_HDCP_STATUS_HDCP2_PREP_AKE_INIT_FAILURE";
-       case MOD_HDCP_STATUS_HDCP2_AKE_CERT_PENDING:
-               return "MOD_HDCP_STATUS_HDCP2_AKE_CERT_PENDING";
-       case MOD_HDCP_STATUS_HDCP2_H_PRIME_PENDING:
-               return "MOD_HDCP_STATUS_HDCP2_H_PRIME_PENDING";
-       case MOD_HDCP_STATUS_HDCP2_PAIRING_INFO_PENDING:
-               return "MOD_HDCP_STATUS_HDCP2_PAIRING_INFO_PENDING";
-       case MOD_HDCP_STATUS_HDCP2_VALIDATE_AKE_CERT_FAILURE:
-               return "MOD_HDCP_STATUS_HDCP2_VALIDATE_AKE_CERT_FAILURE";
-       case MOD_HDCP_STATUS_HDCP2_AKE_CERT_REVOKED:
-               return "MOD_HDCP_STATUS_HDCP2_AKE_CERT_REVOKED";
-       case MOD_HDCP_STATUS_HDCP2_VALIDATE_H_PRIME_FAILURE:
-               return "MOD_HDCP_STATUS_HDCP2_VALIDATE_H_PRIME_FAILURE";
-       case MOD_HDCP_STATUS_HDCP2_VALIDATE_PAIRING_INFO_FAILURE:
-               return "MOD_HDCP_STATUS_HDCP2_VALIDATE_PAIRING_INFO_FAILURE";
-       case MOD_HDCP_STATUS_HDCP2_PREP_LC_INIT_FAILURE:
-               return "MOD_HDCP_STATUS_HDCP2_PREP_LC_INIT_FAILURE";
-       case MOD_HDCP_STATUS_HDCP2_L_PRIME_PENDING:
-               return "MOD_HDCP_STATUS_HDCP2_L_PRIME_PENDING";
-       case MOD_HDCP_STATUS_HDCP2_VALIDATE_L_PRIME_FAILURE:
-               return "MOD_HDCP_STATUS_HDCP2_VALIDATE_L_PRIME_FAILURE";
-       case MOD_HDCP_STATUS_HDCP2_PREP_EKS_FAILURE:
-               return "MOD_HDCP_STATUS_HDCP2_PREP_EKS_FAILURE";
-       case MOD_HDCP_STATUS_HDCP2_ENABLE_ENCRYPTION_FAILURE:
-               return "MOD_HDCP_STATUS_HDCP2_ENABLE_ENCRYPTION_FAILURE";
-       case MOD_HDCP_STATUS_HDCP2_VALIDATE_RX_ID_LIST_FAILURE:
-               return "MOD_HDCP_STATUS_HDCP2_VALIDATE_RX_ID_LIST_FAILURE";
-       case MOD_HDCP_STATUS_HDCP2_RX_ID_LIST_REVOKED:
-               return "MOD_HDCP_STATUS_HDCP2_RX_ID_LIST_REVOKED";
-       case MOD_HDCP_STATUS_HDCP2_RX_ID_LIST_NOT_READY:
-               return "MOD_HDCP_STATUS_HDCP2_RX_ID_LIST_NOT_READY";
-       case MOD_HDCP_STATUS_HDCP2_ENABLE_STREAM_ENCRYPTION_FAILURE:
-               return "MOD_HDCP_STATUS_HDCP2_ENABLE_STREAM_ENCRYPTION_FAILURE";
-       case MOD_HDCP_STATUS_HDCP2_STREAM_READY_PENDING:
-               return "MOD_HDCP_STATUS_HDCP2_STREAM_READY_PENDING";
-       case MOD_HDCP_STATUS_HDCP2_VALIDATE_STREAM_READY_FAILURE:
-               return "MOD_HDCP_STATUS_HDCP2_VALIDATE_STREAM_READY_FAILURE";
-       case MOD_HDCP_STATUS_HDCP2_PREPARE_STREAM_MANAGEMENT_FAILURE:
-               return "MOD_HDCP_STATUS_HDCP2_PREPARE_STREAM_MANAGEMENT_FAILURE";
-       case MOD_HDCP_STATUS_HDCP2_REAUTH_REQUEST:
-               return "MOD_HDCP_STATUS_HDCP2_REAUTH_REQUEST";
-       case MOD_HDCP_STATUS_HDCP2_REAUTH_LINK_INTEGRITY_FAILURE:
-               return "MOD_HDCP_STATUS_HDCP2_REAUTH_LINK_INTEGRITY_FAILURE";
-       case MOD_HDCP_STATUS_HDCP2_DEVICE_COUNT_MISMATCH_FAILURE:
-               return "MOD_HDCP_STATUS_HDCP2_DEVICE_COUNT_MISMATCH_FAILURE";
-       case MOD_HDCP_STATUS_UNSUPPORTED_PSP_VER_FAILURE:
-               return "MOD_HDCP_STATUS_UNSUPPORTED_PSP_VER_FAILURE";
-       case MOD_HDCP_STATUS_HDCP2_LOCALITY_COMBO_READ_FAILURE:
-               return "MOD_HDCP_STATUS_HDCP2_LOCALITY_COMBO_READ_FAILURE";
+       MOD_HDCP_STATUS_LIST(CASE_FORMAT)
        default:
                return "MOD_HDCP_STATUS_UNKNOWN";
        }
index 264348989e9bc313ee043c19f2373299d32312aa..83546722545891bb38a3fb2d554128f6cd3d05b9 100644 (file)
@@ -35,70 +35,74 @@ struct mod_hdcp;
 #define MAX_NUM_OF_DISPLAYS 6
 #define MAX_NUM_OF_ATTEMPTS 4
 #define MAX_NUM_OF_ERROR_TRACE 10
+#define MOD_HDCP_STATUS_LIST(FORMAT) \
+       FORMAT(MOD_HDCP_STATUS_SUCCESS) \
+       FORMAT(MOD_HDCP_STATUS_FAILURE) \
+       FORMAT(MOD_HDCP_STATUS_RESET_NEEDED) \
+       FORMAT(MOD_HDCP_STATUS_DISPLAY_OUT_OF_BOUND) \
+       FORMAT(MOD_HDCP_STATUS_DISPLAY_NOT_FOUND) \
+       FORMAT(MOD_HDCP_STATUS_INVALID_STATE) \
+       FORMAT(MOD_HDCP_STATUS_NOT_IMPLEMENTED) \
+       FORMAT(MOD_HDCP_STATUS_INTERNAL_POLICY_FAILURE) \
+       FORMAT(MOD_HDCP_STATUS_UPDATE_TOPOLOGY_FAILURE) \
+       FORMAT(MOD_HDCP_STATUS_CREATE_PSP_SERVICE_FAILURE) \
+       FORMAT(MOD_HDCP_STATUS_DESTROY_PSP_SERVICE_FAILURE) \
+       FORMAT(MOD_HDCP_STATUS_HDCP1_CREATE_SESSION_FAILURE) \
+       FORMAT(MOD_HDCP_STATUS_HDCP1_DESTROY_SESSION_FAILURE) \
+       FORMAT(MOD_HDCP_STATUS_HDCP1_VALIDATE_ENCRYPTION_FAILURE) \
+       FORMAT(MOD_HDCP_STATUS_HDCP1_NOT_HDCP_REPEATER) \
+       FORMAT(MOD_HDCP_STATUS_HDCP1_NOT_CAPABLE) \
+       FORMAT(MOD_HDCP_STATUS_HDCP1_R0_PRIME_PENDING) \
+       FORMAT(MOD_HDCP_STATUS_HDCP1_VALIDATE_RX_FAILURE) \
+       FORMAT(MOD_HDCP_STATUS_HDCP1_BKSV_REVOKED) \
+       FORMAT(MOD_HDCP_STATUS_HDCP1_KSV_LIST_NOT_READY) \
+       FORMAT(MOD_HDCP_STATUS_HDCP1_VALIDATE_KSV_LIST_FAILURE) \
+       FORMAT(MOD_HDCP_STATUS_HDCP1_KSV_LIST_REVOKED) \
+       FORMAT(MOD_HDCP_STATUS_HDCP1_ENABLE_ENCRYPTION_FAILURE) \
+       FORMAT(MOD_HDCP_STATUS_HDCP1_ENABLE_STREAM_ENCRYPTION_FAILURE) \
+       FORMAT(MOD_HDCP_STATUS_HDCP1_MAX_CASCADE_EXCEEDED_FAILURE) \
+       FORMAT(MOD_HDCP_STATUS_HDCP1_MAX_DEVS_EXCEEDED_FAILURE) \
+       FORMAT(MOD_HDCP_STATUS_HDCP1_DEVICE_COUNT_MISMATCH_FAILURE) \
+       FORMAT(MOD_HDCP_STATUS_HDCP1_LINK_INTEGRITY_FAILURE) \
+       FORMAT(MOD_HDCP_STATUS_HDCP1_REAUTH_REQUEST_ISSUED) \
+       FORMAT(MOD_HDCP_STATUS_HDCP1_LINK_MAINTENANCE_FAILURE) \
+       FORMAT(MOD_HDCP_STATUS_HDCP1_INVALID_BKSV) \
+       FORMAT(MOD_HDCP_STATUS_DDC_FAILURE) /* TODO: specific errors */ \
+       FORMAT(MOD_HDCP_STATUS_INVALID_OPERATION) \
+       FORMAT(MOD_HDCP_STATUS_HDCP2_NOT_CAPABLE) \
+       FORMAT(MOD_HDCP_STATUS_HDCP2_CREATE_SESSION_FAILURE) \
+       FORMAT(MOD_HDCP_STATUS_HDCP2_DESTROY_SESSION_FAILURE) \
+       FORMAT(MOD_HDCP_STATUS_HDCP2_PREP_AKE_INIT_FAILURE) \
+       FORMAT(MOD_HDCP_STATUS_HDCP2_AKE_CERT_PENDING) \
+       FORMAT(MOD_HDCP_STATUS_HDCP2_H_PRIME_PENDING) \
+       FORMAT(MOD_HDCP_STATUS_HDCP2_PAIRING_INFO_PENDING) \
+       FORMAT(MOD_HDCP_STATUS_HDCP2_VALIDATE_AKE_CERT_FAILURE) \
+       FORMAT(MOD_HDCP_STATUS_HDCP2_AKE_CERT_REVOKED) \
+       FORMAT(MOD_HDCP_STATUS_HDCP2_VALIDATE_H_PRIME_FAILURE) \
+       FORMAT(MOD_HDCP_STATUS_HDCP2_VALIDATE_PAIRING_INFO_FAILURE) \
+       FORMAT(MOD_HDCP_STATUS_HDCP2_PREP_LC_INIT_FAILURE) \
+       FORMAT(MOD_HDCP_STATUS_HDCP2_L_PRIME_PENDING) \
+       FORMAT(MOD_HDCP_STATUS_HDCP2_VALIDATE_L_PRIME_FAILURE) \
+       FORMAT(MOD_HDCP_STATUS_HDCP2_PREP_EKS_FAILURE) \
+       FORMAT(MOD_HDCP_STATUS_HDCP2_ENABLE_ENCRYPTION_FAILURE) \
+       FORMAT(MOD_HDCP_STATUS_HDCP2_RX_ID_LIST_NOT_READY) \
+       FORMAT(MOD_HDCP_STATUS_HDCP2_VALIDATE_RX_ID_LIST_FAILURE) \
+       FORMAT(MOD_HDCP_STATUS_HDCP2_RX_ID_LIST_REVOKED) \
+       FORMAT(MOD_HDCP_STATUS_HDCP2_ENABLE_STREAM_ENCRYPTION_FAILURE) \
+       FORMAT(MOD_HDCP_STATUS_HDCP2_STREAM_READY_PENDING) \
+       FORMAT(MOD_HDCP_STATUS_HDCP2_VALIDATE_STREAM_READY_FAILURE) \
+       FORMAT(MOD_HDCP_STATUS_HDCP2_PREPARE_STREAM_MANAGEMENT_FAILURE) \
+       FORMAT(MOD_HDCP_STATUS_HDCP2_REAUTH_REQUEST) \
+       FORMAT(MOD_HDCP_STATUS_HDCP2_REAUTH_LINK_INTEGRITY_FAILURE) \
+       FORMAT(MOD_HDCP_STATUS_HDCP2_DEVICE_COUNT_MISMATCH_FAILURE) \
+       FORMAT(MOD_HDCP_STATUS_UNSUPPORTED_PSP_VER_FAILURE) \
+       FORMAT(MOD_HDCP_STATUS_HDCP2_LOCALITY_COMBO_READ_FAILURE)
+
+#define ENUM_FORMAT(entry) entry,
 
 /* detailed return status */
 enum mod_hdcp_status {
-       MOD_HDCP_STATUS_SUCCESS = 0,
-       MOD_HDCP_STATUS_FAILURE,
-       MOD_HDCP_STATUS_RESET_NEEDED,
-       MOD_HDCP_STATUS_DISPLAY_OUT_OF_BOUND,
-       MOD_HDCP_STATUS_DISPLAY_NOT_FOUND,
-       MOD_HDCP_STATUS_INVALID_STATE,
-       MOD_HDCP_STATUS_NOT_IMPLEMENTED,
-       MOD_HDCP_STATUS_INTERNAL_POLICY_FAILURE,
-       MOD_HDCP_STATUS_UPDATE_TOPOLOGY_FAILURE,
-       MOD_HDCP_STATUS_CREATE_PSP_SERVICE_FAILURE,
-       MOD_HDCP_STATUS_DESTROY_PSP_SERVICE_FAILURE,
-       MOD_HDCP_STATUS_HDCP1_CREATE_SESSION_FAILURE,
-       MOD_HDCP_STATUS_HDCP1_DESTROY_SESSION_FAILURE,
-       MOD_HDCP_STATUS_HDCP1_VALIDATE_ENCRYPTION_FAILURE,
-       MOD_HDCP_STATUS_HDCP1_NOT_HDCP_REPEATER,
-       MOD_HDCP_STATUS_HDCP1_NOT_CAPABLE,
-       MOD_HDCP_STATUS_HDCP1_R0_PRIME_PENDING,
-       MOD_HDCP_STATUS_HDCP1_VALIDATE_RX_FAILURE,
-       MOD_HDCP_STATUS_HDCP1_BKSV_REVOKED,
-       MOD_HDCP_STATUS_HDCP1_KSV_LIST_NOT_READY,
-       MOD_HDCP_STATUS_HDCP1_VALIDATE_KSV_LIST_FAILURE,
-       MOD_HDCP_STATUS_HDCP1_KSV_LIST_REVOKED,
-       MOD_HDCP_STATUS_HDCP1_ENABLE_ENCRYPTION_FAILURE,
-       MOD_HDCP_STATUS_HDCP1_ENABLE_STREAM_ENCRYPTION_FAILURE,
-       MOD_HDCP_STATUS_HDCP1_MAX_CASCADE_EXCEEDED_FAILURE,
-       MOD_HDCP_STATUS_HDCP1_MAX_DEVS_EXCEEDED_FAILURE,
-       MOD_HDCP_STATUS_HDCP1_DEVICE_COUNT_MISMATCH_FAILURE,
-       MOD_HDCP_STATUS_HDCP1_LINK_INTEGRITY_FAILURE,
-       MOD_HDCP_STATUS_HDCP1_REAUTH_REQUEST_ISSUED,
-       MOD_HDCP_STATUS_HDCP1_LINK_MAINTENANCE_FAILURE,
-       MOD_HDCP_STATUS_HDCP1_INVALID_BKSV,
-       MOD_HDCP_STATUS_DDC_FAILURE, /* TODO: specific errors */
-       MOD_HDCP_STATUS_INVALID_OPERATION,
-       MOD_HDCP_STATUS_HDCP2_NOT_CAPABLE,
-       MOD_HDCP_STATUS_HDCP2_CREATE_SESSION_FAILURE,
-       MOD_HDCP_STATUS_HDCP2_DESTROY_SESSION_FAILURE,
-       MOD_HDCP_STATUS_HDCP2_PREP_AKE_INIT_FAILURE,
-       MOD_HDCP_STATUS_HDCP2_AKE_CERT_PENDING,
-       MOD_HDCP_STATUS_HDCP2_H_PRIME_PENDING,
-       MOD_HDCP_STATUS_HDCP2_PAIRING_INFO_PENDING,
-       MOD_HDCP_STATUS_HDCP2_VALIDATE_AKE_CERT_FAILURE,
-       MOD_HDCP_STATUS_HDCP2_AKE_CERT_REVOKED,
-       MOD_HDCP_STATUS_HDCP2_VALIDATE_H_PRIME_FAILURE,
-       MOD_HDCP_STATUS_HDCP2_VALIDATE_PAIRING_INFO_FAILURE,
-       MOD_HDCP_STATUS_HDCP2_PREP_LC_INIT_FAILURE,
-       MOD_HDCP_STATUS_HDCP2_L_PRIME_PENDING,
-       MOD_HDCP_STATUS_HDCP2_VALIDATE_L_PRIME_FAILURE,
-       MOD_HDCP_STATUS_HDCP2_PREP_EKS_FAILURE,
-       MOD_HDCP_STATUS_HDCP2_ENABLE_ENCRYPTION_FAILURE,
-       MOD_HDCP_STATUS_HDCP2_RX_ID_LIST_NOT_READY,
-       MOD_HDCP_STATUS_HDCP2_VALIDATE_RX_ID_LIST_FAILURE,
-       MOD_HDCP_STATUS_HDCP2_RX_ID_LIST_REVOKED,
-       MOD_HDCP_STATUS_HDCP2_ENABLE_STREAM_ENCRYPTION_FAILURE,
-       MOD_HDCP_STATUS_HDCP2_STREAM_READY_PENDING,
-       MOD_HDCP_STATUS_HDCP2_VALIDATE_STREAM_READY_FAILURE,
-       MOD_HDCP_STATUS_HDCP2_PREPARE_STREAM_MANAGEMENT_FAILURE,
-       MOD_HDCP_STATUS_HDCP2_REAUTH_REQUEST,
-       MOD_HDCP_STATUS_HDCP2_REAUTH_LINK_INTEGRITY_FAILURE,
-       MOD_HDCP_STATUS_HDCP2_DEVICE_COUNT_MISMATCH_FAILURE,
-       MOD_HDCP_STATUS_UNSUPPORTED_PSP_VER_FAILURE,
-       MOD_HDCP_STATUS_HDCP2_LOCALITY_COMBO_READ_FAILURE,
+       MOD_HDCP_STATUS_LIST(ENUM_FORMAT)
 };
 
 struct mod_hdcp_displayport {