Rev 6938 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 6938 | Rev 7146 | ||
---|---|---|---|
Line 349... | Line 349... | ||
349 | rdev->have_disp_power_ref = false; |
349 | rdev->have_disp_power_ref = false; |
350 | } |
350 | } |
Line 351... | Line 351... | ||
351 | 351 | ||
352 | /* drop the power reference we got coming in here */ |
352 | /* drop the power reference we got coming in here */ |
- | 353 | // pm_runtime_put_autosuspend(dev->dev); |
|
353 | // pm_runtime_put_autosuspend(dev->dev); |
354 | |
354 | return ret; |
355 | return ret; |
355 | } |
356 | } |
356 | static const struct drm_crtc_funcs radeon_crtc_funcs = { |
357 | static const struct drm_crtc_funcs radeon_crtc_funcs = { |
357 | .cursor_set = NULL, |
358 | .cursor_set = NULL, |
Line 582... | Line 583... | ||
582 | tmp = gcd(*nom, *den); |
583 | tmp = gcd(*nom, *den); |
583 | *nom /= tmp; |
584 | *nom /= tmp; |
584 | *den /= tmp; |
585 | *den /= tmp; |
Line 585... | Line 586... | ||
585 | 586 | ||
586 | /* make sure nominator is large enough */ |
587 | /* make sure nominator is large enough */ |
587 | if (*nom < nom_min) { |
588 | if (*nom < nom_min) { |
588 | tmp = DIV_ROUND_UP(nom_min, *nom); |
589 | tmp = DIV_ROUND_UP(nom_min, *nom); |
589 | *nom *= tmp; |
590 | *nom *= tmp; |
590 | *den *= tmp; |
591 | *den *= tmp; |
Line 622... | Line 623... | ||
622 | /* get matching reference and feedback divider */ |
623 | /* get matching reference and feedback divider */ |
623 | *ref_div = min(max(DIV_ROUND_CLOSEST(den, post_div), 1u), ref_div_max); |
624 | *ref_div = min(max(DIV_ROUND_CLOSEST(den, post_div), 1u), ref_div_max); |
624 | *fb_div = DIV_ROUND_CLOSEST(nom * *ref_div * post_div, den); |
625 | *fb_div = DIV_ROUND_CLOSEST(nom * *ref_div * post_div, den); |
Line 625... | Line 626... | ||
625 | 626 | ||
626 | /* limit fb divider to its maximum */ |
627 | /* limit fb divider to its maximum */ |
627 | if (*fb_div > fb_div_max) { |
628 | if (*fb_div > fb_div_max) { |
628 | *ref_div = DIV_ROUND_CLOSEST(*ref_div * fb_div_max, *fb_div); |
629 | *ref_div = DIV_ROUND_CLOSEST(*ref_div * fb_div_max, *fb_div); |
629 | *fb_div = fb_div_max; |
630 | *fb_div = fb_div_max; |
630 | } |
631 | } |
Line 1324... | Line 1325... | ||
1324 | 1325 | ||
1325 | void radeon_modeset_fini(struct radeon_device *rdev) |
1326 | void radeon_modeset_fini(struct radeon_device *rdev) |
1326 | { |
1327 | { |
Line -... | Line 1328... | ||
- | 1328 | kfree(rdev->mode_info.bios_hardcoded_edid); |
|
- | 1329 | ||
- | 1330 | /* free i2c buses */ |
|
1327 | kfree(rdev->mode_info.bios_hardcoded_edid); |
1331 | radeon_i2c_fini(rdev); |
1328 | 1332 | ||
1329 | if (rdev->mode_info.mode_config_initialized) { |
1333 | if (rdev->mode_info.mode_config_initialized) { |
1330 | // radeon_afmt_fini(rdev); |
1334 | // radeon_afmt_fini(rdev); |
1331 | // drm_kms_helper_poll_fini(rdev->ddev); |
1335 | // drm_kms_helper_poll_fini(rdev->ddev); |
1332 | // radeon_hpd_fini(rdev); |
1336 | // radeon_hpd_fini(rdev); |
1333 | // drm_mode_config_cleanup(rdev->ddev); |
1337 | // drm_mode_config_cleanup(rdev->ddev); |
1334 | rdev->mode_info.mode_config_initialized = false; |
- | |
1335 | } |
- | |
1336 | /* free i2c buses */ |
1338 | rdev->mode_info.mode_config_initialized = false; |
Line 1337... | Line 1339... | ||
1337 | radeon_i2c_fini(rdev); |
1339 | } |
1338 | } |
1340 | } |
1339 | 1341 |