]> Git Repo - linux.git/blobdiff - drivers/gpu/drm/amd/amdgpu/amdgpu_ras.h
Merge tag 'mm-hotfixes-stable-2024-01-12-16-52' of git://git.kernel.org/pub/scm/linux...
[linux.git] / drivers / gpu / drm / amd / amdgpu / amdgpu_ras.h
index 665414c22ca95f48d260e8f25a3ae30c442cab44..76fb85628716f6302b3c02beb0965c85f2723a05 100644 (file)
@@ -320,6 +320,12 @@ enum amdgpu_ras_ret {
        AMDGPU_RAS_PT,
 };
 
+enum amdgpu_ras_error_query_mode {
+       AMDGPU_RAS_INVALID_ERROR_QUERY          = 0,
+       AMDGPU_RAS_DIRECT_ERROR_QUERY           = 1,
+       AMDGPU_RAS_FIRMWARE_ERROR_QUERY         = 2,
+};
+
 /* ras error status reisger fields */
 #define ERR_STATUS_LO__ERR_STATUS_VALID_FLAG__SHIFT    0x0
 #define ERR_STATUS_LO__ERR_STATUS_VALID_FLAG_MASK      0x00000001L
@@ -446,10 +452,17 @@ struct ras_fs_data {
        char debugfs_name[32];
 };
 
+struct ras_err_addr {
+       uint64_t err_status;
+       uint64_t err_ipid;
+       uint64_t err_addr;
+};
+
 struct ras_err_info {
        struct amdgpu_smuio_mcm_config_info mcm_info;
        u64 ce_count;
        u64 ue_count;
+       struct ras_err_addr err_addr;
 };
 
 struct ras_err_node {
@@ -767,8 +780,10 @@ struct amdgpu_ras* amdgpu_ras_get_context(struct amdgpu_device *adev);
 
 int amdgpu_ras_set_context(struct amdgpu_device *adev, struct amdgpu_ras *ras_con);
 
-void amdgpu_ras_set_mca_debug_mode(struct amdgpu_device *adev, bool enable);
+int amdgpu_ras_set_mca_debug_mode(struct amdgpu_device *adev, bool enable);
 bool amdgpu_ras_get_mca_debug_mode(struct amdgpu_device *adev);
+bool amdgpu_ras_get_error_query_mode(struct amdgpu_device *adev,
+                                    unsigned int *mode);
 
 int amdgpu_ras_register_ras_block(struct amdgpu_device *adev,
                                struct amdgpu_ras_block_object *ras_block_obj);
@@ -798,8 +813,10 @@ void amdgpu_ras_inst_reset_ras_error_count(struct amdgpu_device *adev,
 int amdgpu_ras_error_data_init(struct ras_err_data *err_data);
 void amdgpu_ras_error_data_fini(struct ras_err_data *err_data);
 int amdgpu_ras_error_statistic_ce_count(struct ras_err_data *err_data,
-                                       struct amdgpu_smuio_mcm_config_info *mcm_info, u64 count);
+               struct amdgpu_smuio_mcm_config_info *mcm_info,
+               struct ras_err_addr *err_addr, u64 count);
 int amdgpu_ras_error_statistic_ue_count(struct ras_err_data *err_data,
-                                       struct amdgpu_smuio_mcm_config_info *mcm_info, u64 count);
+               struct amdgpu_smuio_mcm_config_info *mcm_info,
+               struct ras_err_addr *err_addr, u64 count);
 
 #endif
This page took 0.036579 seconds and 4 git commands to generate.