• Ville Syrjälä's avatar
    drm/i915: Fix the VBT child device parsing for BSW · 90e4f159
    Ville Syrjälä authored
    Recent BSW VBT has a VBT child device size 37 bytes instead of the 33
    bytes our code assumes. This means we fail to parse the VBT and thus
    fail to detect eDP ports properly and just register them as DP ports
    instead.
    
    Fix it up by using the reported child device size from the VBT instead
    of assuming it matches out struct defintions.
    
    The latest spec I have shows that the child device size should be 36
    bytes for rev >= 195, however on my BSW the size is actually 37 bytes.
    And our current struct definition is 33 bytes.
    
    Feels like the entire VBT parses would need to be rewritten to handle
    changes in the layout better, but for now I've decided to do just the
    bare minimum to get my eDP port back.
    
    Cc: Vijay Purushothaman <vijay.a.purushothaman@linux.intel.com>
    Signed-off-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
    Reviewed-by: default avatarDamien Lespiau <damien.lespiau@intel.com>
    Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
    90e4f159
intel_bios.h 24.4 KB