make TARGET_QCOM_DISPLAY_VARIANT more parametric

Change-Id: I36bba3ba96e174b443d800fd79957a1f428899df
frameworks/native: Reset update buffer geometry

Reset update buffer geometry when setBuffersGeometry is invoked to
reallocate the buffer for the new resolution.

Change-Id: I5da0bc8739af5e7c619ee6185b33712015112672
surfaceflinger: Allow gpu to render widevine level3

Allow gpu to render widevine level3 but keep
blocking screen shots.

CRs-fixed: 428647,424769,421767

Change-Id: I914232a062acbb7b17901dbf2b414973230e59d9
frameworks/native: fix copy back dirty region

Copyback dirty region logic does copyback,
even when its not necessary causing 2ms delay.
Fix the logic to copy back only what is necessary.

Change-Id: I52de68258ac9f87d704ee5401f93417805fa6773
Support forcing all screenshots into a CPU consumer

Looks like a full GPU path is less efficient on some GPU
drivers that we're still using, and CPU is reliably faster...
(there's probably a locking condition going on somewhere, this
needs to be looked into)

Change-Id: I8878796a117d65bf2324507cf8755cadce49f6dc