#include <linux/debugfs.h>
#include <linux/seq_file.h>
#include <linux/slab.h>
#include <drm/drm_device.h>
#include <drm/drm_file.h>
#include "atom.h"
#include "radeon.h"
#include "radeon_asic.h"
#include "rv515_reg_safe.h"
#include "rv515d.h"
static void rv515_gpu_init(struct radeon_device *rdev);
int rv515_mc_wait_for_idle(struct radeon_device *rdev);
static const u32 crtc_offsets[2] = …;
void rv515_ring_start(struct radeon_device *rdev, struct radeon_ring *ring)
{ … }
int rv515_mc_wait_for_idle(struct radeon_device *rdev)
{ … }
void rv515_vga_render_disable(struct radeon_device *rdev)
{ … }
static void rv515_gpu_init(struct radeon_device *rdev)
{ … }
static void rv515_vram_get_type(struct radeon_device *rdev)
{ … }
static void rv515_mc_init(struct radeon_device *rdev)
{ … }
uint32_t rv515_mc_rreg(struct radeon_device *rdev, uint32_t reg)
{ … }
void rv515_mc_wreg(struct radeon_device *rdev, uint32_t reg, uint32_t v)
{ … }
#if defined(CONFIG_DEBUG_FS)
static int rv515_debugfs_pipes_info_show(struct seq_file *m, void *unused)
{ … }
static int rv515_debugfs_ga_info_show(struct seq_file *m, void *unused)
{ … }
DEFINE_SHOW_ATTRIBUTE(…);
DEFINE_SHOW_ATTRIBUTE(…);
#endif
void rv515_debugfs(struct radeon_device *rdev)
{ … }
void rv515_mc_stop(struct radeon_device *rdev, struct rv515_mc_save *save)
{ … }
void rv515_mc_resume(struct radeon_device *rdev, struct rv515_mc_save *save)
{ … }
static void rv515_mc_program(struct radeon_device *rdev)
{ … }
void rv515_clock_startup(struct radeon_device *rdev)
{ … }
static int rv515_startup(struct radeon_device *rdev)
{ … }
int rv515_resume(struct radeon_device *rdev)
{ … }
int rv515_suspend(struct radeon_device *rdev)
{ … }
void rv515_set_safe_registers(struct radeon_device *rdev)
{ … }
void rv515_fini(struct radeon_device *rdev)
{ … }
int rv515_init(struct radeon_device *rdev)
{ … }
void atom_rv515_force_tv_scaler(struct radeon_device *rdev, struct radeon_crtc *crtc)
{ … }
struct rv515_watermark { … };
static void rv515_crtc_bandwidth_compute(struct radeon_device *rdev,
struct radeon_crtc *crtc,
struct rv515_watermark *wm,
bool low)
{ … }
static void rv515_compute_mode_priority(struct radeon_device *rdev,
struct rv515_watermark *wm0,
struct rv515_watermark *wm1,
struct drm_display_mode *mode0,
struct drm_display_mode *mode1,
u32 *d1mode_priority_a_cnt,
u32 *d2mode_priority_a_cnt)
{ … }
void rv515_bandwidth_avivo_update(struct radeon_device *rdev)
{ … }
void rv515_bandwidth_update(struct radeon_device *rdev)
{ … }