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
Underp dexroot on cache

Change-Id: I21e97bfd7888e50c5dadf9fabc859ef9b566cf15
Underp dexroot on cache

Change-Id: I21e97bfd7888e50c5dadf9fabc859ef9b566cf15
adjust legacy display support

enable additional support with -DLS_NATIVE
frameworks/native: Add support for Secure Display.

- Add secure UI layers to primary and remove other layers from
  internal and external list for Secure Display usecase.
- Dont let secure UI layers to be captured on screen

Change-Id: Iebdad5c56247308604ee90928f6d6460a1f69279
Merge remote-tracking branch 'cm/cm-10.2' into cm-10.2
Merge remote-tracking branch 'pac/cm-10.2' into cm-10.2
Merge remote-tracking branch 'opensemc/cm-10.2' into cm-10.2