OSDN Git Service

drm/radeon/dpm: add an enum for pcie gen selection
authorAlex Deucher <alexander.deucher@amd.com>
Mon, 18 Mar 2013 21:03:01 +0000 (17:03 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Thu, 27 Jun 2013 23:16:33 +0000 (19:16 -0400)
This makes it easier the understand what the code is
doing.

Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/radeon/cypress_dpm.c
drivers/gpu/drm/radeon/radeon.h

index c7cb19e..1c6c3a3 100644 (file)
@@ -344,7 +344,7 @@ void cypress_advertise_gen2_capability(struct radeon_device *rdev)
 
 }
 
-static u32 cypress_get_maximum_link_speed(struct radeon_ps *radeon_state)
+static enum radeon_pcie_gen cypress_get_maximum_link_speed(struct radeon_ps *radeon_state)
 {
        struct rv7xx_ps *state = rv770_get_ps(radeon_state);
 
@@ -357,14 +357,16 @@ void cypress_notify_link_speed_change_after_state_change(struct radeon_device *r
                                                         struct radeon_ps *radeon_new_state,
                                                         struct radeon_ps *radeon_current_state)
 {
-       u32 pcie_link_speed_target =  cypress_get_maximum_link_speed(radeon_new_state);
-       u32 pcie_link_speed_current = cypress_get_maximum_link_speed(radeon_current_state);
+       enum radeon_pcie_gen pcie_link_speed_target =
+               cypress_get_maximum_link_speed(radeon_new_state);
+       enum radeon_pcie_gen pcie_link_speed_current =
+               cypress_get_maximum_link_speed(radeon_current_state);
        u8 request;
 
        if (pcie_link_speed_target < pcie_link_speed_current) {
-               if (pcie_link_speed_target == 0)
+               if (pcie_link_speed_target == RADEON_PCIE_GEN1)
                        request = PCIE_PERF_REQ_PECI_GEN1;
-               else if (pcie_link_speed_target == 1)
+               else if (pcie_link_speed_target == RADEON_PCIE_GEN2)
                        request = PCIE_PERF_REQ_PECI_GEN2;
                else
                        request = PCIE_PERF_REQ_PECI_GEN3;
@@ -377,14 +379,16 @@ void cypress_notify_link_speed_change_before_state_change(struct radeon_device *
                                                          struct radeon_ps *radeon_new_state,
                                                          struct radeon_ps *radeon_current_state)
 {
-       u32 pcie_link_speed_target =  cypress_get_maximum_link_speed(radeon_new_state);
-       u32 pcie_link_speed_current = cypress_get_maximum_link_speed(radeon_current_state);
+       enum radeon_pcie_gen pcie_link_speed_target =
+               cypress_get_maximum_link_speed(radeon_new_state);
+       enum radeon_pcie_gen pcie_link_speed_current =
+               cypress_get_maximum_link_speed(radeon_current_state);
        u8 request;
 
        if (pcie_link_speed_target > pcie_link_speed_current) {
-               if (pcie_link_speed_target == 0)
+               if (pcie_link_speed_target == RADEON_PCIE_GEN1)
                        request = PCIE_PERF_REQ_PECI_GEN1;
-               else if (pcie_link_speed_target == 1)
+               else if (pcie_link_speed_target == RADEON_PCIE_GEN2)
                        request = PCIE_PERF_REQ_PECI_GEN2;
                else
                        request = PCIE_PERF_REQ_PECI_GEN3;
index 4ea447d..fbf9e13 100644 (file)
@@ -1298,6 +1298,13 @@ struct radeon_dpm_fan {
        bool ucode_fan_control;
 };
 
+enum radeon_pcie_gen {
+       RADEON_PCIE_GEN1 = 0,
+       RADEON_PCIE_GEN2 = 1,
+       RADEON_PCIE_GEN3 = 2,
+       RADEON_PCIE_GEN_INVALID = 0xffff
+};
+
 struct radeon_dpm {
        struct radeon_ps        *ps;
        /* number of valid power states */