drm/radeon: add r600_get_pcie_lane_support helper
authorAlex Deucher <alexander.deucher@amd.com>
Tue, 14 May 2013 21:44:31 +0000 (17:44 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Fri, 30 Aug 2013 20:30:25 +0000 (16:30 -0400)
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/radeon/r600_dpm.c
drivers/gpu/drm/radeon/r600_dpm.h

index bf851ac..34ea5d6 100644 (file)
@@ -1223,3 +1223,26 @@ enum radeon_pcie_gen r600_get_pcie_gen_support(struct radeon_device *rdev,
        }
        return RADEON_PCIE_GEN1;
 }
+
+u16 r600_get_pcie_lane_support(struct radeon_device *rdev,
+                              u16 asic_lanes,
+                              u16 default_lanes)
+{
+       switch (asic_lanes) {
+       case 0:
+       default:
+               return default_lanes;
+       case 1:
+               return 1;
+       case 2:
+               return 2;
+       case 4:
+               return 4;
+       case 8:
+               return 8;
+       case 12:
+               return 12;
+       case 16:
+               return 16;
+       }
+}
index 7c822d9..71d5d93 100644 (file)
@@ -224,4 +224,8 @@ enum radeon_pcie_gen r600_get_pcie_gen_support(struct radeon_device *rdev,
                                               enum radeon_pcie_gen asic_gen,
                                               enum radeon_pcie_gen default_gen);
 
+u16 r600_get_pcie_lane_support(struct radeon_device *rdev,
+                              u16 asic_lanes,
+                              u16 default_lanes);
+
 #endif