|
@@ -1505,9 +1505,9 @@ void amdgpu_device_fini(struct amdgpu_device *adev);
|
|
|
int amdgpu_gpu_wait_for_idle(struct amdgpu_device *adev);
|
|
|
|
|
|
uint32_t amdgpu_mm_rreg(struct amdgpu_device *adev, uint32_t reg,
|
|
|
- bool always_indirect);
|
|
|
+ uint32_t acc_flags);
|
|
|
void amdgpu_mm_wreg(struct amdgpu_device *adev, uint32_t reg, uint32_t v,
|
|
|
- bool always_indirect);
|
|
|
+ uint32_t acc_flags);
|
|
|
u32 amdgpu_io_rreg(struct amdgpu_device *adev, u32 reg);
|
|
|
void amdgpu_io_wreg(struct amdgpu_device *adev, u32 reg, u32 v);
|
|
|
|
|
@@ -1517,11 +1517,18 @@ void amdgpu_mm_wdoorbell(struct amdgpu_device *adev, u32 index, u32 v);
|
|
|
/*
|
|
|
* Registers read & write functions.
|
|
|
*/
|
|
|
-#define RREG32(reg) amdgpu_mm_rreg(adev, (reg), false)
|
|
|
-#define RREG32_IDX(reg) amdgpu_mm_rreg(adev, (reg), true)
|
|
|
-#define DREG32(reg) printk(KERN_INFO "REGISTER: " #reg " : 0x%08X\n", amdgpu_mm_rreg(adev, (reg), false))
|
|
|
-#define WREG32(reg, v) amdgpu_mm_wreg(adev, (reg), (v), false)
|
|
|
-#define WREG32_IDX(reg, v) amdgpu_mm_wreg(adev, (reg), (v), true)
|
|
|
+
|
|
|
+#define AMDGPU_REGS_IDX (1<<0)
|
|
|
+#define AMDGPU_REGS_NO_KIQ (1<<1)
|
|
|
+
|
|
|
+#define RREG32_NO_KIQ(reg) amdgpu_mm_rreg(adev, (reg), AMDGPU_REGS_NO_KIQ)
|
|
|
+#define WREG32_NO_KIQ(reg, v) amdgpu_mm_wreg(adev, (reg), (v), AMDGPU_REGS_NO_KIQ)
|
|
|
+
|
|
|
+#define RREG32(reg) amdgpu_mm_rreg(adev, (reg), 0)
|
|
|
+#define RREG32_IDX(reg) amdgpu_mm_rreg(adev, (reg), AMDGPU_REGS_IDX)
|
|
|
+#define DREG32(reg) printk(KERN_INFO "REGISTER: " #reg " : 0x%08X\n", amdgpu_mm_rreg(adev, (reg), 0))
|
|
|
+#define WREG32(reg, v) amdgpu_mm_wreg(adev, (reg), (v), 0)
|
|
|
+#define WREG32_IDX(reg, v) amdgpu_mm_wreg(adev, (reg), (v), AMDGPU_REGS_IDX)
|
|
|
#define REG_SET(FIELD, v) (((v) << FIELD##_SHIFT) & FIELD##_MASK)
|
|
|
#define REG_GET(FIELD, v) (((v) << FIELD##_SHIFT) & FIELD##_MASK)
|
|
|
#define RREG32_PCIE(reg) adev->pcie_rreg(adev, (reg))
|