#include "amdgpu.h"
#include "amdgpu_jpeg.h"
#include "amdgpu_pm.h"
#include "soc15d.h"
#include "soc15_common.h"
#define JPEG_IDLE_TIMEOUT …
static void amdgpu_jpeg_idle_work_handler(struct work_struct *work);
int amdgpu_jpeg_sw_init(struct amdgpu_device *adev)
{ … }
int amdgpu_jpeg_sw_fini(struct amdgpu_device *adev)
{ … }
int amdgpu_jpeg_suspend(struct amdgpu_device *adev)
{ … }
int amdgpu_jpeg_resume(struct amdgpu_device *adev)
{ … }
static void amdgpu_jpeg_idle_work_handler(struct work_struct *work)
{ … }
void amdgpu_jpeg_ring_begin_use(struct amdgpu_ring *ring)
{ … }
void amdgpu_jpeg_ring_end_use(struct amdgpu_ring *ring)
{ … }
int amdgpu_jpeg_dec_ring_test_ring(struct amdgpu_ring *ring)
{ … }
static int amdgpu_jpeg_dec_set_reg(struct amdgpu_ring *ring, uint32_t handle,
struct dma_fence **fence)
{ … }
int amdgpu_jpeg_dec_ring_test_ib(struct amdgpu_ring *ring, long timeout)
{ … }
int amdgpu_jpeg_process_poison_irq(struct amdgpu_device *adev,
struct amdgpu_irq_src *source,
struct amdgpu_iv_entry *entry)
{ … }
int amdgpu_jpeg_ras_late_init(struct amdgpu_device *adev, struct ras_common_if *ras_block)
{ … }
int amdgpu_jpeg_ras_sw_init(struct amdgpu_device *adev)
{ … }
int amdgpu_jpeg_psp_update_sram(struct amdgpu_device *adev, int inst_idx,
enum AMDGPU_UCODE_ID ucode_id)
{ … }