diff options
| -rw-r--r-- | drivers/gpu/drm/radeon/radeon_combios.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/drivers/gpu/drm/radeon/radeon_combios.c b/drivers/gpu/drm/radeon/radeon_combios.c index 7b7ea269549c..3bddea5b5295 100644 --- a/drivers/gpu/drm/radeon/radeon_combios.c +++ b/drivers/gpu/drm/radeon/radeon_combios.c | |||
| @@ -571,6 +571,7 @@ static struct radeon_i2c_bus_rec combios_setup_i2c_bus(struct radeon_device *rde | |||
| 571 | } | 571 | } |
| 572 | 572 | ||
| 573 | if (clk_mask && data_mask) { | 573 | if (clk_mask && data_mask) { |
| 574 | /* system specific masks */ | ||
| 574 | i2c.mask_clk_mask = clk_mask; | 575 | i2c.mask_clk_mask = clk_mask; |
| 575 | i2c.mask_data_mask = data_mask; | 576 | i2c.mask_data_mask = data_mask; |
| 576 | i2c.a_clk_mask = clk_mask; | 577 | i2c.a_clk_mask = clk_mask; |
| @@ -579,7 +580,19 @@ static struct radeon_i2c_bus_rec combios_setup_i2c_bus(struct radeon_device *rde | |||
| 579 | i2c.en_data_mask = data_mask; | 580 | i2c.en_data_mask = data_mask; |
| 580 | i2c.y_clk_mask = clk_mask; | 581 | i2c.y_clk_mask = clk_mask; |
| 581 | i2c.y_data_mask = data_mask; | 582 | i2c.y_data_mask = data_mask; |
| 583 | } else if ((ddc_line == RADEON_GPIOPAD_MASK) || | ||
| 584 | (ddc_line == RADEON_MDGPIO_MASK)) { | ||
| 585 | /* default gpiopad masks */ | ||
| 586 | i2c.mask_clk_mask = (0x20 << 8); | ||
| 587 | i2c.mask_data_mask = 0x80; | ||
| 588 | i2c.a_clk_mask = (0x20 << 8); | ||
| 589 | i2c.a_data_mask = 0x80; | ||
| 590 | i2c.en_clk_mask = (0x20 << 8); | ||
| 591 | i2c.en_data_mask = 0x80; | ||
| 592 | i2c.y_clk_mask = (0x20 << 8); | ||
| 593 | i2c.y_data_mask = 0x80; | ||
| 582 | } else { | 594 | } else { |
| 595 | /* default masks for ddc pads */ | ||
| 583 | i2c.mask_clk_mask = RADEON_GPIO_EN_1; | 596 | i2c.mask_clk_mask = RADEON_GPIO_EN_1; |
| 584 | i2c.mask_data_mask = RADEON_GPIO_EN_0; | 597 | i2c.mask_data_mask = RADEON_GPIO_EN_0; |
| 585 | i2c.a_clk_mask = RADEON_GPIO_A_1; | 598 | i2c.a_clk_mask = RADEON_GPIO_A_1; |
