OSDN Git Service

drm/i915/bios: Don't parse the DPS panel type when the VBT does not have it
authorVille Syrjälä <ville.syrjala@linux.intel.com>
Wed, 15 Jun 2022 15:14:44 +0000 (18:14 +0300)
committerVille Syrjälä <ville.syrjala@linux.intel.com>
Thu, 16 Jun 2022 14:13:39 +0000 (17:13 +0300)
commit5c9016b2ddb375662aff802d25c96f5483a4e024
tree462081686cfe5694122678e0a7d7a85b9f8b2734
parent0256ea13d169e9ef00ef1b1c9df395b1d6bad6f6
drm/i915/bios: Don't parse the DPS panel type when the VBT does not have it

Older VBTs don't have all the stuff we've defined for the
LVDS options block (40). In particular we're currently parsing
the DPS panel type bits even though they may not exist, which
could mean we end up flagging the machine as supporting static
DRRS when the VBT declared no such thing.

We don't actually have a clear idea which VBT versions have
which bits so we rely on the block size instead.

Here's a quick list from my VBT stash:
mgm version 108 -> 4 bytes
alv version 120 -> 4 bytes
cst version 134 -> 14 bytes
pnv version 144 -> 14 bytes
cl  version 142 -> 16 bytes
ctg version 155 -> 24 bytes

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20220615151445.8531-2-ville.syrjala@linux.intel.com
Acked-by: Jani Nikula <jani.nikula@intel.com>
drivers/gpu/drm/i915/display/intel_bios.c