diff options
author | Hawking Zhang <Hawking.Zhang@amd.com> | 2025-01-26 17:15:48 +0800 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2025-02-17 14:09:29 -0500 |
commit | ad97840f954cc6834cc92324de9cde27ff0263db (patch) | |
tree | a47beedd96b3e35a767856c88d1a0f5adac0d42f /drivers/gpu/drm/amd/amdgpu/amdgpu_cper.h | |
parent | 56316ee91bcefaf535dbe8ba601cf5f14051d09a (diff) | |
download | linux-stable-ad97840f954cc6834cc92324de9cde27ff0263db.tar.gz linux-stable-ad97840f954cc6834cc92324de9cde27ff0263db.tar.bz2 linux-stable-ad97840f954cc6834cc92324de9cde27ff0263db.zip |
drm/amdgpu: Introduce funcs for generating cper record
Introduce new functions that are used to generate
cper ue or ce records.
v2: return -ENOMEM instead of false
v2: check return value of fill section function
Signed-off-by: Hawking Zhang <Hawking.Zhang@amd.com>
Signed-off-by: Xiang Liu <xiang.liu@amd.com>
Reviewed-by: Yang Wang <keivnyang.wang@amd.com>
Reviewed-by: Tao Zhou <tao.zhou1@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_cper.h')
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_cper.h | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_cper.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_cper.h index 0ae845420983..6860a809f2f5 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_cper.h +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_cper.h @@ -26,6 +26,7 @@ #define __AMDGPU_CPER_H__ #include "amd_cper.h" +#include "amdgpu_aca.h" #define CPER_MAX_ALLOWED_COUNT 0x1000 #define HDR_LEN (sizeof(struct cper_hdr)) @@ -84,7 +85,13 @@ int amdgpu_cper_entry_fill_bad_page_threshold_section(struct amdgpu_device *adev struct cper_hdr *amdgpu_cper_alloc_entry(struct amdgpu_device *adev, enum amdgpu_cper_type type, uint16_t section_count); - +/* UE must be encoded into separated cper entries, 1 UE 1 cper */ +int amdgpu_cper_generate_ue_record(struct amdgpu_device *adev, + struct aca_bank *bank); +/* CEs and DEs are combined into 1 cper entry */ +int amdgpu_cper_generate_ce_records(struct amdgpu_device *adev, + struct aca_banks *banks, + uint16_t bank_count); int amdgpu_cper_init(struct amdgpu_device *adev); int amdgpu_cper_fini(struct amdgpu_device *adev); |