Merge tag 'android-6.0.1_r3' into 601r3

Android 6.0.1 release 3

* tag 'android-6.0.1_r3': (29 commits)
  drm_hwcomposer: Use mode vrefresh if provided
  drm_hwcomposer: C++ coding style cleanup, no functional changes.
  drm_hwcomposer: move atomic modeset calls into a separate worker
  drm_hwcomposer: get gralloc buffer usage during hwc_set
  drm_hwcomposer: remove unused and confusing HWC_FB_BUFFERS definition.
  drm_hwcomposer: implement squashing
  drm_hwcomposer: lazily generate shaders for GLWorkerCompositor
  drm_hwcomposer: use latest patchset of "separate C compliant header file."
  drm_hwcomposer: Remove hwc.drm.use_framebuffer_target property
  drm_hwcomposer: separate C compliant header file.
  drm_hwcomposer: Add sanity check on display in SetLayers
  drm_hwcomposer: fix missing assignment of premult flag
  drm_hwcomposer: do not queue layers map for virtual display
  drm_hwcomposer: add missing break statement
  drm_hwcomposer: Use layer alpha to blend planes
  drm_hwcomposer: reimplement Dump for DrmDisplayCompositor
  drm_hwcomposer: Do not close duplicate gem handles in nvimporter
  drm_hwcomposer: ground work for squashing
  drm_hwcomposer: name the texture samplers individually and unroll loop
  drm_hwcomposer: fix logic error in premult blending
  ...

Change-Id: I099a48bb319d3c59336b3bc2f7ec054685c37c3e