[PATCH] drm/i915: check whether we actually received an edid in detect_ddc

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, 11 Jul 2012 11:47:51 +0200, Daniel Vetter <daniel.vetter at ffwll.ch> wrote:
> Somehow detect_ddc manages to fall through all checks when we think
> that something responds on the ddc i2c address, but the edid read
> failed. Fix this up by explicitly checking for this case.

I'd prefer if we flatten the control flow in that function, state that the
intention is to only return a definite positive result and if in any doubt
we return false. Note that the ddc probe is implicit in drm_get_edid()
and that we then have a stale comment about handling a broken EDID!.

So intel_crtc_detect_ddc() {
  BUG_ON(crt->type != ANALOG);

   ret = false;
   if ((edid = drm_get_edid()) {
     ret = edid_is_analog(edid);
     kfree(edid);
  }
  return ret;
 }
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre


[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]
  Powered by Linux