[AMD Official Use Only - AMD Internal Distribution Only] Reviewed-by: Tao Zhou <[email protected]>
> -----Original Message----- > From: Lazar, Lijo <[email protected]> > Sent: Tuesday, April 8, 2025 2:14 PM > To: [email protected]; Lazar, Lijo <[email protected]> > Cc: Zhang, Hawking <[email protected]>; Deucher, Alexander > <[email protected]>; Li, Candice <[email protected]>; Zhou1, Tao > <[email protected]> > Subject: [PATCH] drm/amdgpu: Reset RAS table if header is invalid > > If a valid header is not found during RAS eeprom init, consider it as new and > reset > RAS table info. > > Signed-off-by: Lijo Lazar <[email protected]> > --- > drivers/gpu/drm/amd/amdgpu/amdgpu_ras_eeprom.c | 10 ++++++---- > 1 file changed, 6 insertions(+), 4 deletions(-) > > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ras_eeprom.c > b/drivers/gpu/drm/amd/amdgpu/amdgpu_ras_eeprom.c > index e979a6086178..bb767fc20242 100644 > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ras_eeprom.c > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ras_eeprom.c > @@ -1392,6 +1392,12 @@ int amdgpu_ras_eeprom_init(struct > amdgpu_ras_eeprom_control *control) > > __decode_table_header_from_buf(hdr, buf); > > + if (hdr->header != RAS_TABLE_HDR_VAL && > + hdr->header != RAS_TABLE_HDR_BAD) { > + dev_info(adev->dev, "Creating a new EEPROM table"); > + return amdgpu_ras_eeprom_reset_table(control); > + } > + > switch (hdr->version) { > case RAS_TABLE_VER_V2_1: > case RAS_TABLE_VER_V3: > @@ -1510,10 +1516,6 @@ int amdgpu_ras_eeprom_check(struct > amdgpu_ras_eeprom_control *control) > "User defined threshold is set, > runtime service > will be halt when threshold is reached\n"); > } > } > - } else { > - DRM_INFO("Creating a new EEPROM table"); > - > - res = amdgpu_ras_eeprom_reset_table(control); > } > > return res < 0 ? res : 0; > -- > 2.25.1
