Commit 776f2b7c authored by Alex Deucher's avatar Alex Deucher Committed by Dave Airlie

drm/radeon/kms: fix some logic errors in combios i2c mapping

The virtual i2c to real i2c channel mappings weren't setting
the right id in some cases.

Spotted by: Andrew Randrianasulu
Signed-off-by: default avatarAlex Deucher <alexdeucher@gmail.com>
Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
parent d4a3b10c
...@@ -544,20 +544,26 @@ static struct radeon_i2c_bus_rec combios_setup_i2c_bus(struct radeon_device *rde ...@@ -544,20 +544,26 @@ static struct radeon_i2c_bus_rec combios_setup_i2c_bus(struct radeon_device *rde
rdev->family == CHIP_RS480) rdev->family == CHIP_RS480)
ddc_line = RADEON_GPIOPAD_MASK; ddc_line = RADEON_GPIOPAD_MASK;
else if (rdev->family == CHIP_R300 || else if (rdev->family == CHIP_R300 ||
rdev->family == CHIP_R350) rdev->family == CHIP_R350) {
ddc_line = RADEON_GPIO_DVI_DDC; ddc_line = RADEON_GPIO_DVI_DDC;
else ddc = DDC_DVI;
} else
ddc_line = RADEON_GPIO_MONID; ddc_line = RADEON_GPIO_MONID;
break; break;
case DDC_CRT2: case DDC_CRT2:
if (rdev->family == CHIP_R200 || if (rdev->family == CHIP_R200 ||
rdev->family == CHIP_R300 || rdev->family == CHIP_R300 ||
rdev->family == CHIP_R350) rdev->family == CHIP_R350) {
ddc_line = RADEON_GPIO_DVI_DDC; ddc_line = RADEON_GPIO_DVI_DDC;
else if (rdev->family == CHIP_RS300 || ddc = DDC_DVI;
rdev->family >= CHIP_RV350) } else if (rdev->family == CHIP_RS300 ||
rdev->family == CHIP_RS400 ||
rdev->family == CHIP_RS480)
ddc_line = RADEON_GPIO_MONID; ddc_line = RADEON_GPIO_MONID;
else else if (rdev->family >= CHIP_RV350) {
ddc_line = RADEON_GPIO_MONID;
ddc = DDC_MONID;
} else
ddc_line = RADEON_GPIO_CRT2_DDC; ddc_line = RADEON_GPIO_CRT2_DDC;
break; break;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment