aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/amd/amdgpu/amdgpu.h
diff options
context:
space:
mode:
authorDave Airlie <airlied@redhat.com>2018-03-20 21:46:05 -0400
committerDave Airlie <airlied@redhat.com>2018-03-20 21:46:05 -0400
commit287d2ac36b6f2830ea4ef66c110abc0f47a9a658 (patch)
tree04214f156461a95c2f7ca5a8821063cad7fc515e /drivers/gpu/drm/amd/amdgpu/amdgpu.h
parent963976cfe9c54d4d9e725e61c90c47a4af6b5ea2 (diff)
parent6da2b9332c572fcda94de9631f8fa514f574388a (diff)
Merge branch 'drm-next-4.17' of git://people.freedesktop.org/~agd5f/linux into drm-next
- Continued cleanup and restructuring of powerplay - Fetch VRAM type from vbios rather than hardcoding for SOC15 asics - Allow ttm to drop its backing store when drivers don't need it - DC bandwidth calc updates - Enable DC backlight control pre-DCE11 asics - Enable DC on all supported asics - DC Fixes for planes due to the way our hw is ordered vs what drm expects - DC CTM/regamma fixes - Misc cleanup and bug fixes * 'drm-next-4.17' of git://people.freedesktop.org/~agd5f/linux: (89 commits) amdgpu/dm: Default PRE_VEGA ASIC support to 'y' drm/amd/pp: Remove the cgs wrapper for notify smu version on APU drm/amd/display: fix dereferencing possible ERR_PTR() drm/amd/display: Refine disable VGA drm/amdgpu: Improve documentation of bo_ptr in amdgpu_bo_create_kernel drm/radeon: Don't turn off DP sink when disconnected drm/amd/pp: Rename file name cz_* to smu8_* drm/amd/pp: Replace function/struct name cz_* with smu8_* drm/amd/pp: Remove unneeded void * casts in cz_hwmgr.c/cz_smumgr.c drm/amd/pp: Mv cz uvd/vce pg/dpm functions to cz_hwmgr.c drm/amd/pp: Remove dead header file pp_asicblocks.h drm/amd/pp: Delete dead code on cz_clockpowergating.c drm/amdgpu: Call amdgpu_ucode_fini_bo in amd_powerplay.c drm/amdgpu: Remove wrapper layer of smu ip functions drm/amdgpu: Don't compared ip_block_type with ip_block_index drm/amdgpu: Plus NULL function pointer check drm/amd/pp: Move helper functions to smu_help.c drm/amd/pp: Replace rv_* with smu10_* drm/amd/pp: Fix function parameter not correct drm/amd/pp: Add rv_copy_table_from/to_smc to smu backend function table ...
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu.h')
-rw-r--r--drivers/gpu/drm/amd/amdgpu/amdgpu.h12
1 files changed, 7 insertions, 5 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu.h b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
index eba4abc8aac6..f44a83ab2bf4 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu.h
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
@@ -441,7 +441,7 @@ struct amdgpu_sa_bo {
441void amdgpu_gem_force_release(struct amdgpu_device *adev); 441void amdgpu_gem_force_release(struct amdgpu_device *adev);
442int amdgpu_gem_object_create(struct amdgpu_device *adev, unsigned long size, 442int amdgpu_gem_object_create(struct amdgpu_device *adev, unsigned long size,
443 int alignment, u32 initial_domain, 443 int alignment, u32 initial_domain,
444 u64 flags, bool kernel, 444 u64 flags, enum ttm_bo_type type,
445 struct reservation_object *resv, 445 struct reservation_object *resv,
446 struct drm_gem_object **obj); 446 struct drm_gem_object **obj);
447 447
@@ -1081,8 +1081,6 @@ struct amdgpu_wb {
1081int amdgpu_device_wb_get(struct amdgpu_device *adev, u32 *wb); 1081int amdgpu_device_wb_get(struct amdgpu_device *adev, u32 *wb);
1082void amdgpu_device_wb_free(struct amdgpu_device *adev, u32 wb); 1082void amdgpu_device_wb_free(struct amdgpu_device *adev, u32 wb);
1083 1083
1084void amdgpu_device_get_pcie_info(struct amdgpu_device *adev);
1085
1086/* 1084/*
1087 * SDMA 1085 * SDMA
1088 */ 1086 */
@@ -1395,9 +1393,7 @@ enum amd_hw_ip_block_type {
1395#define HWIP_MAX_INSTANCE 6 1393#define HWIP_MAX_INSTANCE 6
1396 1394
1397struct amd_powerplay { 1395struct amd_powerplay {
1398 struct cgs_device *cgs_device;
1399 void *pp_handle; 1396 void *pp_handle;
1400 const struct amd_ip_funcs *ip_funcs;
1401 const struct amd_pm_funcs *pp_funcs; 1397 const struct amd_pm_funcs *pp_funcs;
1402}; 1398};
1403 1399
@@ -1632,6 +1628,9 @@ uint32_t amdgpu_mm_rreg(struct amdgpu_device *adev, uint32_t reg,
1632 uint32_t acc_flags); 1628 uint32_t acc_flags);
1633void amdgpu_mm_wreg(struct amdgpu_device *adev, uint32_t reg, uint32_t v, 1629void amdgpu_mm_wreg(struct amdgpu_device *adev, uint32_t reg, uint32_t v,
1634 uint32_t acc_flags); 1630 uint32_t acc_flags);
1631void amdgpu_mm_wreg8(struct amdgpu_device *adev, uint32_t offset, uint8_t value);
1632uint8_t amdgpu_mm_rreg8(struct amdgpu_device *adev, uint32_t offset);
1633
1635u32 amdgpu_io_rreg(struct amdgpu_device *adev, u32 reg); 1634u32 amdgpu_io_rreg(struct amdgpu_device *adev, u32 reg);
1636void amdgpu_io_wreg(struct amdgpu_device *adev, u32 reg, u32 v); 1635void amdgpu_io_wreg(struct amdgpu_device *adev, u32 reg, u32 v);
1637 1636
@@ -1655,6 +1654,9 @@ int emu_soc_asic_init(struct amdgpu_device *adev);
1655#define RREG32_NO_KIQ(reg) amdgpu_mm_rreg(adev, (reg), AMDGPU_REGS_NO_KIQ) 1654#define RREG32_NO_KIQ(reg) amdgpu_mm_rreg(adev, (reg), AMDGPU_REGS_NO_KIQ)
1656#define WREG32_NO_KIQ(reg, v) amdgpu_mm_wreg(adev, (reg), (v), AMDGPU_REGS_NO_KIQ) 1655#define WREG32_NO_KIQ(reg, v) amdgpu_mm_wreg(adev, (reg), (v), AMDGPU_REGS_NO_KIQ)
1657 1656
1657#define RREG8(reg) amdgpu_mm_rreg8(adev, (reg))
1658#define WREG8(reg, v) amdgpu_mm_wreg8(adev, (reg), (v))
1659
1658#define RREG32(reg) amdgpu_mm_rreg(adev, (reg), 0) 1660#define RREG32(reg) amdgpu_mm_rreg(adev, (reg), 0)
1659#define RREG32_IDX(reg) amdgpu_mm_rreg(adev, (reg), AMDGPU_REGS_IDX) 1661#define RREG32_IDX(reg) amdgpu_mm_rreg(adev, (reg), AMDGPU_REGS_IDX)
1660#define DREG32(reg) printk(KERN_INFO "REGISTER: " #reg " : 0x%08X\n", amdgpu_mm_rreg(adev, (reg), 0)) 1662#define DREG32(reg) printk(KERN_INFO "REGISTER: " #reg " : 0x%08X\n", amdgpu_mm_rreg(adev, (reg), 0))