#include <linux/pci.h>
#include <drm/drm_device.h>
#include <drm/drm_edid.h>
#include <drm/radeon_drm.h>
#include "radeon.h"
#include "radeon_legacy_encoders.h"
#include "atom.h"
#ifdef CONFIG_PPC_PMAC
#include <asm/machdep.h>
#include <asm/pmac_feature.h>
#include <asm/prom.h>
#endif
enum radeon_combios_table_offset { … };
enum radeon_combios_ddc { … };
enum radeon_combios_connector { … };
static const int legacy_connector_convert[] = …;
static uint16_t combios_get_table_offset(struct drm_device *dev,
enum radeon_combios_table_offset table)
{ … }
bool radeon_combios_check_hardcoded_edid(struct radeon_device *rdev)
{ … }
struct edid *
radeon_bios_get_hardcoded_edid(struct radeon_device *rdev)
{ … }
static struct radeon_i2c_bus_rec combios_setup_i2c_bus(struct radeon_device *rdev,
enum radeon_combios_ddc ddc,
u32 clk_mask,
u32 data_mask)
{ … }
static struct radeon_i2c_bus_rec radeon_combios_get_i2c_info_from_table(struct radeon_device *rdev)
{ … }
void radeon_combios_i2c_init(struct radeon_device *rdev)
{ … }
bool radeon_combios_get_clock_info(struct drm_device *dev)
{ … }
bool radeon_combios_sideport_present(struct radeon_device *rdev)
{ … }
static const uint32_t default_primarydac_adj[CHIP_LAST] = …;
static void radeon_legacy_get_primary_dac_info_from_table(struct radeon_device *rdev,
struct radeon_encoder_primary_dac *p_dac)
{ … }
struct radeon_encoder_primary_dac *radeon_combios_get_primary_dac_info(struct
radeon_encoder
*encoder)
{ … }
enum radeon_tv_std
radeon_combios_get_tv_info(struct radeon_device *rdev)
{ … }
static const uint32_t default_tvdac_adj[CHIP_LAST] = …;
static void radeon_legacy_get_tv_dac_info_from_table(struct radeon_device *rdev,
struct radeon_encoder_tv_dac *tv_dac)
{ … }
struct radeon_encoder_tv_dac *radeon_combios_get_tv_dac_info(struct
radeon_encoder
*encoder)
{ … }
static struct radeon_encoder_lvds *radeon_legacy_get_lvds_info_from_regs(struct
radeon_device
*rdev)
{ … }
struct radeon_encoder_lvds *radeon_combios_get_lvds_info(struct radeon_encoder
*encoder)
{ … }
static const struct radeon_tmds_pll default_tmds_pll[CHIP_LAST][4] = …;
bool radeon_legacy_get_tmds_info_from_table(struct radeon_encoder *encoder,
struct radeon_encoder_int_tmds *tmds)
{ … }
bool radeon_legacy_get_tmds_info_from_combios(struct radeon_encoder *encoder,
struct radeon_encoder_int_tmds *tmds)
{ … }
bool radeon_legacy_get_ext_tmds_info_from_table(struct radeon_encoder *encoder,
struct radeon_encoder_ext_tmds *tmds)
{ … }
bool radeon_legacy_get_ext_tmds_info_from_combios(struct radeon_encoder *encoder,
struct radeon_encoder_ext_tmds *tmds)
{ … }
bool radeon_get_legacy_connector_info_from_table(struct drm_device *dev)
{ … }
static bool radeon_apply_legacy_quirks(struct drm_device *dev,
int bios_index,
enum radeon_combios_connector
*legacy_connector,
struct radeon_i2c_bus_rec *ddc_i2c,
struct radeon_hpd *hpd)
{ … }
static bool radeon_apply_legacy_tv_quirks(struct drm_device *dev)
{ … }
static uint16_t combios_check_dl_dvi(struct drm_device *dev, int is_dvi_d)
{ … }
bool radeon_get_legacy_connector_info_from_bios(struct drm_device *dev)
{ … }
static const char *thermal_controller_names[] = …;
void radeon_combios_get_power_modes(struct radeon_device *rdev)
{ … }
void radeon_external_tmds_setup(struct drm_encoder *encoder)
{ … }
bool radeon_combios_external_tmds_setup(struct drm_encoder *encoder)
{ … }
static void combios_parse_mmio_table(struct drm_device *dev, uint16_t offset)
{ … }
static void combios_parse_pll_table(struct drm_device *dev, uint16_t offset)
{ … }
static void combios_parse_ram_reset_table(struct drm_device *dev,
uint16_t offset)
{ … }
static uint32_t combios_detect_ram(struct drm_device *dev, int ram,
int mem_addr_mapping)
{ … }
static void combios_write_ram_size(struct drm_device *dev)
{ … }
void radeon_combios_asic_init(struct drm_device *dev)
{ … }
void radeon_combios_initialize_bios_scratch_regs(struct drm_device *dev)
{ … }
void radeon_combios_output_lock(struct drm_encoder *encoder, bool lock)
{ … }
void
radeon_combios_connected_scratch_regs(struct drm_connector *connector,
struct drm_encoder *encoder,
bool connected)
{ … }
void
radeon_combios_encoder_crtc_scratch_regs(struct drm_encoder *encoder, int crtc)
{ … }
void
radeon_combios_encoder_dpms_scratch_regs(struct drm_encoder *encoder, bool on)
{ … }