diff options
author | Alex Deucher <alexander.deucher@amd.com> | 2013-11-07 18:16:23 -0500 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2013-11-08 12:33:38 -0500 |
commit | 1cd73ff70d13a22faa95db8323382dd6d036554e (patch) | |
tree | 1ab0a734088e34a63d62f79038564ffc0bf3be4b | |
parent | d45fd24dd30a791ba0739a1d3c4fd29710d94b9f (diff) |
drm/radeon: fix-up some float to fixed conversion thinkos
Spotted by Brad Smith when porting to OpenBSD.
Noticed-by: Brad Smith <brad@comstyle.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
-rw-r--r-- | drivers/gpu/drm/radeon/rs690.c | 16 | ||||
-rw-r--r-- | drivers/gpu/drm/radeon/rv515.c | 8 |
2 files changed, 5 insertions, 19 deletions
diff --git a/drivers/gpu/drm/radeon/rs690.c b/drivers/gpu/drm/radeon/rs690.c index 1447d794c22a..1c560629575a 100644 --- a/drivers/gpu/drm/radeon/rs690.c +++ b/drivers/gpu/drm/radeon/rs690.c | |||
@@ -345,9 +345,11 @@ static void rs690_crtc_bandwidth_compute(struct radeon_device *rdev, | |||
345 | if (max_bandwidth.full > rdev->pm.sideport_bandwidth.full && | 345 | if (max_bandwidth.full > rdev->pm.sideport_bandwidth.full && |
346 | rdev->pm.sideport_bandwidth.full) | 346 | rdev->pm.sideport_bandwidth.full) |
347 | max_bandwidth = rdev->pm.sideport_bandwidth; | 347 | max_bandwidth = rdev->pm.sideport_bandwidth; |
348 | read_delay_latency.full = dfixed_const(370 * 800 * 1000); | 348 | read_delay_latency.full = dfixed_const(370 * 800); |
349 | read_delay_latency.full = dfixed_div(read_delay_latency, | 349 | a.full = dfixed_const(1000); |
350 | rdev->pm.igp_sideport_mclk); | 350 | b.full = dfixed_div(rdev->pm.igp_sideport_mclk, a); |
351 | read_delay_latency.full = dfixed_div(read_delay_latency, b); | ||
352 | read_delay_latency.full = dfixed_mul(read_delay_latency, a); | ||
351 | } else { | 353 | } else { |
352 | if (max_bandwidth.full > rdev->pm.k8_bandwidth.full && | 354 | if (max_bandwidth.full > rdev->pm.k8_bandwidth.full && |
353 | rdev->pm.k8_bandwidth.full) | 355 | rdev->pm.k8_bandwidth.full) |
@@ -488,14 +490,10 @@ static void rs690_compute_mode_priority(struct radeon_device *rdev, | |||
488 | } | 490 | } |
489 | if (wm0->priority_mark.full > priority_mark02.full) | 491 | if (wm0->priority_mark.full > priority_mark02.full) |
490 | priority_mark02.full = wm0->priority_mark.full; | 492 | priority_mark02.full = wm0->priority_mark.full; |
491 | if (dfixed_trunc(priority_mark02) < 0) | ||
492 | priority_mark02.full = 0; | ||
493 | if (wm0->priority_mark_max.full > priority_mark02.full) | 493 | if (wm0->priority_mark_max.full > priority_mark02.full) |
494 | priority_mark02.full = wm0->priority_mark_max.full; | 494 | priority_mark02.full = wm0->priority_mark_max.full; |
495 | if (wm1->priority_mark.full > priority_mark12.full) | 495 | if (wm1->priority_mark.full > priority_mark12.full) |
496 | priority_mark12.full = wm1->priority_mark.full; | 496 | priority_mark12.full = wm1->priority_mark.full; |
497 | if (dfixed_trunc(priority_mark12) < 0) | ||
498 | priority_mark12.full = 0; | ||
499 | if (wm1->priority_mark_max.full > priority_mark12.full) | 497 | if (wm1->priority_mark_max.full > priority_mark12.full) |
500 | priority_mark12.full = wm1->priority_mark_max.full; | 498 | priority_mark12.full = wm1->priority_mark_max.full; |
501 | *d1mode_priority_a_cnt = dfixed_trunc(priority_mark02); | 499 | *d1mode_priority_a_cnt = dfixed_trunc(priority_mark02); |
@@ -526,8 +524,6 @@ static void rs690_compute_mode_priority(struct radeon_device *rdev, | |||
526 | } | 524 | } |
527 | if (wm0->priority_mark.full > priority_mark02.full) | 525 | if (wm0->priority_mark.full > priority_mark02.full) |
528 | priority_mark02.full = wm0->priority_mark.full; | 526 | priority_mark02.full = wm0->priority_mark.full; |
529 | if (dfixed_trunc(priority_mark02) < 0) | ||
530 | priority_mark02.full = 0; | ||
531 | if (wm0->priority_mark_max.full > priority_mark02.full) | 527 | if (wm0->priority_mark_max.full > priority_mark02.full) |
532 | priority_mark02.full = wm0->priority_mark_max.full; | 528 | priority_mark02.full = wm0->priority_mark_max.full; |
533 | *d1mode_priority_a_cnt = dfixed_trunc(priority_mark02); | 529 | *d1mode_priority_a_cnt = dfixed_trunc(priority_mark02); |
@@ -555,8 +551,6 @@ static void rs690_compute_mode_priority(struct radeon_device *rdev, | |||
555 | } | 551 | } |
556 | if (wm1->priority_mark.full > priority_mark12.full) | 552 | if (wm1->priority_mark.full > priority_mark12.full) |
557 | priority_mark12.full = wm1->priority_mark.full; | 553 | priority_mark12.full = wm1->priority_mark.full; |
558 | if (dfixed_trunc(priority_mark12) < 0) | ||
559 | priority_mark12.full = 0; | ||
560 | if (wm1->priority_mark_max.full > priority_mark12.full) | 554 | if (wm1->priority_mark_max.full > priority_mark12.full) |
561 | priority_mark12.full = wm1->priority_mark_max.full; | 555 | priority_mark12.full = wm1->priority_mark_max.full; |
562 | *d2mode_priority_a_cnt = dfixed_trunc(priority_mark12); | 556 | *d2mode_priority_a_cnt = dfixed_trunc(priority_mark12); |
diff --git a/drivers/gpu/drm/radeon/rv515.c b/drivers/gpu/drm/radeon/rv515.c index 873eb4b193b4..5d1c316115ef 100644 --- a/drivers/gpu/drm/radeon/rv515.c +++ b/drivers/gpu/drm/radeon/rv515.c | |||
@@ -1155,14 +1155,10 @@ static void rv515_compute_mode_priority(struct radeon_device *rdev, | |||
1155 | } | 1155 | } |
1156 | if (wm0->priority_mark.full > priority_mark02.full) | 1156 | if (wm0->priority_mark.full > priority_mark02.full) |
1157 | priority_mark02.full = wm0->priority_mark.full; | 1157 | priority_mark02.full = wm0->priority_mark.full; |
1158 | if (dfixed_trunc(priority_mark02) < 0) | ||
1159 | priority_mark02.full = 0; | ||
1160 | if (wm0->priority_mark_max.full > priority_mark02.full) | 1158 | if (wm0->priority_mark_max.full > priority_mark02.full) |
1161 | priority_mark02.full = wm0->priority_mark_max.full; | 1159 | priority_mark02.full = wm0->priority_mark_max.full; |
1162 | if (wm1->priority_mark.full > priority_mark12.full) | 1160 | if (wm1->priority_mark.full > priority_mark12.full) |
1163 | priority_mark12.full = wm1->priority_mark.full; | 1161 | priority_mark12.full = wm1->priority_mark.full; |
1164 | if (dfixed_trunc(priority_mark12) < 0) | ||
1165 | priority_mark12.full = 0; | ||
1166 | if (wm1->priority_mark_max.full > priority_mark12.full) | 1162 | if (wm1->priority_mark_max.full > priority_mark12.full) |
1167 | priority_mark12.full = wm1->priority_mark_max.full; | 1163 | priority_mark12.full = wm1->priority_mark_max.full; |
1168 | *d1mode_priority_a_cnt = dfixed_trunc(priority_mark02); | 1164 | *d1mode_priority_a_cnt = dfixed_trunc(priority_mark02); |
@@ -1193,8 +1189,6 @@ static void rv515_compute_mode_priority(struct radeon_device *rdev, | |||
1193 | } | 1189 | } |
1194 | if (wm0->priority_mark.full > priority_mark02.full) | 1190 | if (wm0->priority_mark.full > priority_mark02.full) |
1195 | priority_mark02.full = wm0->priority_mark.full; | 1191 | priority_mark02.full = wm0->priority_mark.full; |
1196 | if (dfixed_trunc(priority_mark02) < 0) | ||
1197 | priority_mark02.full = 0; | ||
1198 | if (wm0->priority_mark_max.full > priority_mark02.full) | 1192 | if (wm0->priority_mark_max.full > priority_mark02.full) |
1199 | priority_mark02.full = wm0->priority_mark_max.full; | 1193 | priority_mark02.full = wm0->priority_mark_max.full; |
1200 | *d1mode_priority_a_cnt = dfixed_trunc(priority_mark02); | 1194 | *d1mode_priority_a_cnt = dfixed_trunc(priority_mark02); |
@@ -1222,8 +1216,6 @@ static void rv515_compute_mode_priority(struct radeon_device *rdev, | |||
1222 | } | 1216 | } |
1223 | if (wm1->priority_mark.full > priority_mark12.full) | 1217 | if (wm1->priority_mark.full > priority_mark12.full) |
1224 | priority_mark12.full = wm1->priority_mark.full; | 1218 | priority_mark12.full = wm1->priority_mark.full; |
1225 | if (dfixed_trunc(priority_mark12) < 0) | ||
1226 | priority_mark12.full = 0; | ||
1227 | if (wm1->priority_mark_max.full > priority_mark12.full) | 1219 | if (wm1->priority_mark_max.full > priority_mark12.full) |
1228 | priority_mark12.full = wm1->priority_mark_max.full; | 1220 | priority_mark12.full = wm1->priority_mark_max.full; |
1229 | *d2mode_priority_a_cnt = dfixed_trunc(priority_mark12); | 1221 | *d2mode_priority_a_cnt = dfixed_trunc(priority_mark12); |