diff options
author | Dave Airlie <airlied@redhat.com> | 2012-06-25 07:32:14 +0100 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2012-06-25 07:43:12 +0100 |
commit | d42f0349f3fed647c61c2d432e974bbdafcfb3fb (patch) | |
tree | 239371bc88344798f75287da51ba93024bb2df64 /drivers/gpu/drm/udl | |
parent | 6b16351acbd415e66ba16bf7d473ece1574cf0bc (diff) | |
download | talos-op-linux-d42f0349f3fed647c61c2d432e974bbdafcfb3fb.tar.gz talos-op-linux-d42f0349f3fed647c61c2d432e974bbdafcfb3fb.zip |
drm/udl: Make sure to get correct endian keys from vendor descriptor
This is a port of
commit b49f184b640dcfab7ede394cf2a1ff4fe3d154f5
Author: Ben Collins <bcollins@ubuntu.com>
from udlfb to udl kms driver.
The driver was not using le16_to_cpu when reading keys from the vendor
descriptor, causing incorrect parsing. Mainly, sku_pixel_limit was not
being parsed on big-endian systems. This would result in a blank screen
on big-endian CPUs where the DL chips's max mode was smaller than the
monitor's native mode.
Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/udl')
-rw-r--r-- | drivers/gpu/drm/udl/udl_main.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/gpu/drm/udl/udl_main.c b/drivers/gpu/drm/udl/udl_main.c index a8d5f09428c7..4c2d836a0893 100644 --- a/drivers/gpu/drm/udl/udl_main.c +++ b/drivers/gpu/drm/udl/udl_main.c @@ -61,7 +61,7 @@ static int udl_parse_vendor_descriptor(struct drm_device *dev, u8 length; u16 key; - key = *((u16 *) desc); + key = le16_to_cpu(*((u16 *) desc)); desc += sizeof(u16); length = *desc; desc++; |