drm_hwcomposer: Add backend-dependent validation for HwcDisplay class

Different DRM/KMS backends have a variable set of limitations, which is
not always exposed via DRM ioctls.

This implementation of backend-dependent validation provides a register
of platform-specific inherited backend class to the map by BackendManager
class. ValidateDisplay function is moved to generic backend
implementantion and separated into 2 additional methods.

The map key is a string that contains the corresponding DRM driver name.
During DrmHwcTwo class initialization the vendor.hwc.backend_override
system property and driver name will be checked and a backend will be set
for the appropriate display. If the map does not have any backend for the
named driver, the generic backend will be used.

Signed-off-by: Matvii Zorin <matvii.zorin@globallogic.com>
diff --git a/Android.bp b/Android.bp
index 8bcd1aa..b4bf8e0 100644
--- a/Android.bp
+++ b/Android.bp
@@ -94,6 +94,9 @@
 
         "utils/autolock.cpp",
         "utils/hwcutils.cpp",
+
+        "backend/backendmanager.cpp",
+        "backend/backend.cpp",
     ],
 }