Commit 81735604 authored by Alex Deucher's avatar Alex Deucher
Browse files

drm/amdgpu: use common defines for HUB faults



Use common definitions for the fault bits in the IH sourc
data for the gmc9-12 memory hub faults

Reviewed-by: default avatarTimur Kristóf <timur.kristof@gmail.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent ff28ff98
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -86,6 +86,11 @@ enum amdgpu_memory_partition {

#define AMDGPU_MAX_MEM_RANGES 8

#define AMDGPU_GMC9_FAULT_SOURCE_DATA_RETRY 0x80
#define AMDGPU_GMC9_FAULT_SOURCE_DATA_READ  0x40
#define AMDGPU_GMC9_FAULT_SOURCE_DATA_WRITE 0x20
#define AMDGPU_GMC9_FAULT_SOURCE_DATA_EXE   0x10

/*
 * GMC page fault information
 */
+4 −2
Original line number Diff line number Diff line
@@ -103,8 +103,10 @@ static int gmc_v10_0_process_interrupt(struct amdgpu_device *adev,
	uint32_t vmhub_index = entry->client_id == SOC15_IH_CLIENTID_VMC ?
			       AMDGPU_MMHUB0(0) : AMDGPU_GFXHUB(0);
	struct amdgpu_vmhub *hub = &adev->vmhub[vmhub_index];
	bool retry_fault = !!(entry->src_data[1] & 0x80);
	bool write_fault = !!(entry->src_data[1] & 0x20);
	bool retry_fault = !!(entry->src_data[1] &
			      AMDGPU_GMC9_FAULT_SOURCE_DATA_RETRY);
	bool write_fault = !!(entry->src_data[1] &
			      AMDGPU_GMC9_FAULT_SOURCE_DATA_WRITE);
	struct amdgpu_task_info *task_info;
	uint32_t status = 0;
	u64 addr;
+4 −2
Original line number Diff line number Diff line
@@ -103,8 +103,10 @@ static int gmc_v11_0_process_interrupt(struct amdgpu_device *adev,
	uint32_t vmhub_index = entry->client_id == SOC21_IH_CLIENTID_VMC ?
			       AMDGPU_MMHUB0(0) : AMDGPU_GFXHUB(0);
	struct amdgpu_vmhub *hub = &adev->vmhub[vmhub_index];
	bool retry_fault = !!(entry->src_data[1] & 0x80);
	bool write_fault = !!(entry->src_data[1] & 0x20);
	bool retry_fault = !!(entry->src_data[1] &
			      AMDGPU_GMC9_FAULT_SOURCE_DATA_RETRY);
	bool write_fault = !!(entry->src_data[1] &
			      AMDGPU_GMC9_FAULT_SOURCE_DATA_WRITE);
	uint32_t status = 0;
	u64 addr;

+4 −2
Original line number Diff line number Diff line
@@ -91,8 +91,10 @@ static int gmc_v12_0_process_interrupt(struct amdgpu_device *adev,
				       struct amdgpu_iv_entry *entry)
{
	struct amdgpu_vmhub *hub;
	bool retry_fault = !!(entry->src_data[1] & 0x80);
	bool write_fault = !!(entry->src_data[1] & 0x20);
	bool retry_fault = !!(entry->src_data[1] &
			      AMDGPU_GMC9_FAULT_SOURCE_DATA_RETRY);
	bool write_fault = !!(entry->src_data[1] &
			      AMDGPU_GMC9_FAULT_SOURCE_DATA_WRITE);
	uint32_t status = 0;
	u64 addr;

+4 −2
Original line number Diff line number Diff line
@@ -544,8 +544,10 @@ static int gmc_v9_0_process_interrupt(struct amdgpu_device *adev,
				      struct amdgpu_irq_src *source,
				      struct amdgpu_iv_entry *entry)
{
	bool retry_fault = !!(entry->src_data[1] & 0x80);
	bool write_fault = !!(entry->src_data[1] & 0x20);
	bool retry_fault = !!(entry->src_data[1] &
			      AMDGPU_GMC9_FAULT_SOURCE_DATA_RETRY);
	bool write_fault = !!(entry->src_data[1] &
			      AMDGPU_GMC9_FAULT_SOURCE_DATA_WRITE);
	uint32_t status = 0, cid = 0, rw = 0, fed = 0;
	struct amdgpu_task_info *task_info;
	struct amdgpu_vmhub *hub;