Skip to content

Commit

Permalink
drm/radeon: allow pcie gen2 speed on Cayman
Browse files Browse the repository at this point in the history
Looks like the same pcie gen2 speed initialization for
Evergreen also works on Cayman and seems to come up fine,
so enable it if the module parameter says so

Signed-off-by: Ilija Hadzic <ihadzic@research.bell-labs.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
  • Loading branch information
Ilija Hadzic authored and Dave Airlie committed Oct 12, 2011
1 parent cd54033 commit b07759b
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 2 deletions.
4 changes: 2 additions & 2 deletions drivers/gpu/drm/radeon/evergreen.c
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@

static void evergreen_gpu_init(struct radeon_device *rdev);
void evergreen_fini(struct radeon_device *rdev);
static void evergreen_pcie_gen2_enable(struct radeon_device *rdev);
void evergreen_pcie_gen2_enable(struct radeon_device *rdev);

void evergreen_fix_pci_max_read_req_size(struct radeon_device *rdev)
{
Expand Down Expand Up @@ -3317,7 +3317,7 @@ void evergreen_fini(struct radeon_device *rdev)
rdev->bios = NULL;
}

static void evergreen_pcie_gen2_enable(struct radeon_device *rdev)
void evergreen_pcie_gen2_enable(struct radeon_device *rdev)
{
u32 link_width_cntl, speed_cntl;

Expand Down
4 changes: 4 additions & 0 deletions drivers/gpu/drm/radeon/ni.c
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,7 @@ extern void evergreen_mc_program(struct radeon_device *rdev);
extern void evergreen_irq_suspend(struct radeon_device *rdev);
extern int evergreen_mc_init(struct radeon_device *rdev);
extern void evergreen_fix_pci_max_read_req_size(struct radeon_device *rdev);
extern void evergreen_pcie_gen2_enable(struct radeon_device *rdev);

#define EVERGREEN_PFP_UCODE_SIZE 1120
#define EVERGREEN_PM4_UCODE_SIZE 1376
Expand Down Expand Up @@ -1376,6 +1377,9 @@ static int cayman_startup(struct radeon_device *rdev)
{
int r;

/* enable pcie gen2 link */
evergreen_pcie_gen2_enable(rdev);

if (!rdev->me_fw || !rdev->pfp_fw || !rdev->rlc_fw || !rdev->mc_fw) {
r = ni_init_microcode(rdev);
if (r) {
Expand Down

0 comments on commit b07759b

Please sign in to comment.