diff options
author | Alex Deucher <alexander.deucher@amd.com> | 2013-08-20 14:59:01 -0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2013-10-01 08:55:47 -0700 |
commit | 3df0155c467f982d4c06078b74d042d7a5c2a743 (patch) | |
tree | 1c2309fb94fab0c2c0b1e4c7decafc63287fda52 /drivers/gpu/drm | |
parent | 69e5a58ed3cdfa6a4a708f6f00ec0ee79e2fe6cd (diff) | |
download | kernel_samsung_smdk4412-3df0155c467f982d4c06078b74d042d7a5c2a743.tar.gz kernel_samsung_smdk4412-3df0155c467f982d4c06078b74d042d7a5c2a743.tar.bz2 kernel_samsung_smdk4412-3df0155c467f982d4c06078b74d042d7a5c2a743.zip |
drm/radeon: fix LCD record parsing
commit 95663948ba22a4be8b99acd67fbf83e86ddffba4 upstream.
If the LCD table contains an EDID record, properly account
for the edid size when walking through the records.
This should fix error messages about unknown LCD records.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/gpu/drm')
-rw-r--r-- | drivers/gpu/drm/radeon/radeon_atombios.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/gpu/drm/radeon/radeon_atombios.c b/drivers/gpu/drm/radeon/radeon_atombios.c index b1aade04a12..4b2a7f0bef8 100644 --- a/drivers/gpu/drm/radeon/radeon_atombios.c +++ b/drivers/gpu/drm/radeon/radeon_atombios.c @@ -1658,7 +1658,9 @@ struct radeon_encoder_atom_dig *radeon_atombios_get_lvds_info(struct kfree(edid); } } - record += sizeof(ATOM_FAKE_EDID_PATCH_RECORD); + record += fake_edid_record->ucFakeEDIDLength ? + fake_edid_record->ucFakeEDIDLength + 2 : + sizeof(ATOM_FAKE_EDID_PATCH_RECORD); break; case LCD_PANEL_RESOLUTION_RECORD_TYPE: panel_res_record = (ATOM_PANEL_RESOLUTION_PATCH_RECORD *)record; |