[PATCH] drm/radeon/kms: fix up gpio i2c mask bits for r4xx for real
Jean Delvare
khali at linux-fr.org
Tue Nov 22 00:15:24 PST 2011
On Mon, 21 Nov 2011 12:10:14 -0500, alexdeucher at gmail.com wrote:
> From: Alex Deucher <alexander.deucher at amd.com>
>
> Fixes i2c test failures when i2c_algo_bit.bit_test=1.
>
> The hw doesn't actually require a mask, so just set it
> to the default mask bits for r1xx-r4xx radeon ddc.
>
> I missed this part the first time through.
>
> Signed-off-by: Alex Deucher <alexander.deucher at amd.com>
> Cc: stable at kernel.org
> Cc: Jean Delvare <khali at linux-fr.org>
Acked-by: Jean Delvare <khali at linux-fr.org>
And the fix was tested successfully by one openSUSE 11.4 user, see:
https://bugzilla.novell.com/show_bug.cgi?id=691052#c37
Thanks Alex!
Note for stable: now that this missing part is ready, the first part
(6c47e5c23aa2a7c54ad7ac13af4bd56cd9e703bf) can finally find its way to
stable trees too.
>
> Signed-off-by: Alex Deucher <alexander.deucher at amd.com>
> ---
> drivers/gpu/drm/radeon/radeon_atombios.c | 12 ++++++++++++
> 1 files changed, 12 insertions(+), 0 deletions(-)
>
> diff --git a/drivers/gpu/drm/radeon/radeon_atombios.c b/drivers/gpu/drm/radeon/radeon_atombios.c
> index fecd705..933a2cd 100644
> --- a/drivers/gpu/drm/radeon/radeon_atombios.c
> +++ b/drivers/gpu/drm/radeon/radeon_atombios.c
> @@ -181,6 +181,18 @@ void radeon_atombios_i2c_init(struct radeon_device *rdev)
> gpio = &i2c_info->asGPIO_Info[i];
> i2c.valid = false;
>
> + /* r4xx mask is technically not used by the hw, so patch in the legacy mask bits */
> + if ((rdev->family == CHIP_R420) ||
> + (rdev->family == CHIP_R423) ||
> + (rdev->family == CHIP_RV410)) {
> + if ((le16_to_cpu(gpio->usClkMaskRegisterIndex) == 0x0018) ||
> + (le16_to_cpu(gpio->usClkMaskRegisterIndex) == 0x0019) ||
> + (le16_to_cpu(gpio->usClkMaskRegisterIndex) == 0x001a)) {
> + gpio->ucClkMaskShift = 0x19;
> + gpio->ucDataMaskShift = 0x18;
> + }
> + }
> +
> /* some evergreen boards have bad data for this entry */
> if (ASIC_IS_DCE4(rdev)) {
> if ((i == 7) &&
--
Jean Delvare
More information about the dri-devel
mailing list