diff options
author | Alex Deucher <alexander.deucher@amd.com> | 2013-08-08 18:00:10 -0400 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2013-08-30 16:30:49 -0400 |
commit | 0116e1efafe09a2d99042943a850deaa1d9b069c (patch) | |
tree | 04054fb3c4bd40024997c20cacc4bdf78802dc47 /drivers/gpu/drm/radeon/radeon_asic.c | |
parent | 64d8a728c7deb40e8db3c09b614ffe90415c7664 (diff) |
drm/radeon: use new cg/pg flags for SI
Allows us finer grained control over clock and
powergating on SI.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/radeon/radeon_asic.c')
-rw-r--r-- | drivers/gpu/drm/radeon/radeon_asic.c | 98 |
1 files changed, 98 insertions, 0 deletions
diff --git a/drivers/gpu/drm/radeon/radeon_asic.c b/drivers/gpu/drm/radeon/radeon_asic.c index 69f3122779c3..dcdf5e07490d 100644 --- a/drivers/gpu/drm/radeon/radeon_asic.c +++ b/drivers/gpu/drm/radeon/radeon_asic.c | |||
@@ -2335,6 +2335,104 @@ int radeon_asic_init(struct radeon_device *rdev) | |||
2335 | rdev->has_uvd = false; | 2335 | rdev->has_uvd = false; |
2336 | else | 2336 | else |
2337 | rdev->has_uvd = true; | 2337 | rdev->has_uvd = true; |
2338 | switch (rdev->family) { | ||
2339 | case CHIP_TAHITI: | ||
2340 | rdev->cg_flags = | ||
2341 | RADEON_CG_SUPPORT_GFX_MGCG | | ||
2342 | RADEON_CG_SUPPORT_GFX_MGLS | | ||
2343 | RADEON_CG_SUPPORT_GFX_CGCG | | ||
2344 | RADEON_CG_SUPPORT_GFX_CGLS | | ||
2345 | RADEON_CG_SUPPORT_GFX_CGTS | | ||
2346 | RADEON_CG_SUPPORT_GFX_CP_LS | | ||
2347 | RADEON_CG_SUPPORT_MC_MGCG | | ||
2348 | RADEON_CG_SUPPORT_SDMA_MGCG | | ||
2349 | RADEON_CG_SUPPORT_BIF_LS | | ||
2350 | RADEON_CG_SUPPORT_VCE_MGCG | | ||
2351 | RADEON_CG_SUPPORT_UVD_MGCG | | ||
2352 | RADEON_CG_SUPPORT_HDP_LS | | ||
2353 | RADEON_CG_SUPPORT_HDP_MGCG; | ||
2354 | rdev->pg_flags = 0; | ||
2355 | break; | ||
2356 | case CHIP_PITCAIRN: | ||
2357 | rdev->cg_flags = | ||
2358 | RADEON_CG_SUPPORT_GFX_MGCG | | ||
2359 | RADEON_CG_SUPPORT_GFX_MGLS | | ||
2360 | RADEON_CG_SUPPORT_GFX_CGCG | | ||
2361 | RADEON_CG_SUPPORT_GFX_CGLS | | ||
2362 | RADEON_CG_SUPPORT_GFX_CGTS | | ||
2363 | RADEON_CG_SUPPORT_GFX_CP_LS | | ||
2364 | RADEON_CG_SUPPORT_GFX_RLC_LS | | ||
2365 | RADEON_CG_SUPPORT_MC_LS | | ||
2366 | RADEON_CG_SUPPORT_MC_MGCG | | ||
2367 | RADEON_CG_SUPPORT_SDMA_MGCG | | ||
2368 | RADEON_CG_SUPPORT_BIF_LS | | ||
2369 | RADEON_CG_SUPPORT_VCE_MGCG | | ||
2370 | RADEON_CG_SUPPORT_UVD_MGCG | | ||
2371 | RADEON_CG_SUPPORT_HDP_LS | | ||
2372 | RADEON_CG_SUPPORT_HDP_MGCG; | ||
2373 | rdev->pg_flags = 0; | ||
2374 | break; | ||
2375 | case CHIP_VERDE: | ||
2376 | rdev->cg_flags = | ||
2377 | RADEON_CG_SUPPORT_GFX_MGCG | | ||
2378 | RADEON_CG_SUPPORT_GFX_MGLS | | ||
2379 | RADEON_CG_SUPPORT_GFX_CGCG | | ||
2380 | RADEON_CG_SUPPORT_GFX_CGLS | | ||
2381 | RADEON_CG_SUPPORT_GFX_CGTS | | ||
2382 | RADEON_CG_SUPPORT_GFX_CP_LS | | ||
2383 | RADEON_CG_SUPPORT_GFX_RLC_LS | | ||
2384 | RADEON_CG_SUPPORT_MC_LS | | ||
2385 | RADEON_CG_SUPPORT_MC_MGCG | | ||
2386 | RADEON_CG_SUPPORT_SDMA_MGCG | | ||
2387 | RADEON_CG_SUPPORT_BIF_LS | | ||
2388 | RADEON_CG_SUPPORT_VCE_MGCG | | ||
2389 | RADEON_CG_SUPPORT_UVD_MGCG | | ||
2390 | RADEON_CG_SUPPORT_HDP_LS | | ||
2391 | RADEON_CG_SUPPORT_HDP_MGCG; | ||
2392 | rdev->pg_flags = 0; | ||
2393 | /*RADEON_PG_SUPPORT_GFX_CG | | ||
2394 | RADEON_PG_SUPPORT_SDMA;*/ | ||
2395 | break; | ||
2396 | case CHIP_OLAND: | ||
2397 | rdev->cg_flags = | ||
2398 | RADEON_CG_SUPPORT_GFX_MGCG | | ||
2399 | RADEON_CG_SUPPORT_GFX_MGLS | | ||
2400 | RADEON_CG_SUPPORT_GFX_CGCG | | ||
2401 | RADEON_CG_SUPPORT_GFX_CGLS | | ||
2402 | RADEON_CG_SUPPORT_GFX_CGTS | | ||
2403 | RADEON_CG_SUPPORT_GFX_CP_LS | | ||
2404 | RADEON_CG_SUPPORT_GFX_RLC_LS | | ||
2405 | RADEON_CG_SUPPORT_MC_LS | | ||
2406 | RADEON_CG_SUPPORT_MC_MGCG | | ||
2407 | RADEON_CG_SUPPORT_SDMA_MGCG | | ||
2408 | RADEON_CG_SUPPORT_BIF_LS | | ||
2409 | RADEON_CG_SUPPORT_UVD_MGCG | | ||
2410 | RADEON_CG_SUPPORT_HDP_LS | | ||
2411 | RADEON_CG_SUPPORT_HDP_MGCG; | ||
2412 | rdev->pg_flags = 0; | ||
2413 | break; | ||
2414 | case CHIP_HAINAN: | ||
2415 | rdev->cg_flags = | ||
2416 | RADEON_CG_SUPPORT_GFX_MGCG | | ||
2417 | RADEON_CG_SUPPORT_GFX_MGLS | | ||
2418 | RADEON_CG_SUPPORT_GFX_CGCG | | ||
2419 | RADEON_CG_SUPPORT_GFX_CGLS | | ||
2420 | RADEON_CG_SUPPORT_GFX_CGTS | | ||
2421 | RADEON_CG_SUPPORT_GFX_CP_LS | | ||
2422 | RADEON_CG_SUPPORT_GFX_RLC_LS | | ||
2423 | RADEON_CG_SUPPORT_MC_LS | | ||
2424 | RADEON_CG_SUPPORT_MC_MGCG | | ||
2425 | RADEON_CG_SUPPORT_SDMA_MGCG | | ||
2426 | RADEON_CG_SUPPORT_BIF_LS | | ||
2427 | RADEON_CG_SUPPORT_HDP_LS | | ||
2428 | RADEON_CG_SUPPORT_HDP_MGCG; | ||
2429 | rdev->pg_flags = 0; | ||
2430 | break; | ||
2431 | default: | ||
2432 | rdev->cg_flags = 0; | ||
2433 | rdev->pg_flags = 0; | ||
2434 | break; | ||
2435 | } | ||
2338 | break; | 2436 | break; |
2339 | case CHIP_BONAIRE: | 2437 | case CHIP_BONAIRE: |
2340 | rdev->asic = &ci_asic; | 2438 | rdev->asic = &ci_asic; |