#include "amdgpu.h"
#include "amdgpu_ras.h"
#include "mmhub_v9_4.h"
#include "mmhub/mmhub_9_4_1_offset.h"
#include "mmhub/mmhub_9_4_1_sh_mask.h"
#include "mmhub/mmhub_9_4_1_default.h"
#include "athub/athub_1_0_offset.h"
#include "athub/athub_1_0_sh_mask.h"
#include "vega10_enum.h"
#include "soc15.h"
#include "soc15_common.h"
#define MMHUB_NUM_INSTANCES …
#define MMHUB_INSTANCE_REGISTER_OFFSET …
static u64 mmhub_v9_4_get_fb_location(struct amdgpu_device *adev)
{ … }
static void mmhub_v9_4_setup_hubid_vm_pt_regs(struct amdgpu_device *adev, int hubid,
uint32_t vmid, uint64_t value)
{ … }
static void mmhub_v9_4_init_gart_aperture_regs(struct amdgpu_device *adev,
int hubid)
{ … }
static void mmhub_v9_4_setup_vm_pt_regs(struct amdgpu_device *adev, uint32_t vmid,
uint64_t page_table_base)
{ … }
static void mmhub_v9_4_init_system_aperture_regs(struct amdgpu_device *adev,
int hubid)
{ … }
static void mmhub_v9_4_init_tlb_regs(struct amdgpu_device *adev, int hubid)
{ … }
static void mmhub_v9_4_init_cache_regs(struct amdgpu_device *adev, int hubid)
{ … }
static void mmhub_v9_4_enable_system_domain(struct amdgpu_device *adev,
int hubid)
{ … }
static void mmhub_v9_4_disable_identity_aperture(struct amdgpu_device *adev,
int hubid)
{ … }
static void mmhub_v9_4_setup_vmid_config(struct amdgpu_device *adev, int hubid)
{ … }
static void mmhub_v9_4_program_invalidation(struct amdgpu_device *adev,
int hubid)
{ … }
static int mmhub_v9_4_gart_enable(struct amdgpu_device *adev)
{ … }
static void mmhub_v9_4_gart_disable(struct amdgpu_device *adev)
{ … }
static void mmhub_v9_4_set_fault_enable_default(struct amdgpu_device *adev, bool value)
{ … }
static void mmhub_v9_4_init(struct amdgpu_device *adev)
{ … }
static void mmhub_v9_4_update_medium_grain_clock_gating(struct amdgpu_device *adev,
bool enable)
{ … }
static void mmhub_v9_4_update_medium_grain_light_sleep(struct amdgpu_device *adev,
bool enable)
{ … }
static int mmhub_v9_4_set_clockgating(struct amdgpu_device *adev,
enum amd_clockgating_state state)
{ … }
static void mmhub_v9_4_get_clockgating(struct amdgpu_device *adev, u64 *flags)
{ … }
static const struct soc15_ras_field_entry mmhub_v9_4_ras_fields[] = …;
static const struct soc15_reg_entry mmhub_v9_4_edc_cnt_regs[] = …;
static int mmhub_v9_4_get_ras_error_count(struct amdgpu_device *adev,
const struct soc15_reg_entry *reg,
uint32_t value,
uint32_t *sec_count,
uint32_t *ded_count)
{ … }
static void mmhub_v9_4_query_ras_error_count(struct amdgpu_device *adev,
void *ras_error_status)
{ … }
static void mmhub_v9_4_reset_ras_error_count(struct amdgpu_device *adev)
{ … }
static const struct soc15_reg_entry mmhub_v9_4_err_status_regs[] = …;
static void mmhub_v9_4_query_ras_error_status(struct amdgpu_device *adev)
{ … }
const struct amdgpu_ras_block_hw_ops mmhub_v9_4_ras_hw_ops = …;
struct amdgpu_mmhub_ras mmhub_v9_4_ras = …;
const struct amdgpu_mmhub_funcs mmhub_v9_4_funcs = …;