#include <linux/firmware.h>
#include <linux/pci.h>
#include <linux/slab.h>
#include <drm/drm_device.h>
#include <drm/radeon_drm.h>
#include <drm/drm_fourcc.h>
#include <drm/drm_framebuffer.h>
#include "atom.h"
#include "avivod.h"
#include "radeon.h"
#include "radeon_asic.h"
#include "radeon_audio.h"
#include "rv770d.h"
#include "rv770.h"
#define R700_PFP_UCODE_SIZE …
#define R700_PM4_UCODE_SIZE …
static void rv770_gpu_init(struct radeon_device *rdev);
void rv770_fini(struct radeon_device *rdev);
static void rv770_pcie_gen2_enable(struct radeon_device *rdev);
int evergreen_set_uvd_clocks(struct radeon_device *rdev, u32 vclk, u32 dclk);
int rv770_set_uvd_clocks(struct radeon_device *rdev, u32 vclk, u32 dclk)
{ … }
static const u32 r7xx_golden_registers[] = …;
static const u32 r7xx_golden_dyn_gpr_registers[] = …;
static const u32 rv770_golden_registers[] = …;
static const u32 rv770ce_golden_registers[] = …;
static const u32 rv770_mgcg_init[] = …;
static const u32 rv710_golden_registers[] = …;
static const u32 rv710_mgcg_init[] = …;
static const u32 rv730_golden_registers[] = …;
static const u32 rv730_mgcg_init[] = …;
static const u32 rv740_golden_registers[] = …;
static const u32 rv740_mgcg_init[] = …;
static void rv770_init_golden_registers(struct radeon_device *rdev)
{ … }
#define PCIE_BUS_CLK …
#define TCLK …
u32 rv770_get_xclk(struct radeon_device *rdev)
{ … }
void rv770_page_flip(struct radeon_device *rdev, int crtc_id, u64 crtc_base, bool async)
{ … }
bool rv770_page_flip_pending(struct radeon_device *rdev, int crtc_id)
{ … }
int rv770_get_temp(struct radeon_device *rdev)
{ … }
void rv770_pm_misc(struct radeon_device *rdev)
{ … }
static int rv770_pcie_gart_enable(struct radeon_device *rdev)
{ … }
static void rv770_pcie_gart_disable(struct radeon_device *rdev)
{ … }
static void rv770_pcie_gart_fini(struct radeon_device *rdev)
{ … }
static void rv770_agp_enable(struct radeon_device *rdev)
{ … }
static void rv770_mc_program(struct radeon_device *rdev)
{ … }
void r700_cp_stop(struct radeon_device *rdev)
{ … }
static int rv770_cp_load_microcode(struct radeon_device *rdev)
{ … }
void r700_cp_fini(struct radeon_device *rdev)
{ … }
void rv770_set_clk_bypass_mode(struct radeon_device *rdev)
{ … }
static void rv770_gpu_init(struct radeon_device *rdev)
{ … }
void r700_vram_gtt_location(struct radeon_device *rdev, struct radeon_mc *mc)
{ … }
static int rv770_mc_init(struct radeon_device *rdev)
{ … }
static void rv770_uvd_init(struct radeon_device *rdev)
{ … }
static void rv770_uvd_start(struct radeon_device *rdev)
{ … }
static void rv770_uvd_resume(struct radeon_device *rdev)
{ … }
static int rv770_startup(struct radeon_device *rdev)
{ … }
int rv770_resume(struct radeon_device *rdev)
{ … }
int rv770_suspend(struct radeon_device *rdev)
{ … }
int rv770_init(struct radeon_device *rdev)
{ … }
void rv770_fini(struct radeon_device *rdev)
{ … }
static void rv770_pcie_gen2_enable(struct radeon_device *rdev)
{ … }