diff options
Diffstat (limited to 'drivers/gpu')
| -rw-r--r-- | drivers/gpu/drm/i915/intel_display.c | 108 |
1 files changed, 51 insertions, 57 deletions
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c index 5af55aa0d7a6..73e7b9cecac8 100644 --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c | |||
| @@ -128,20 +128,6 @@ struct intel_limit { | |||
| 128 | #define I9XX_P2_LVDS_FAST 7 | 128 | #define I9XX_P2_LVDS_FAST 7 |
| 129 | #define I9XX_P2_LVDS_SLOW_LIMIT 112000 | 129 | #define I9XX_P2_LVDS_SLOW_LIMIT 112000 |
| 130 | 130 | ||
| 131 | #define INTEL_LIMIT_I8XX_DVO_DAC 0 | ||
| 132 | #define INTEL_LIMIT_I8XX_LVDS 1 | ||
| 133 | #define INTEL_LIMIT_I9XX_SDVO_DAC 2 | ||
| 134 | #define INTEL_LIMIT_I9XX_LVDS 3 | ||
| 135 | #define INTEL_LIMIT_G4X_SDVO 4 | ||
| 136 | #define INTEL_LIMIT_G4X_HDMI_DAC 5 | ||
| 137 | #define INTEL_LIMIT_G4X_SINGLE_CHANNEL_LVDS 6 | ||
| 138 | #define INTEL_LIMIT_G4X_DUAL_CHANNEL_LVDS 7 | ||
| 139 | #define INTEL_LIMIT_G4X_DISPLAY_PORT 8 | ||
| 140 | #define INTEL_LIMIT_IGD_SDVO_DAC 9 | ||
| 141 | #define INTEL_LIMIT_IGD_LVDS 10 | ||
| 142 | #define INTEL_LIMIT_IGDNG_SDVO_DAC 11 | ||
| 143 | #define INTEL_LIMIT_IGDNG_LVDS 12 | ||
| 144 | |||
| 145 | /*The parameter is for SDVO on G4x platform*/ | 131 | /*The parameter is for SDVO on G4x platform*/ |
| 146 | #define G4X_DOT_SDVO_MIN 25000 | 132 | #define G4X_DOT_SDVO_MIN 25000 |
| 147 | #define G4X_DOT_SDVO_MAX 270000 | 133 | #define G4X_DOT_SDVO_MAX 270000 |
| @@ -281,8 +267,7 @@ static bool | |||
| 281 | intel_find_pll_g4x_dp(const intel_limit_t *, struct drm_crtc *crtc, | 267 | intel_find_pll_g4x_dp(const intel_limit_t *, struct drm_crtc *crtc, |
| 282 | int target, int refclk, intel_clock_t *best_clock); | 268 | int target, int refclk, intel_clock_t *best_clock); |
| 283 | 269 | ||
| 284 | static const intel_limit_t intel_limits[] = { | 270 | static const intel_limit_t intel_limits_i8xx_dvo = { |
| 285 | { /* INTEL_LIMIT_I8XX_DVO_DAC */ | ||
| 286 | .dot = { .min = I8XX_DOT_MIN, .max = I8XX_DOT_MAX }, | 271 | .dot = { .min = I8XX_DOT_MIN, .max = I8XX_DOT_MAX }, |
| 287 | .vco = { .min = I8XX_VCO_MIN, .max = I8XX_VCO_MAX }, | 272 | .vco = { .min = I8XX_VCO_MIN, .max = I8XX_VCO_MAX }, |
| 288 | .n = { .min = I8XX_N_MIN, .max = I8XX_N_MAX }, | 273 | .n = { .min = I8XX_N_MIN, .max = I8XX_N_MAX }, |
| @@ -294,8 +279,9 @@ static const intel_limit_t intel_limits[] = { | |||
| 294 | .p2 = { .dot_limit = I8XX_P2_SLOW_LIMIT, | 279 | .p2 = { .dot_limit = I8XX_P2_SLOW_LIMIT, |
| 295 | .p2_slow = I8XX_P2_SLOW, .p2_fast = I8XX_P2_FAST }, | 280 | .p2_slow = I8XX_P2_SLOW, .p2_fast = I8XX_P2_FAST }, |
| 296 | .find_pll = intel_find_best_PLL, | 281 | .find_pll = intel_find_best_PLL, |
| 297 | }, | 282 | }; |
| 298 | { /* INTEL_LIMIT_I8XX_LVDS */ | 283 | |
| 284 | static const intel_limit_t intel_limits_i8xx_lvds = { | ||
| 299 | .dot = { .min = I8XX_DOT_MIN, .max = I8XX_DOT_MAX }, | 285 | .dot = { .min = I8XX_DOT_MIN, .max = I8XX_DOT_MAX }, |
| 300 | .vco = { .min = I8XX_VCO_MIN, .max = I8XX_VCO_MAX }, | 286 | .vco = { .min = I8XX_VCO_MIN, .max = I8XX_VCO_MAX }, |
| 301 | .n = { .min = I8XX_N_MIN, .max = I8XX_N_MAX }, | 287 | .n = { .min = I8XX_N_MIN, .max = I8XX_N_MAX }, |
| @@ -307,8 +293,9 @@ static const intel_limit_t intel_limits[] = { | |||
| 307 | .p2 = { .dot_limit = I8XX_P2_SLOW_LIMIT, | 293 | .p2 = { .dot_limit = I8XX_P2_SLOW_LIMIT, |
| 308 | .p2_slow = I8XX_P2_LVDS_SLOW, .p2_fast = I8XX_P2_LVDS_FAST }, | 294 | .p2_slow = I8XX_P2_LVDS_SLOW, .p2_fast = I8XX_P2_LVDS_FAST }, |
| 309 | .find_pll = intel_find_best_PLL, | 295 | .find_pll = intel_find_best_PLL, |
| 310 | }, | 296 | }; |
| 311 | { /* INTEL_LIMIT_I9XX_SDVO_DAC */ | 297 | |
| 298 | static const intel_limit_t intel_limits_i9xx_sdvo = { | ||
| 312 | .dot = { .min = I9XX_DOT_MIN, .max = I9XX_DOT_MAX }, | 299 | .dot = { .min = I9XX_DOT_MIN, .max = I9XX_DOT_MAX }, |
| 313 | .vco = { .min = I9XX_VCO_MIN, .max = I9XX_VCO_MAX }, | 300 | .vco = { .min = I9XX_VCO_MIN, .max = I9XX_VCO_MAX }, |
| 314 | .n = { .min = I9XX_N_MIN, .max = I9XX_N_MAX }, | 301 | .n = { .min = I9XX_N_MIN, .max = I9XX_N_MAX }, |
| @@ -320,8 +307,9 @@ static const intel_limit_t intel_limits[] = { | |||
| 320 | .p2 = { .dot_limit = I9XX_P2_SDVO_DAC_SLOW_LIMIT, | 307 | .p2 = { .dot_limit = I9XX_P2_SDVO_DAC_SLOW_LIMIT, |
| 321 | .p2_slow = I9XX_P2_SDVO_DAC_SLOW, .p2_fast = I9XX_P2_SDVO_DAC_FAST }, | 308 | .p2_slow = I9XX_P2_SDVO_DAC_SLOW, .p2_fast = I9XX_P2_SDVO_DAC_FAST }, |
| 322 | .find_pll = intel_find_best_PLL, | 309 | .find_pll = intel_find_best_PLL, |
| 323 | }, | 310 | }; |
| 324 | { /* INTEL_LIMIT_I9XX_LVDS */ | 311 | |
| 312 | static const intel_limit_t intel_limits_i9xx_lvds = { | ||
| 325 | .dot = { .min = I9XX_DOT_MIN, .max = I9XX_DOT_MAX }, | 313 | .dot = { .min = I9XX_DOT_MIN, .max = I9XX_DOT_MAX }, |
| 326 | .vco = { .min = I9XX_VCO_MIN, .max = I9XX_VCO_MAX }, | 314 | .vco = { .min = I9XX_VCO_MIN, .max = I9XX_VCO_MAX }, |
| 327 | .n = { .min = I9XX_N_MIN, .max = I9XX_N_MAX }, | 315 | .n = { .min = I9XX_N_MIN, .max = I9XX_N_MAX }, |
| @@ -336,9 +324,10 @@ static const intel_limit_t intel_limits[] = { | |||
| 336 | .p2 = { .dot_limit = I9XX_P2_LVDS_SLOW_LIMIT, | 324 | .p2 = { .dot_limit = I9XX_P2_LVDS_SLOW_LIMIT, |
| 337 | .p2_slow = I9XX_P2_LVDS_SLOW, .p2_fast = I9XX_P2_LVDS_FAST }, | 325 | .p2_slow = I9XX_P2_LVDS_SLOW, .p2_fast = I9XX_P2_LVDS_FAST }, |
| 338 | .find_pll = intel_find_best_PLL, | 326 | .find_pll = intel_find_best_PLL, |
| 339 | }, | 327 | }; |
| 328 | |||
| 340 | /* below parameter and function is for G4X Chipset Family*/ | 329 | /* below parameter and function is for G4X Chipset Family*/ |
| 341 | { /* INTEL_LIMIT_G4X_SDVO */ | 330 | static const intel_limit_t intel_limits_g4x_sdvo = { |
| 342 | .dot = { .min = G4X_DOT_SDVO_MIN, .max = G4X_DOT_SDVO_MAX }, | 331 | .dot = { .min = G4X_DOT_SDVO_MIN, .max = G4X_DOT_SDVO_MAX }, |
| 343 | .vco = { .min = G4X_VCO_MIN, .max = G4X_VCO_MAX}, | 332 | .vco = { .min = G4X_VCO_MIN, .max = G4X_VCO_MAX}, |
| 344 | .n = { .min = G4X_N_SDVO_MIN, .max = G4X_N_SDVO_MAX }, | 333 | .n = { .min = G4X_N_SDVO_MIN, .max = G4X_N_SDVO_MAX }, |
| @@ -352,8 +341,9 @@ static const intel_limit_t intel_limits[] = { | |||
| 352 | .p2_fast = G4X_P2_SDVO_FAST | 341 | .p2_fast = G4X_P2_SDVO_FAST |
| 353 | }, | 342 | }, |
| 354 | .find_pll = intel_g4x_find_best_PLL, | 343 | .find_pll = intel_g4x_find_best_PLL, |
| 355 | }, | 344 | }; |
| 356 | { /* INTEL_LIMIT_G4X_HDMI_DAC */ | 345 | |
| 346 | static const intel_limit_t intel_limits_g4x_hdmi = { | ||
| 357 | .dot = { .min = G4X_DOT_HDMI_DAC_MIN, .max = G4X_DOT_HDMI_DAC_MAX }, | 347 | .dot = { .min = G4X_DOT_HDMI_DAC_MIN, .max = G4X_DOT_HDMI_DAC_MAX }, |
| 358 | .vco = { .min = G4X_VCO_MIN, .max = G4X_VCO_MAX}, | 348 | .vco = { .min = G4X_VCO_MIN, .max = G4X_VCO_MAX}, |
| 359 | .n = { .min = G4X_N_HDMI_DAC_MIN, .max = G4X_N_HDMI_DAC_MAX }, | 349 | .n = { .min = G4X_N_HDMI_DAC_MIN, .max = G4X_N_HDMI_DAC_MAX }, |
| @@ -367,8 +357,9 @@ static const intel_limit_t intel_limits[] = { | |||
| 367 | .p2_fast = G4X_P2_HDMI_DAC_FAST | 357 | .p2_fast = G4X_P2_HDMI_DAC_FAST |
| 368 | }, | 358 | }, |
| 369 | .find_pll = intel_g4x_find_best_PLL, | 359 | .find_pll = intel_g4x_find_best_PLL, |
| 370 | }, | 360 | }; |
| 371 | { /* INTEL_LIMIT_G4X_SINGLE_CHANNEL_LVDS */ | 361 | |
| 362 | static const intel_limit_t intel_limits_g4x_single_channel_lvds = { | ||
| 372 | .dot = { .min = G4X_DOT_SINGLE_CHANNEL_LVDS_MIN, | 363 | .dot = { .min = G4X_DOT_SINGLE_CHANNEL_LVDS_MIN, |
| 373 | .max = G4X_DOT_SINGLE_CHANNEL_LVDS_MAX }, | 364 | .max = G4X_DOT_SINGLE_CHANNEL_LVDS_MAX }, |
| 374 | .vco = { .min = G4X_VCO_MIN, | 365 | .vco = { .min = G4X_VCO_MIN, |
| @@ -390,8 +381,9 @@ static const intel_limit_t intel_limits[] = { | |||
| 390 | .p2_fast = G4X_P2_SINGLE_CHANNEL_LVDS_FAST | 381 | .p2_fast = G4X_P2_SINGLE_CHANNEL_LVDS_FAST |
| 391 | }, | 382 | }, |
| 392 | .find_pll = intel_g4x_find_best_PLL, | 383 | .find_pll = intel_g4x_find_best_PLL, |
| 393 | }, | 384 | }; |
| 394 | { /* INTEL_LIMIT_G4X_DUAL_CHANNEL_LVDS */ | 385 | |
| 386 | static const intel_limit_t intel_limits_g4x_dual_channel_lvds = { | ||
| 395 | .dot = { .min = G4X_DOT_DUAL_CHANNEL_LVDS_MIN, | 387 | .dot = { .min = G4X_DOT_DUAL_CHANNEL_LVDS_MIN, |
| 396 | .max = G4X_DOT_DUAL_CHANNEL_LVDS_MAX }, | 388 | .max = G4X_DOT_DUAL_CHANNEL_LVDS_MAX }, |
| 397 | .vco = { .min = G4X_VCO_MIN, | 389 | .vco = { .min = G4X_VCO_MIN, |
| @@ -413,8 +405,9 @@ static const intel_limit_t intel_limits[] = { | |||
| 413 | .p2_fast = G4X_P2_DUAL_CHANNEL_LVDS_FAST | 405 | .p2_fast = G4X_P2_DUAL_CHANNEL_LVDS_FAST |
| 414 | }, | 406 | }, |
| 415 | .find_pll = intel_g4x_find_best_PLL, | 407 | .find_pll = intel_g4x_find_best_PLL, |
| 416 | }, | 408 | }; |
| 417 | { /* INTEL_LIMIT_G4X_DISPLAY_PORT */ | 409 | |
| 410 | static const intel_limit_t intel_limits_g4x_display_port = { | ||
| 418 | .dot = { .min = G4X_DOT_DISPLAY_PORT_MIN, | 411 | .dot = { .min = G4X_DOT_DISPLAY_PORT_MIN, |
| 419 | .max = G4X_DOT_DISPLAY_PORT_MAX }, | 412 | .max = G4X_DOT_DISPLAY_PORT_MAX }, |
| 420 | .vco = { .min = G4X_VCO_MIN, | 413 | .vco = { .min = G4X_VCO_MIN, |
| @@ -435,8 +428,9 @@ static const intel_limit_t intel_limits[] = { | |||
| 435 | .p2_slow = G4X_P2_DISPLAY_PORT_SLOW, | 428 | .p2_slow = G4X_P2_DISPLAY_PORT_SLOW, |
| 436 | .p2_fast = G4X_P2_DISPLAY_PORT_FAST }, | 429 | .p2_fast = G4X_P2_DISPLAY_PORT_FAST }, |
| 437 | .find_pll = intel_find_pll_g4x_dp, | 430 | .find_pll = intel_find_pll_g4x_dp, |
| 438 | }, | 431 | }; |
| 439 | { /* INTEL_LIMIT_IGD_SDVO */ | 432 | |
| 433 | static const intel_limit_t intel_limits_igd_sdvo = { | ||
| 440 | .dot = { .min = I9XX_DOT_MIN, .max = I9XX_DOT_MAX}, | 434 | .dot = { .min = I9XX_DOT_MIN, .max = I9XX_DOT_MAX}, |
| 441 | .vco = { .min = IGD_VCO_MIN, .max = IGD_VCO_MAX }, | 435 | .vco = { .min = IGD_VCO_MIN, .max = IGD_VCO_MAX }, |
| 442 | .n = { .min = IGD_N_MIN, .max = IGD_N_MAX }, | 436 | .n = { .min = IGD_N_MIN, .max = IGD_N_MAX }, |
| @@ -448,8 +442,9 @@ static const intel_limit_t intel_limits[] = { | |||
| 448 | .p2 = { .dot_limit = I9XX_P2_SDVO_DAC_SLOW_LIMIT, | 442 | .p2 = { .dot_limit = I9XX_P2_SDVO_DAC_SLOW_LIMIT, |
| 449 | .p2_slow = I9XX_P2_SDVO_DAC_SLOW, .p2_fast = I9XX_P2_SDVO_DAC_FAST }, | 443 | .p2_slow = I9XX_P2_SDVO_DAC_SLOW, .p2_fast = I9XX_P2_SDVO_DAC_FAST }, |
| 450 | .find_pll = intel_find_best_PLL, | 444 | .find_pll = intel_find_best_PLL, |
| 451 | }, | 445 | }; |
| 452 | { /* INTEL_LIMIT_IGD_LVDS */ | 446 | |
| 447 | static const intel_limit_t intel_limits_igd_lvds = { | ||
| 453 | .dot = { .min = I9XX_DOT_MIN, .max = I9XX_DOT_MAX }, | 448 | .dot = { .min = I9XX_DOT_MIN, .max = I9XX_DOT_MAX }, |
| 454 | .vco = { .min = IGD_VCO_MIN, .max = IGD_VCO_MAX }, | 449 | .vco = { .min = IGD_VCO_MIN, .max = IGD_VCO_MAX }, |
| 455 | .n = { .min = IGD_N_MIN, .max = IGD_N_MAX }, | 450 | .n = { .min = IGD_N_MIN, .max = IGD_N_MAX }, |
| @@ -462,8 +457,9 @@ static const intel_limit_t intel_limits[] = { | |||
| 462 | .p2 = { .dot_limit = I9XX_P2_LVDS_SLOW_LIMIT, | 457 | .p2 = { .dot_limit = I9XX_P2_LVDS_SLOW_LIMIT, |
| 463 | .p2_slow = I9XX_P2_LVDS_SLOW, .p2_fast = I9XX_P2_LVDS_SLOW }, | 458 | .p2_slow = I9XX_P2_LVDS_SLOW, .p2_fast = I9XX_P2_LVDS_SLOW }, |
| 464 | .find_pll = intel_find_best_PLL, | 459 | .find_pll = intel_find_best_PLL, |
| 465 | }, | 460 | }; |
| 466 | { /* INTEL_LIMIT_IGDNG_SDVO_DAC */ | 461 | |
| 462 | static const intel_limit_t intel_limits_igdng_sdvo = { | ||
| 467 | .dot = { .min = IGDNG_DOT_MIN, .max = IGDNG_DOT_MAX }, | 463 | .dot = { .min = IGDNG_DOT_MIN, .max = IGDNG_DOT_MAX }, |
| 468 | .vco = { .min = IGDNG_VCO_MIN, .max = IGDNG_VCO_MAX }, | 464 | .vco = { .min = IGDNG_VCO_MIN, .max = IGDNG_VCO_MAX }, |
| 469 | .n = { .min = IGDNG_N_MIN, .max = IGDNG_N_MAX }, | 465 | .n = { .min = IGDNG_N_MIN, .max = IGDNG_N_MAX }, |
| @@ -476,8 +472,9 @@ static const intel_limit_t intel_limits[] = { | |||
| 476 | .p2_slow = IGDNG_P2_SDVO_DAC_SLOW, | 472 | .p2_slow = IGDNG_P2_SDVO_DAC_SLOW, |
| 477 | .p2_fast = IGDNG_P2_SDVO_DAC_FAST }, | 473 | .p2_fast = IGDNG_P2_SDVO_DAC_FAST }, |
| 478 | .find_pll = intel_igdng_find_best_PLL, | 474 | .find_pll = intel_igdng_find_best_PLL, |
| 479 | }, | 475 | }; |
| 480 | { /* INTEL_LIMIT_IGDNG_LVDS */ | 476 | |
| 477 | static const intel_limit_t intel_limits_igdng_lvds = { | ||
| 481 | .dot = { .min = IGDNG_DOT_MIN, .max = IGDNG_DOT_MAX }, | 478 | .dot = { .min = IGDNG_DOT_MIN, .max = IGDNG_DOT_MAX }, |
| 482 | .vco = { .min = IGDNG_VCO_MIN, .max = IGDNG_VCO_MAX }, | 479 | .vco = { .min = IGDNG_VCO_MIN, .max = IGDNG_VCO_MAX }, |
| 483 | .n = { .min = IGDNG_N_MIN, .max = IGDNG_N_MAX }, | 480 | .n = { .min = IGDNG_N_MIN, .max = IGDNG_N_MAX }, |
| @@ -490,16 +487,15 @@ static const intel_limit_t intel_limits[] = { | |||
| 490 | .p2_slow = IGDNG_P2_LVDS_SLOW, | 487 | .p2_slow = IGDNG_P2_LVDS_SLOW, |
| 491 | .p2_fast = IGDNG_P2_LVDS_FAST }, | 488 | .p2_fast = IGDNG_P2_LVDS_FAST }, |
| 492 | .find_pll = intel_igdng_find_best_PLL, | 489 | .find_pll = intel_igdng_find_best_PLL, |
| 493 | }, | ||
| 494 | }; | 490 | }; |
| 495 | 491 | ||
| 496 | static const intel_limit_t *intel_igdng_limit(struct drm_crtc *crtc) | 492 | static const intel_limit_t *intel_igdng_limit(struct drm_crtc *crtc) |
| 497 | { | 493 | { |
| 498 | const intel_limit_t *limit; | 494 | const intel_limit_t *limit; |
| 499 | if (intel_pipe_has_type(crtc, INTEL_OUTPUT_LVDS)) | 495 | if (intel_pipe_has_type(crtc, INTEL_OUTPUT_LVDS)) |
| 500 | limit = &intel_limits[INTEL_LIMIT_IGDNG_LVDS]; | 496 | limit = &intel_limits_igdng_lvds; |
| 501 | else | 497 | else |
| 502 | limit = &intel_limits[INTEL_LIMIT_IGDNG_SDVO_DAC]; | 498 | limit = &intel_limits_igdng_sdvo; |
| 503 | 499 | ||
| 504 | return limit; | 500 | return limit; |
| 505 | } | 501 | } |
| @@ -514,21 +510,19 @@ static const intel_limit_t *intel_g4x_limit(struct drm_crtc *crtc) | |||
| 514 | if ((I915_READ(LVDS) & LVDS_CLKB_POWER_MASK) == | 510 | if ((I915_READ(LVDS) & LVDS_CLKB_POWER_MASK) == |
| 515 | LVDS_CLKB_POWER_UP) | 511 | LVDS_CLKB_POWER_UP) |
| 516 | /* LVDS with dual channel */ | 512 | /* LVDS with dual channel */ |
| 517 | limit = &intel_limits | 513 | limit = &intel_limits_g4x_dual_channel_lvds; |
| 518 | [INTEL_LIMIT_G4X_DUAL_CHANNEL_LVDS]; | ||
| 519 | else | 514 | else |
| 520 | /* LVDS with dual channel */ | 515 | /* LVDS with dual channel */ |
| 521 | limit = &intel_limits | 516 | limit = &intel_limits_g4x_single_channel_lvds; |
| 522 | [INTEL_LIMIT_G4X_SINGLE_CHANNEL_LVDS]; | ||
| 523 | } else if (intel_pipe_has_type(crtc, INTEL_OUTPUT_HDMI) || | 517 | } else if (intel_pipe_has_type(crtc, INTEL_OUTPUT_HDMI) || |
| 524 | intel_pipe_has_type(crtc, INTEL_OUTPUT_ANALOG)) { | 518 | intel_pipe_has_type(crtc, INTEL_OUTPUT_ANALOG)) { |
| 525 | limit = &intel_limits[INTEL_LIMIT_G4X_HDMI_DAC]; | 519 | limit = &intel_limits_g4x_hdmi; |
| 526 | } else if (intel_pipe_has_type(crtc, INTEL_OUTPUT_SDVO)) { | 520 | } else if (intel_pipe_has_type(crtc, INTEL_OUTPUT_SDVO)) { |
| 527 | limit = &intel_limits[INTEL_LIMIT_G4X_SDVO]; | 521 | limit = &intel_limits_g4x_sdvo; |
| 528 | } else if (intel_pipe_has_type (crtc, INTEL_OUTPUT_DISPLAYPORT)) { | 522 | } else if (intel_pipe_has_type (crtc, INTEL_OUTPUT_DISPLAYPORT)) { |
| 529 | limit = &intel_limits[INTEL_LIMIT_G4X_DISPLAY_PORT]; | 523 | limit = &intel_limits_g4x_display_port; |
| 530 | } else /* The option is for other outputs */ | 524 | } else /* The option is for other outputs */ |
| 531 | limit = &intel_limits[INTEL_LIMIT_I9XX_SDVO_DAC]; | 525 | limit = &intel_limits_i9xx_sdvo; |
| 532 | 526 | ||
| 533 | return limit; | 527 | return limit; |
| 534 | } | 528 | } |
| @@ -544,19 +538,19 @@ static const intel_limit_t *intel_limit(struct drm_crtc *crtc) | |||
| 544 | limit = intel_g4x_limit(crtc); | 538 | limit = intel_g4x_limit(crtc); |
| 545 | } else if (IS_I9XX(dev) && !IS_IGD(dev)) { | 539 | } else if (IS_I9XX(dev) && !IS_IGD(dev)) { |
| 546 | if (intel_pipe_has_type(crtc, INTEL_OUTPUT_LVDS)) | 540 | if (intel_pipe_has_type(crtc, INTEL_OUTPUT_LVDS)) |
| 547 | limit = &intel_limits[INTEL_LIMIT_I9XX_LVDS]; | 541 | limit = &intel_limits_i9xx_lvds; |
| 548 | else | 542 | else |
| 549 | limit = &intel_limits[INTEL_LIMIT_I9XX_SDVO_DAC]; | 543 | limit = &intel_limits_i9xx_sdvo; |
| 550 | } else if (IS_IGD(dev)) { | 544 | } else if (IS_IGD(dev)) { |
| 551 | if (intel_pipe_has_type(crtc, INTEL_OUTPUT_LVDS)) | 545 | if (intel_pipe_has_type(crtc, INTEL_OUTPUT_LVDS)) |
| 552 | limit = &intel_limits[INTEL_LIMIT_IGD_LVDS]; | 546 | limit = &intel_limits_igd_lvds; |
| 553 | else | 547 | else |
| 554 | limit = &intel_limits[INTEL_LIMIT_IGD_SDVO_DAC]; | 548 | limit = &intel_limits_igd_sdvo; |
| 555 | } else { | 549 | } else { |
| 556 | if (intel_pipe_has_type(crtc, INTEL_OUTPUT_LVDS)) | 550 | if (intel_pipe_has_type(crtc, INTEL_OUTPUT_LVDS)) |
| 557 | limit = &intel_limits[INTEL_LIMIT_I8XX_LVDS]; | 551 | limit = &intel_limits_i8xx_lvds; |
| 558 | else | 552 | else |
| 559 | limit = &intel_limits[INTEL_LIMIT_I8XX_DVO_DAC]; | 553 | limit = &intel_limits_i8xx_dvo; |
| 560 | } | 554 | } |
| 561 | return limit; | 555 | return limit; |
| 562 | } | 556 | } |
