#include <linux/firmware.h>
#include <linux/module.h>
#include <linux/debugfs.h>
#include "amdgpu.h"
#include "soc15_common.h"
#include "soc21.h"
#include "vcn/vcn_4_0_0_offset.h"
#include "vcn/vcn_4_0_0_sh_mask.h"
#include "amdgpu_umsch_mm.h"
#include "umsch_mm_4_0_api_def.h"
#include "umsch_mm_v4_0.h"
#define regUVD_IPX_DLDO_CONFIG …
#define regUVD_IPX_DLDO_CONFIG_BASE_IDX …
#define regUVD_IPX_DLDO_STATUS …
#define regUVD_IPX_DLDO_STATUS_BASE_IDX …
#define UVD_IPX_DLDO_CONFIG__ONO0_PWR_CONFIG__SHIFT …
#define UVD_IPX_DLDO_CONFIG__ONO0_PWR_CONFIG_MASK …
#define UVD_IPX_DLDO_STATUS__ONO0_PWR_STATUS__SHIFT …
#define UVD_IPX_DLDO_STATUS__ONO0_PWR_STATUS_MASK …
static int umsch_mm_v4_0_load_microcode(struct amdgpu_umsch_mm *umsch)
{ … }
static void umsch_mm_v4_0_aggregated_doorbell_init(struct amdgpu_umsch_mm *umsch)
{ … }
static int umsch_mm_v4_0_ring_start(struct amdgpu_umsch_mm *umsch)
{ … }
static int umsch_mm_v4_0_ring_stop(struct amdgpu_umsch_mm *umsch)
{ … }
static int umsch_mm_v4_0_set_hw_resources(struct amdgpu_umsch_mm *umsch)
{ … }
static int umsch_mm_v4_0_add_queue(struct amdgpu_umsch_mm *umsch,
struct umsch_mm_add_queue_input *input_ptr)
{ … }
static int umsch_mm_v4_0_remove_queue(struct amdgpu_umsch_mm *umsch,
struct umsch_mm_remove_queue_input *input_ptr)
{ … }
static int umsch_mm_v4_0_set_regs(struct amdgpu_umsch_mm *umsch)
{ … }
static const struct umsch_mm_funcs umsch_mm_v4_0_funcs = …;
void umsch_mm_v4_0_set_funcs(struct amdgpu_umsch_mm *umsch)
{ … }