drm: Try loading builtin EDIDs first
authorChris Wilson <chris@chris-wilson.co.uk>
Wed, 2 Oct 2013 10:12:53 +0000 (11:12 +0100)
committerDave Airlie <airlied@redhat.com>
Wed, 9 Oct 2013 05:55:28 +0000 (15:55 +1000)
commit9066f83c055edd0e42b0ecb57a27b308bde64687
treee4a7403729c8d25d316f8bf047b1a663b6883589
parentc3a49737ef7db0bdd4fcf6cf0b7140a883e32b2a
drm: Try loading builtin EDIDs first

If the firmware is not builtin and userspace is not yet running, we can
stall the boot process for a minute whilst the firmware loader times
out. This is contrary to expectations of providing a builtin EDID!

In the process, we can rearrange the code to make the error handling
more resilient and prevent gcc warning about unitialised variables along
the error paths.

v2: Load builtins first, fix gcc second (Jani) and cosmetics (Ville).
v3: Verify that we do not read beyond the end of the fwdata (Ville)

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Cc: Jani Nikula <jani.nikula@linux.intel.com>
Reviewed-by: Jani Nikula <jani.nikula@intel.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
drivers/gpu/drm/drm_edid_load.c