Snap for 8564071 from 2a92d7a0bac4c274ed9753fdb51099c81004a0ce to mainline-wifi-release

Change-Id: Ic6f92a8859b5881554b160433136967004d80d72
diff --git a/Android.bp b/Android.bp
new file mode 100644
index 0000000..7aefda1
--- /dev/null
+++ b/Android.bp
@@ -0,0 +1,43 @@
+//
+// Copyright (C) 2021 The Android Open Source Project
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package {
+    default_applicable_licenses: ["hardware_qcom_display_license"],
+}
+
+// Added automatically by a large-scale-change that took the approach of
+// 'apply every license found to every target'. While this makes sure we respect
+// every license restriction, it may not be entirely correct.
+//
+// e.g. GPL in an MIT project might only apply to the contrib/ directory.
+//
+// Please consider splitting the single license below into multiple licenses,
+// taking care not to lose any license_kind information, and overriding the
+// default license using the 'licenses: [...]' property on targets as needed.
+//
+// For unused files, consider creating a 'fileGroup' with "//visibility:private"
+// to attach the license to, and including a comment whether the files may be
+// used in the current project.
+// See: http://go/android-license-faq
+license {
+    name: "hardware_qcom_display_license",
+    visibility: [":__subpackages__"],
+    license_kinds: [
+        "SPDX-license-identifier-Apache-2.0",
+        "SPDX-license-identifier-BSD",
+        "legacy_not_a_contribution",
+    ],
+    // large-scale-change unable to identify any license_text files
+}
diff --git a/METADATA b/METADATA
new file mode 100644
index 0000000..d97975c
--- /dev/null
+++ b/METADATA
@@ -0,0 +1,3 @@
+third_party {
+  license_type: NOTICE
+}
diff --git a/msm8084/Android.mk b/msm8084/Android.mk
index 59a9751..fbb5aea 100644
--- a/msm8084/Android.mk
+++ b/msm8084/Android.mk
@@ -1,7 +1,7 @@
 display-hals := libgralloc libcopybit liblight libvirtual
 display-hals += libhwcomposer liboverlay libqdutils libexternal libqservice
 display-hals += libmemtrack
-ifeq ($(call is-vendor-board-platform,QCOM),true)
+ifneq (,$(call is-vendor-board-qcom))
     include $(call all-named-subdir-makefiles,$(display-hals))
 else
 ifneq ($(filter msm% apq%,$(TARGET_BOARD_PLATFORM)),)
diff --git a/msm8084/common.mk b/msm8084/common.mk
index 388596a..1f12052 100644
--- a/msm8084/common.mk
+++ b/msm8084/common.mk
@@ -47,6 +47,6 @@
 # Enable QCOM Display features
     common_flags += -DQCOM_BSP
 endif
-ifneq ($(call is-platform-sdk-version-at-least,18),true)
+ifneq (T,T)  # TODO: Obsolete, please remove
     common_flags += -DANDROID_JELLYBEAN_MR1=1
 endif
diff --git a/msm8084/libcopybit/Android.mk b/msm8084/libcopybit/Android.mk
index da1c5e5..3cd8c50 100644
--- a/msm8084/libcopybit/Android.mk
+++ b/msm8084/libcopybit/Android.mk
@@ -22,6 +22,9 @@
 
 include $(CLEAR_VARS)
 LOCAL_MODULE                  := copybit.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS      := by_exception_only not_allowed notice
+LOCAL_NOTICE_FILE             := $(LOCAL_PATH)/NOTICE
 LOCAL_MODULE_RELATIVE_PATH    := hw
 LOCAL_PROPRIETARY_MODULE      := true
 LOCAL_MODULE_TAGS             := optional
@@ -36,12 +39,12 @@
     include $(BUILD_SHARED_LIBRARY)
 else
     ifneq ($(call is-chipset-in-board-platform,msm7630),true)
-        ifeq ($(call is-board-platform-in-list,$(MSM7K_BOARD_PLATFORMS)),true)
+        ifneq (,$(call is-board-platform-in-list2,$(MSM7K_BOARD_PLATFORMS)))
             LOCAL_CFLAGS += -DCOPYBIT_MSM7K=1
             LOCAL_SRC_FILES := software_converter.cpp copybit.cpp
             include $(BUILD_SHARED_LIBRARY)
         endif
-        ifeq ($(call is-board-platform-in-list,msm8610),true)
+        ifneq (,$(call is-board-platform-in-list2,msm8610))
             LOCAL_SRC_FILES := software_converter.cpp copybit.cpp
             include $(BUILD_SHARED_LIBRARY)
         endif
diff --git a/msm8084/libexternal/Android.mk b/msm8084/libexternal/Android.mk
index 3df6984..4a50a9e 100644
--- a/msm8084/libexternal/Android.mk
+++ b/msm8084/libexternal/Android.mk
@@ -3,6 +3,8 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := libexternal
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS      := by_exception_only not_allowed notice
 LOCAL_MODULE_PATH             := $(TARGET_OUT_SHARED_LIBRARIES)
 LOCAL_MODULE_TAGS             := optional
 LOCAL_C_INCLUDES              := $(common_includes) $(kernel_includes)
diff --git a/msm8084/libgralloc/Android.mk b/msm8084/libgralloc/Android.mk
index 2c98f57..ad418f9 100644
--- a/msm8084/libgralloc/Android.mk
+++ b/msm8084/libgralloc/Android.mk
@@ -18,6 +18,9 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := gralloc.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS      := notice
+LOCAL_NOTICE_FILE             := $(LOCAL_PATH)/NOTICE
 LOCAL_MODULE_RELATIVE_PATH    := hw
 LOCAL_PROPRIETARY_MODULE      := true
 LOCAL_MODULE_TAGS             := optional
@@ -36,6 +39,9 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := libmemalloc
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS      := notice
+LOCAL_NOTICE_FILE             := $(LOCAL_PATH)/NOTICE
 LOCAL_MODULE_TAGS             := optional
 LOCAL_C_INCLUDES              := $(common_includes) $(kernel_includes)
 LOCAL_SHARED_LIBRARIES        := $(common_libs) libqdutils libdl
diff --git a/msm8084/libhwcomposer/Android.mk b/msm8084/libhwcomposer/Android.mk
index dd201e5..b2fd4f5 100644
--- a/msm8084/libhwcomposer/Android.mk
+++ b/msm8084/libhwcomposer/Android.mk
@@ -3,6 +3,8 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := hwcomposer.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS      := by_exception_only not_allowed notice
 LOCAL_MODULE_RELATIVE_PATH    := hw
 LOCAL_PROPRIETARY_MODULE      := true
 LOCAL_MODULE_TAGS             := optional
diff --git a/msm8084/liblight/Android.mk b/msm8084/liblight/Android.mk
index 3efacec..061cf51 100644
--- a/msm8084/liblight/Android.mk
+++ b/msm8084/liblight/Android.mk
@@ -23,6 +23,9 @@
 LOCAL_SHARED_LIBRARIES := liblog
 LOCAL_CFLAGS := $(common_flags) -DLOG_TAG=\"qdlights\"
 LOCAL_MODULE := lights.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0
+LOCAL_LICENSE_CONDITIONS := notice
+LOCAL_NOTICE_FILE := $(LOCAL_PATH)/NOTICE
 LOCAL_MODULE_TAGS := optional
 LOCAL_CFLAGS += -Wno-error
 
diff --git a/msm8084/libmemtrack/Android.mk b/msm8084/libmemtrack/Android.mk
index eb07a9e..2778dac 100644
--- a/msm8084/libmemtrack/Android.mk
+++ b/msm8084/libmemtrack/Android.mk
@@ -24,5 +24,7 @@
 LOCAL_SHARED_LIBRARIES := liblog
 LOCAL_SRC_FILES := memtrack_msm.c kgsl.c
 LOCAL_MODULE := memtrack.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0
+LOCAL_LICENSE_CONDITIONS := notice
 LOCAL_CFLAGS += -Wno-error
 include $(BUILD_SHARED_LIBRARY)
diff --git a/msm8084/liboverlay/Android.mk b/msm8084/liboverlay/Android.mk
index 277b44c..5c3fe98 100644
--- a/msm8084/liboverlay/Android.mk
+++ b/msm8084/liboverlay/Android.mk
@@ -3,6 +3,8 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := liboverlay
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS      := by_exception_only not_allowed notice
 LOCAL_MODULE_PATH             := $(TARGET_OUT_SHARED_LIBRARIES)
 LOCAL_MODULE_TAGS             := optional
 LOCAL_C_INCLUDES              := $(common_includes) $(kernel_includes)
diff --git a/msm8084/libqdutils/Android.mk b/msm8084/libqdutils/Android.mk
index 2907ccf..688377a 100644
--- a/msm8084/libqdutils/Android.mk
+++ b/msm8084/libqdutils/Android.mk
@@ -3,6 +3,8 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := libqdutils
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS      := notice
 LOCAL_MODULE_TAGS             := optional
 LOCAL_SHARED_LIBRARIES        := $(common_libs) libui libbinder libqservice
 LOCAL_C_INCLUDES              := $(common_includes) $(kernel_includes)
@@ -30,5 +32,6 @@
 LOCAL_CFLAGS                    += -DLOG_TAG=\"DisplayMetaData\"
 LOCAL_MODULE_TAGS               := optional
 LOCAL_MODULE                    := libqdMetaData
+LOCAL_LICENSE_KINDS             := SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS        := notice
 include $(BUILD_SHARED_LIBRARY)
-
diff --git a/msm8084/libqservice/Android.mk b/msm8084/libqservice/Android.mk
index f0d95eb..b255155 100644
--- a/msm8084/libqservice/Android.mk
+++ b/msm8084/libqservice/Android.mk
@@ -3,6 +3,8 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := libqservice
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS      := by_exception_only not_allowed notice
 LOCAL_MODULE_PATH             := $(TARGET_OUT_SHARED_LIBRARIES)
 LOCAL_MODULE_TAGS             := optional
 LOCAL_C_INCLUDES              := $(common_includes) $(kernel_includes)
diff --git a/msm8084/libvirtual/Android.mk b/msm8084/libvirtual/Android.mk
index 0df7b39..c177c0c 100644
--- a/msm8084/libvirtual/Android.mk
+++ b/msm8084/libvirtual/Android.mk
@@ -3,6 +3,8 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := libvirtual
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS      := notice
 LOCAL_MODULE_PATH             := $(TARGET_OUT_SHARED_LIBRARIES)
 LOCAL_MODULE_TAGS             := optional
 LOCAL_C_INCLUDES              := $(common_includes) $(kernel_includes)
diff --git a/msm8226/Android.mk b/msm8226/Android.mk
index 59a9751..fbb5aea 100644
--- a/msm8226/Android.mk
+++ b/msm8226/Android.mk
@@ -1,7 +1,7 @@
 display-hals := libgralloc libcopybit liblight libvirtual
 display-hals += libhwcomposer liboverlay libqdutils libexternal libqservice
 display-hals += libmemtrack
-ifeq ($(call is-vendor-board-platform,QCOM),true)
+ifneq (,$(call is-vendor-board-qcom))
     include $(call all-named-subdir-makefiles,$(display-hals))
 else
 ifneq ($(filter msm% apq%,$(TARGET_BOARD_PLATFORM)),)
diff --git a/msm8226/common.mk b/msm8226/common.mk
index e8a434e..ab4b8eb 100644
--- a/msm8226/common.mk
+++ b/msm8226/common.mk
@@ -27,8 +27,7 @@
     common_flags += -D__ARM_HAVE_NEON
 endif
 
-ifeq ($(call is-board-platform-in-list, msm8974 msm8226 msm8610 apq8084 \
-        mpq8092 msm_bronze msm8916 msm8994), true)
+ifneq (,$(call is-board-platform-in-list2, msm8974 msm8226 msm8610 apq8084 mpq8092 msm_bronze msm8916 msm8994))
     common_flags += -DVENUS_COLOR_FORMAT
     common_flags += -DMDSS_TARGET
 endif
@@ -56,7 +55,7 @@
     common_flags += -DTARGET_SPECIFIC_MAX_ROT_SESSION=$(DISPLAY_FEATURE_MAX_ROT_SESSION)
 endif
 
-ifeq ($(call is-vendor-board-platform,QCOM),true)
+ifneq (,$(call is-vendor-board-qcom))
 # This check is to pick the kernel headers from the right location.
 # If the macro above is defined, we make the assumption that we have the kernel
 # available in the build tree.
diff --git a/msm8226/libcopybit/Android.mk b/msm8226/libcopybit/Android.mk
index 0e494af..4c25f03 100644
--- a/msm8226/libcopybit/Android.mk
+++ b/msm8226/libcopybit/Android.mk
@@ -22,6 +22,9 @@
 
 include $(CLEAR_VARS)
 LOCAL_MODULE                  := copybit.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS      := by_exception_only not_allowed notice
+LOCAL_NOTICE_FILE             := $(LOCAL_PATH)/NOTICE
 LOCAL_MODULE_RELATIVE_PATH    := hw
 LOCAL_PROPRIETARY_MODULE      := true
 LOCAL_MODULE_TAGS             := optional
@@ -36,12 +39,12 @@
     include $(BUILD_SHARED_LIBRARY)
 else
     ifneq ($(call is-chipset-in-board-platform,msm7630),true)
-        ifeq ($(call is-board-platform-in-list,$(MSM7K_BOARD_PLATFORMS)),true)
+        ifneq (,$(call is-board-platform-in-list2,$(MSM7K_BOARD_PLATFORMS)))
             LOCAL_CFLAGS += -DCOPYBIT_MSM7K=1
             LOCAL_SRC_FILES := software_converter.cpp copybit.cpp
             include $(BUILD_SHARED_LIBRARY)
         endif
-        ifeq ($(call is-board-platform-in-list,msm8610),true)
+        ifneq (,$(call is-board-platform-in-list2,msm8610))
             LOCAL_SRC_FILES := software_converter.cpp copybit.cpp
             include $(BUILD_SHARED_LIBRARY)
         endif
diff --git a/msm8226/libexternal/Android.mk b/msm8226/libexternal/Android.mk
index 05e42d4..cfffc6f 100644
--- a/msm8226/libexternal/Android.mk
+++ b/msm8226/libexternal/Android.mk
@@ -3,6 +3,8 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := libexternal
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS      := by_exception_only not_allowed notice
 LOCAL_MODULE_TAGS             := optional
 LOCAL_C_INCLUDES              := $(common_includes) $(kernel_includes)
 LOCAL_SHARED_LIBRARIES        := $(common_libs) liboverlay libqdutils
diff --git a/msm8226/libgralloc/Android.mk b/msm8226/libgralloc/Android.mk
index 2c98f57..ad418f9 100644
--- a/msm8226/libgralloc/Android.mk
+++ b/msm8226/libgralloc/Android.mk
@@ -18,6 +18,9 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := gralloc.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS      := notice
+LOCAL_NOTICE_FILE             := $(LOCAL_PATH)/NOTICE
 LOCAL_MODULE_RELATIVE_PATH    := hw
 LOCAL_PROPRIETARY_MODULE      := true
 LOCAL_MODULE_TAGS             := optional
@@ -36,6 +39,9 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := libmemalloc
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS      := notice
+LOCAL_NOTICE_FILE             := $(LOCAL_PATH)/NOTICE
 LOCAL_MODULE_TAGS             := optional
 LOCAL_C_INCLUDES              := $(common_includes) $(kernel_includes)
 LOCAL_SHARED_LIBRARIES        := $(common_libs) libqdutils libdl
diff --git a/msm8226/libhwcomposer/Android.mk b/msm8226/libhwcomposer/Android.mk
index 7088451..2a61810 100644
--- a/msm8226/libhwcomposer/Android.mk
+++ b/msm8226/libhwcomposer/Android.mk
@@ -3,6 +3,8 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := hwcomposer.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS      := by_exception_only not_allowed notice
 LOCAL_MODULE_RELATIVE_PATH    := hw
 LOCAL_PROPRIETARY_MODULE      := true
 LOCAL_MODULE_TAGS             := optional
diff --git a/msm8226/liblight/Android.mk b/msm8226/liblight/Android.mk
index 3efacec..061cf51 100644
--- a/msm8226/liblight/Android.mk
+++ b/msm8226/liblight/Android.mk
@@ -23,6 +23,9 @@
 LOCAL_SHARED_LIBRARIES := liblog
 LOCAL_CFLAGS := $(common_flags) -DLOG_TAG=\"qdlights\"
 LOCAL_MODULE := lights.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0
+LOCAL_LICENSE_CONDITIONS := notice
+LOCAL_NOTICE_FILE := $(LOCAL_PATH)/NOTICE
 LOCAL_MODULE_TAGS := optional
 LOCAL_CFLAGS += -Wno-error
 
diff --git a/msm8226/libmemtrack/Android.mk b/msm8226/libmemtrack/Android.mk
index eb07a9e..2778dac 100644
--- a/msm8226/libmemtrack/Android.mk
+++ b/msm8226/libmemtrack/Android.mk
@@ -24,5 +24,7 @@
 LOCAL_SHARED_LIBRARIES := liblog
 LOCAL_SRC_FILES := memtrack_msm.c kgsl.c
 LOCAL_MODULE := memtrack.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0
+LOCAL_LICENSE_CONDITIONS := notice
 LOCAL_CFLAGS += -Wno-error
 include $(BUILD_SHARED_LIBRARY)
diff --git a/msm8226/liboverlay/Android.mk b/msm8226/liboverlay/Android.mk
index 8c2f577..3325ad7 100644
--- a/msm8226/liboverlay/Android.mk
+++ b/msm8226/liboverlay/Android.mk
@@ -3,6 +3,8 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := liboverlay
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS      := by_exception_only not_allowed notice
 LOCAL_MODULE_TAGS             := optional
 LOCAL_C_INCLUDES              := $(common_includes) $(kernel_includes)
 LOCAL_SHARED_LIBRARIES        := $(common_libs) libqdutils libmemalloc \
diff --git a/msm8226/libqdutils/Android.mk b/msm8226/libqdutils/Android.mk
index 212c8d8..5ff674f 100644
--- a/msm8226/libqdutils/Android.mk
+++ b/msm8226/libqdutils/Android.mk
@@ -3,6 +3,8 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := libqdutils
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS      := notice
 LOCAL_MODULE_TAGS             := optional
 LOCAL_SHARED_LIBRARIES        := $(common_libs) libui libbinder libqservice
 LOCAL_C_INCLUDES              := $(common_includes) $(kernel_includes)
@@ -29,5 +31,6 @@
 LOCAL_CFLAGS                    += -DLOG_TAG=\"DisplayMetaData\"
 LOCAL_MODULE_TAGS               := optional
 LOCAL_MODULE                    := libqdMetaData
+LOCAL_LICENSE_KINDS             := SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS        := notice
 include $(BUILD_SHARED_LIBRARY)
-
diff --git a/msm8226/libqservice/Android.mk b/msm8226/libqservice/Android.mk
index 01e6120..6be192b 100644
--- a/msm8226/libqservice/Android.mk
+++ b/msm8226/libqservice/Android.mk
@@ -3,6 +3,8 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := libqservice
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS      := by_exception_only not_allowed notice
 LOCAL_MODULE_TAGS             := optional
 LOCAL_C_INCLUDES              := $(common_includes) $(kernel_includes)
 LOCAL_SHARED_LIBRARIES        := $(common_libs) libbinder
diff --git a/msm8226/libvirtual/Android.mk b/msm8226/libvirtual/Android.mk
index a41ef33..d3d2358 100644
--- a/msm8226/libvirtual/Android.mk
+++ b/msm8226/libvirtual/Android.mk
@@ -3,6 +3,8 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := libvirtual
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS      := notice
 LOCAL_MODULE_TAGS             := optional
 LOCAL_C_INCLUDES              := $(common_includes) $(kernel_includes)
 LOCAL_SHARED_LIBRARIES        := $(common_libs) liboverlay libqdutils
diff --git a/msm8909/Android.bp b/msm8909/Android.bp
index 14e37af..ee28922 100644
--- a/msm8909/Android.bp
+++ b/msm8909/Android.bp
@@ -1,6 +1,17 @@
 soong_namespace {
 }
 
+package {
+    // See: http://go/android-license-faq
+    // A large-scale-change added 'default_applicable_licenses' to import
+    // all of the 'license_kinds' from "hardware_qcom_display_license"
+    // to get the below license kinds:
+    //   SPDX-license-identifier-Apache-2.0
+    //   SPDX-license-identifier-BSD
+    //   legacy_not_a_contribution
+    default_applicable_licenses: ["hardware_qcom_display_license"],
+}
+
 cc_defaults {
     name: "display_defaults",
     cflags: [
@@ -16,7 +27,7 @@
         "libutils",
     ],
     header_libs: ["display_headers"],
-    clang: true,
+
 }
 
 cc_library_headers {
diff --git a/msm8909/Android.mk b/msm8909/Android.mk
index f354caf..7c2ea92 100644
--- a/msm8909/Android.mk
+++ b/msm8909/Android.mk
@@ -8,7 +8,7 @@
 
 display-hals += gralloc
 
-ifeq ($(call is-vendor-board-platform,QCOM),true)
+ifneq (,$(call is-vendor-board-qcom))
     include $(call all-named-subdir-makefiles,$(display-hals))
 else
 ifneq ($(filter msm% apq%,$(TARGET_BOARD_PLATFORM)),)
diff --git a/msm8909/common.mk b/msm8909/common.mk
index f8fe936..c856a4f 100644
--- a/msm8909/common.mk
+++ b/msm8909/common.mk
@@ -28,7 +28,7 @@
     common_flags += -D__ARM_HAVE_NEON
 endif
 
-ifeq ($(call is-board-platform-in-list, $(MASTER_SIDE_CP_TARGET_LIST)), true)
+ifneq (,$(call is-board-platform-in-list2, $(MASTER_SIDE_CP_TARGET_LIST)))
     common_flags += -DMASTER_SIDE_CP
 endif
 
@@ -42,7 +42,7 @@
     common_flags += -DUSE_GRALLOC1
 endif
 
-common_includes := system/core/base/include
+common_includes := system/libbase/include
 CHECK_VERSION_LE = $(shell if [ $(1) -le $(2) ] ; then echo true ; else echo false ; fi)
 PLATFORM_SDK_NOUGAT = 25
 ifeq "REL" "$(PLATFORM_VERSION_CODENAME)"
diff --git a/msm8909/gpu_tonemapper/Android.mk b/msm8909/gpu_tonemapper/Android.mk
index 8da0628..6e6a153 100644
--- a/msm8909/gpu_tonemapper/Android.mk
+++ b/msm8909/gpu_tonemapper/Android.mk
@@ -9,6 +9,8 @@
 
 include $(CLEAR_VARS)
 LOCAL_MODULE              := libgpu_tonemapper
+LOCAL_LICENSE_KINDS       := SPDX-license-identifier-Apache-2.0 legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS  := by_exception_only not_allowed notice
 LOCAL_VENDOR_MODULE       := true
 LOCAL_MODULE_TAGS         := optional
 LOCAL_C_INCLUDES          := $(TARGET_OUT_HEADERS)/qcom/display/
diff --git a/msm8909/gpu_tonemapper/glengine.cpp b/msm8909/gpu_tonemapper/glengine.cpp
index 35e1932..bf3b58a 100644
--- a/msm8909/gpu_tonemapper/glengine.cpp
+++ b/msm8909/gpu_tonemapper/glengine.cpp
@@ -315,36 +315,30 @@
 //-----------------------------------------------------------------------------
 {
   for (GLint error = glGetError(); error; error = glGetError()) {
-    char *pError;
+    const char *pError = "<unknown error>";
     switch (error) {
       case GL_NO_ERROR:
-        pError = (char *)"GL_NO_ERROR";
+        pError = "GL_NO_ERROR";
         break;
       case GL_INVALID_ENUM:
-        pError = (char *)"GL_INVALID_ENUM";
+        pError = "GL_INVALID_ENUM";
         break;
       case GL_INVALID_VALUE:
-        pError = (char *)"GL_INVALID_VALUE";
+        pError = "GL_INVALID_VALUE";
         break;
       case GL_INVALID_OPERATION:
-        pError = (char *)"GL_INVALID_OPERATION";
+        pError = "GL_INVALID_OPERATION";
         break;
       case GL_OUT_OF_MEMORY:
-        pError = (char *)"GL_OUT_OF_MEMORY";
+        pError = "GL_OUT_OF_MEMORY";
         break;
       case GL_INVALID_FRAMEBUFFER_OPERATION:
-        pError = (char *)"GL_INVALID_FRAMEBUFFER_OPERATION";
+        pError = "GL_INVALID_FRAMEBUFFER_OPERATION";
         break;
-
-      default:
-        ALOGE("glError (0x%x) %s:%d\n", error, file, line);
-        return;
     }
 
     ALOGE("glError (%s) %s:%d\n", pError, file, line);
-    return;
   }
-  return;
 }
 
 //-----------------------------------------------------------------------------
@@ -357,59 +351,54 @@
       break;
     }
 
-    char *pError;
+    const char *pError = "<unknown error>";
     switch (error) {
       case EGL_SUCCESS:
-        pError = (char *)"EGL_SUCCESS";
+        pError = "EGL_SUCCESS";
         break;
       case EGL_NOT_INITIALIZED:
-        pError = (char *)"EGL_NOT_INITIALIZED";
+        pError = "EGL_NOT_INITIALIZED";
         break;
       case EGL_BAD_ACCESS:
-        pError = (char *)"EGL_BAD_ACCESS";
+        pError = "EGL_BAD_ACCESS";
         break;
       case EGL_BAD_ALLOC:
-        pError = (char *)"EGL_BAD_ALLOC";
+        pError = "EGL_BAD_ALLOC";
         break;
       case EGL_BAD_ATTRIBUTE:
-        pError = (char *)"EGL_BAD_ATTRIBUTE";
+        pError = "EGL_BAD_ATTRIBUTE";
         break;
       case EGL_BAD_CONTEXT:
-        pError = (char *)"EGL_BAD_CONTEXT";
+        pError = "EGL_BAD_CONTEXT";
         break;
       case EGL_BAD_CONFIG:
-        pError = (char *)"EGL_BAD_CONFIG";
+        pError = "EGL_BAD_CONFIG";
         break;
       case EGL_BAD_CURRENT_SURFACE:
-        pError = (char *)"EGL_BAD_CURRENT_SURFACE";
+        pError = "EGL_BAD_CURRENT_SURFACE";
         break;
       case EGL_BAD_DISPLAY:
-        pError = (char *)"EGL_BAD_DISPLAY";
+        pError = "EGL_BAD_DISPLAY";
         break;
       case EGL_BAD_SURFACE:
-        pError = (char *)"EGL_BAD_SURFACE";
+        pError = "EGL_BAD_SURFACE";
         break;
       case EGL_BAD_MATCH:
-        pError = (char *)"EGL_BAD_MATCH";
+        pError = "EGL_BAD_MATCH";
         break;
       case EGL_BAD_PARAMETER:
-        pError = (char *)"EGL_BAD_PARAMETER";
+        pError = "EGL_BAD_PARAMETER";
         break;
       case EGL_BAD_NATIVE_PIXMAP:
-        pError = (char *)"EGL_BAD_NATIVE_PIXMAP";
+        pError = "EGL_BAD_NATIVE_PIXMAP";
         break;
       case EGL_BAD_NATIVE_WINDOW:
-        pError = (char *)"EGL_BAD_NATIVE_WINDOW";
+        pError = "EGL_BAD_NATIVE_WINDOW";
         break;
       case EGL_CONTEXT_LOST:
-        pError = (char *)"EGL_CONTEXT_LOST";
+        pError = "EGL_CONTEXT_LOST";
         break;
-      default:
-        ALOGE("eglError (0x%x) %s:%d\n", error, file, line);
-        return;
     }
     ALOGE("eglError (%s) %s:%d\n", pError, file, line);
-    return;
   }
-  return;
 }
diff --git a/msm8909/gralloc/Android.mk b/msm8909/gralloc/Android.mk
index cdb651c..84d0056 100644
--- a/msm8909/gralloc/Android.mk
+++ b/msm8909/gralloc/Android.mk
@@ -4,6 +4,8 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := gralloc.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS      := by_exception_only not_allowed notice
 LOCAL_VENDOR_MODULE           := true
 LOCAL_MODULE_RELATIVE_PATH    := hw
 LOCAL_MODULE_TAGS             := optional
@@ -27,6 +29,8 @@
 #libgrallocutils
 include $(CLEAR_VARS)
 LOCAL_MODULE                  := libgrallocutils
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS      := by_exception_only not_allowed notice
 LOCAL_VENDOR_MODULE           := true
 LOCAL_MODULE_TAGS             := optional
 LOCAL_C_INCLUDES              := $(common_includes) $(kernel_includes)
diff --git a/msm8909/hdmi_cec/Android.mk b/msm8909/hdmi_cec/Android.mk
index 4fed1f0..0922cc8 100644
--- a/msm8909/hdmi_cec/Android.mk
+++ b/msm8909/hdmi_cec/Android.mk
@@ -3,6 +3,8 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := hdmi_cec.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS      := notice
 LOCAL_VENDOR_MODULE           := true
 LOCAL_MODULE_RELATIVE_PATH    := hw
 LOCAL_MODULE_TAGS             := optional
diff --git a/msm8909/libcopybit/Android.mk b/msm8909/libcopybit/Android.mk
index 9460deb..ef50ed1 100644
--- a/msm8909/libcopybit/Android.mk
+++ b/msm8909/libcopybit/Android.mk
@@ -25,6 +25,9 @@
 include $(CLEAR_VARS)
 ifneq ($(TARGET_USES_GRALLOC1), true)
 LOCAL_MODULE                  := copybit.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS      := by_exception_only not_allowed notice
+LOCAL_NOTICE_FILE             := $(LOCAL_PATH)/NOTICE
 LOCAL_VENDOR_MODULE           := true
 LOCAL_MODULE_RELATIVE_PATH    := hw
 LOCAL_MODULE_TAGS             := optional
@@ -40,12 +43,12 @@
     include $(BUILD_SHARED_LIBRARY)
 else
     ifneq ($(call is-chipset-in-board-platform,msm7630),true)
-        ifeq ($(call is-board-platform-in-list,$(MSM7K_BOARD_PLATFORMS)),true)
+        ifneq (,$(call is-board-platform-in-list2,$(MSM7K_BOARD_PLATFORMS)))
             LOCAL_CFLAGS += -DCOPYBIT_MSM7K=1
             LOCAL_SRC_FILES := software_converter.cpp copybit.cpp
             include $(BUILD_SHARED_LIBRARY)
         endif
-        ifeq ($(call is-board-platform-in-list, msm8610 msm8909),true)
+        ifneq (,$(call is-board-platform-in-list2, msm8610 msm8909))
             LOCAL_SRC_FILES := software_converter.cpp copybit.cpp
             include $(BUILD_SHARED_LIBRARY)
         endif
diff --git a/msm8909/libdisplayconfig/Android.mk b/msm8909/libdisplayconfig/Android.mk
index de8b260..87db4c1 100644
--- a/msm8909/libdisplayconfig/Android.mk
+++ b/msm8909/libdisplayconfig/Android.mk
@@ -2,6 +2,8 @@
 
 include $(CLEAR_VARS)
 LOCAL_MODULE                  := libdisplayconfig
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS      := notice
 LOCAL_MODULE_TAGS             := optional
 LOCAL_C_INCLUDES              := $(common_includes)
 LOCAL_HEADER_LIBRARIES        := display_headers
diff --git a/msm8909/libdrmutils/Android.mk b/msm8909/libdrmutils/Android.mk
index ebcfc8a..f08dded 100644
--- a/msm8909/libdrmutils/Android.mk
+++ b/msm8909/libdrmutils/Android.mk
@@ -2,6 +2,8 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := libdrmutils
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS      := notice
 LOCAL_VENDOR_MODULE           := true
 LOCAL_MODULE_TAGS             := optional
 LOCAL_C_INCLUDES              := external/libdrm \
diff --git a/msm8909/libgralloc/Android.mk b/msm8909/libgralloc/Android.mk
index 86c0f04..08d5f56 100644
--- a/msm8909/libgralloc/Android.mk
+++ b/msm8909/libgralloc/Android.mk
@@ -18,6 +18,9 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := gralloc.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS      := notice
+LOCAL_NOTICE_FILE             := $(LOCAL_PATH)/NOTICE
 LOCAL_VENDOR_MODULE           := true
 LOCAL_MODULE_RELATIVE_PATH    := hw
 LOCAL_MODULE_TAGS             := optional
@@ -39,6 +42,9 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := libmemalloc
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS      := notice
+LOCAL_NOTICE_FILE             := $(LOCAL_PATH)/NOTICE
 LOCAL_VENDOR_MODULE           := true
 LOCAL_MODULE_TAGS             := optional
 LOCAL_C_INCLUDES              := $(common_includes) $(kernel_includes)
diff --git a/msm8909/liblight/Android.mk b/msm8909/liblight/Android.mk
index ae01ece..6867474 100644
--- a/msm8909/liblight/Android.mk
+++ b/msm8909/liblight/Android.mk
@@ -25,6 +25,9 @@
 LOCAL_CFLAGS := -DLOG_TAG=\"qdlights\"
 LOCAL_CLANG  := true
 LOCAL_MODULE := lights.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0 legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS := by_exception_only not_allowed notice
+LOCAL_NOTICE_FILE := $(LOCAL_PATH)/NOTICE
 LOCAL_MODULE_TAGS := optional
 LOCAL_VENDOR_MODULE := true
 
diff --git a/msm8909/libmemtrack/Android.mk b/msm8909/libmemtrack/Android.mk
index 10fd40a..f2fee9e 100644
--- a/msm8909/libmemtrack/Android.mk
+++ b/msm8909/libmemtrack/Android.mk
@@ -27,4 +27,6 @@
 LOCAL_HEADER_LIBRARIES := libhardware_headers
 LOCAL_SRC_FILES := memtrack_msm.c kgsl.c
 LOCAL_MODULE := memtrack.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0
+LOCAL_LICENSE_CONDITIONS := notice
 include $(BUILD_SHARED_LIBRARY)
diff --git a/msm8909/libqdutils/Android.bp b/msm8909/libqdutils/Android.bp
index 3166e8d..80b09ae 100644
--- a/msm8909/libqdutils/Android.bp
+++ b/msm8909/libqdutils/Android.bp
@@ -1,3 +1,12 @@
+package {
+    // See: http://go/android-license-faq
+    // A large-scale-change added 'default_applicable_licenses' to import
+    // all of the 'license_kinds' from "hardware_qcom_display_license"
+    // to get the below license kinds:
+    //   SPDX-license-identifier-BSD
+    default_applicable_licenses: ["hardware_qcom_display_license"],
+}
+
 cc_library_shared {
     name: "libqdutils",
     vendor: true,
diff --git a/msm8909/libqservice/Android.bp b/msm8909/libqservice/Android.bp
index fe69d39..ef88b53 100644
--- a/msm8909/libqservice/Android.bp
+++ b/msm8909/libqservice/Android.bp
@@ -1,3 +1,14 @@
+package {
+    // See: http://go/android-license-faq
+    // A large-scale-change added 'default_applicable_licenses' to import
+    // all of the 'license_kinds' from "hardware_qcom_display_license"
+    // to get the below license kinds:
+    //   SPDX-license-identifier-Apache-2.0
+    //   SPDX-license-identifier-BSD
+    //   legacy_not_a_contribution
+    default_applicable_licenses: ["hardware_qcom_display_license"],
+}
+
 cc_library_shared {
     name: "libqservice",
     vendor: true,
diff --git a/msm8909/sdm/libs/core/Android.mk b/msm8909/sdm/libs/core/Android.mk
index c594410..ef1af75 100644
--- a/msm8909/sdm/libs/core/Android.mk
+++ b/msm8909/sdm/libs/core/Android.mk
@@ -3,6 +3,8 @@
 include $(LOCAL_PATH)/../../../common.mk
 
 LOCAL_MODULE                  := libsdmcore
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS      := notice
 LOCAL_VENDOR_MODULE           := true
 LOCAL_MODULE_TAGS             := optional
 LOCAL_C_INCLUDES              := $(common_includes) $(kernel_includes)
diff --git a/msm8909/sdm/libs/hwc/Android.mk b/msm8909/sdm/libs/hwc/Android.mk
index 6b7aa6c..2df3d96 100644
--- a/msm8909/sdm/libs/hwc/Android.mk
+++ b/msm8909/sdm/libs/hwc/Android.mk
@@ -4,6 +4,8 @@
 ifeq ($(use_hwc2),false)
 
 LOCAL_MODULE                  := hwcomposer.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS      := by_exception_only not_allowed notice
 LOCAL_VENDOR_MODULE           := true
 LOCAL_MODULE_RELATIVE_PATH    := hw
 LOCAL_MODULE_TAGS             := optional
diff --git a/msm8909/sdm/libs/hwc2/Android.mk b/msm8909/sdm/libs/hwc2/Android.mk
index 22e101b..bb5ac73 100644
--- a/msm8909/sdm/libs/hwc2/Android.mk
+++ b/msm8909/sdm/libs/hwc2/Android.mk
@@ -5,6 +5,8 @@
 ifeq ($(use_hwc2),true)
 
 LOCAL_MODULE                  := hwcomposer.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS      := by_exception_only not_allowed notice
 LOCAL_VENDOR_MODULE           := true
 LOCAL_MODULE_RELATIVE_PATH    := hw
 LOCAL_MODULE_TAGS             := optional
diff --git a/msm8909/sdm/libs/utils/Android.mk b/msm8909/sdm/libs/utils/Android.mk
index 481ea39..c27ecc7 100644
--- a/msm8909/sdm/libs/utils/Android.mk
+++ b/msm8909/sdm/libs/utils/Android.mk
@@ -3,6 +3,8 @@
 include $(LOCAL_PATH)/../../../common.mk
 
 LOCAL_MODULE                  := libsdmutils
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS      := notice
 LOCAL_VENDOR_MODULE           := true
 LOCAL_MODULE_TAGS             := optional
 LOCAL_C_INCLUDES              := $(common_includes)
diff --git a/msm8909w_3100/Android.mk b/msm8909w_3100/Android.mk
index 1a285bf..a963cf1 100644
--- a/msm8909w_3100/Android.mk
+++ b/msm8909w_3100/Android.mk
@@ -12,7 +12,7 @@
     display-hals += libgralloc1
 endif
 
-ifeq ($(call is-vendor-board-platform,QCOM),true)
+ifneq (,$(call is-vendor-board-qcom))
     include $(call all-named-subdir-makefiles,$(display-hals))
 else
 ifneq ($(filter msm% apq%,$(TARGET_BOARD_PLATFORM)),)
diff --git a/msm8909w_3100/common.mk b/msm8909w_3100/common.mk
index b253c80..7e46c20 100644
--- a/msm8909w_3100/common.mk
+++ b/msm8909w_3100/common.mk
@@ -21,7 +21,7 @@
     common_flags += -D__ARM_HAVE_NEON
 endif
 
-ifeq ($(call is-board-platform-in-list, $(MASTER_SIDE_CP_TARGET_LIST)), true)
+ifneq (,$(call is-board-platform-in-list2, $(MASTER_SIDE_CP_TARGET_LIST)))
     common_flags += -DMASTER_SIDE_CP
 endif
 
@@ -35,7 +35,7 @@
     common_flags += -DUSE_GRALLOC1
 endif
 
-common_includes := system/core/base/include
+common_includes := system/libbase/include
 CHECK_VERSION_LE = $(shell if [ $(1) -le $(2) ] ; then echo true ; else echo false ; fi)
 PLATFORM_SDK_NOUGAT = 25
 ifeq "REL" "$(PLATFORM_VERSION_CODENAME)"
diff --git a/msm8909w_3100/gpu_tonemapper/Android.mk b/msm8909w_3100/gpu_tonemapper/Android.mk
index 20e86b1..9ac7bf8 100644
--- a/msm8909w_3100/gpu_tonemapper/Android.mk
+++ b/msm8909w_3100/gpu_tonemapper/Android.mk
@@ -8,6 +8,8 @@
 
 include $(CLEAR_VARS)
 LOCAL_MODULE              := libgpu_tonemapper
+LOCAL_LICENSE_KINDS       := SPDX-license-identifier-Apache-2.0 legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS  := by_exception_only not_allowed notice
 LOCAL_VENDOR_MODULE       := true
 LOCAL_MODULE_TAGS         := optional
 LOCAL_C_INCLUDES          := $(TARGET_OUT_HEADERS)/qcom/display/
diff --git a/msm8909w_3100/gpu_tonemapper/glengine.cpp b/msm8909w_3100/gpu_tonemapper/glengine.cpp
index 6c94c23..e081df3 100644
--- a/msm8909w_3100/gpu_tonemapper/glengine.cpp
+++ b/msm8909w_3100/gpu_tonemapper/glengine.cpp
@@ -315,36 +315,30 @@
 //-----------------------------------------------------------------------------
 {
   for (GLint error = glGetError(); error; error = glGetError()) {
-    char *pError;
+    const char *pError = "<unknown error>";
     switch (error) {
       case GL_NO_ERROR:
-        pError = (char *)"GL_NO_ERROR";
+        pError = "GL_NO_ERROR";
         break;
       case GL_INVALID_ENUM:
-        pError = (char *)"GL_INVALID_ENUM";
+        pError = "GL_INVALID_ENUM";
         break;
       case GL_INVALID_VALUE:
-        pError = (char *)"GL_INVALID_VALUE";
+        pError = "GL_INVALID_VALUE";
         break;
       case GL_INVALID_OPERATION:
-        pError = (char *)"GL_INVALID_OPERATION";
+        pError = "GL_INVALID_OPERATION";
         break;
       case GL_OUT_OF_MEMORY:
-        pError = (char *)"GL_OUT_OF_MEMORY";
+        pError = "GL_OUT_OF_MEMORY";
         break;
       case GL_INVALID_FRAMEBUFFER_OPERATION:
-        pError = (char *)"GL_INVALID_FRAMEBUFFER_OPERATION";
+        pError = "GL_INVALID_FRAMEBUFFER_OPERATION";
         break;
-
-      default:
-        ALOGE("glError (0x%x) %s:%d\n", error, file, line);
-        return;
     }
 
     ALOGE("glError (%s) %s:%d\n", pError, file, line);
-    return;
   }
-  return;
 }
 
 //-----------------------------------------------------------------------------
@@ -357,59 +351,54 @@
       break;
     }
 
-    char *pError;
+    const char *pError = "<unknown error>";
     switch (error) {
       case EGL_SUCCESS:
-        pError = (char *)"EGL_SUCCESS";
+        pError = "EGL_SUCCESS";
         break;
       case EGL_NOT_INITIALIZED:
-        pError = (char *)"EGL_NOT_INITIALIZED";
+        pError = "EGL_NOT_INITIALIZED";
         break;
       case EGL_BAD_ACCESS:
-        pError = (char *)"EGL_BAD_ACCESS";
+        pError = "EGL_BAD_ACCESS";
         break;
       case EGL_BAD_ALLOC:
-        pError = (char *)"EGL_BAD_ALLOC";
+        pError = "EGL_BAD_ALLOC";
         break;
       case EGL_BAD_ATTRIBUTE:
-        pError = (char *)"EGL_BAD_ATTRIBUTE";
+        pError = "EGL_BAD_ATTRIBUTE";
         break;
       case EGL_BAD_CONTEXT:
-        pError = (char *)"EGL_BAD_CONTEXT";
+        pError = "EGL_BAD_CONTEXT";
         break;
       case EGL_BAD_CONFIG:
-        pError = (char *)"EGL_BAD_CONFIG";
+        pError = "EGL_BAD_CONFIG";
         break;
       case EGL_BAD_CURRENT_SURFACE:
-        pError = (char *)"EGL_BAD_CURRENT_SURFACE";
+        pError = "EGL_BAD_CURRENT_SURFACE";
         break;
       case EGL_BAD_DISPLAY:
-        pError = (char *)"EGL_BAD_DISPLAY";
+        pError = "EGL_BAD_DISPLAY";
         break;
       case EGL_BAD_SURFACE:
-        pError = (char *)"EGL_BAD_SURFACE";
+        pError = "EGL_BAD_SURFACE";
         break;
       case EGL_BAD_MATCH:
-        pError = (char *)"EGL_BAD_MATCH";
+        pError = "EGL_BAD_MATCH";
         break;
       case EGL_BAD_PARAMETER:
-        pError = (char *)"EGL_BAD_PARAMETER";
+        pError = "EGL_BAD_PARAMETER";
         break;
       case EGL_BAD_NATIVE_PIXMAP:
-        pError = (char *)"EGL_BAD_NATIVE_PIXMAP";
+        pError = "EGL_BAD_NATIVE_PIXMAP";
         break;
       case EGL_BAD_NATIVE_WINDOW:
-        pError = (char *)"EGL_BAD_NATIVE_WINDOW";
+        pError = "EGL_BAD_NATIVE_WINDOW";
         break;
       case EGL_CONTEXT_LOST:
-        pError = (char *)"EGL_CONTEXT_LOST";
+        pError = "EGL_CONTEXT_LOST";
         break;
-      default:
-        ALOGE("eglError (0x%x) %s:%d\n", error, file, line);
-        return;
     }
     ALOGE("eglError (%s) %s:%d\n", pError, file, line);
-    return;
   }
-  return;
 }
diff --git a/msm8909w_3100/hdmi_cec/Android.mk b/msm8909w_3100/hdmi_cec/Android.mk
index 4fed1f0..0922cc8 100644
--- a/msm8909w_3100/hdmi_cec/Android.mk
+++ b/msm8909w_3100/hdmi_cec/Android.mk
@@ -3,6 +3,8 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := hdmi_cec.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS      := notice
 LOCAL_VENDOR_MODULE           := true
 LOCAL_MODULE_RELATIVE_PATH    := hw
 LOCAL_MODULE_TAGS             := optional
diff --git a/msm8909w_3100/include/Android.mk b/msm8909w_3100/include/Android.mk
index ec07dde..1aef67a 100644
--- a/msm8909w_3100/include/Android.mk
+++ b/msm8909w_3100/include/Android.mk
@@ -10,6 +10,8 @@
 include $(CLEAR_VARS)
 #TODO move all exported headers to this directory
 LOCAL_MODULE := display_headers
+LOCAL_LICENSE_KINDS := SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS := notice
 LOCAL_EXPORT_C_INCLUDE_DIRS   := $(LOCAL_PATH) \
                                  $(display_top)/libcopybit \
                                  $(display_top)/libdrmutils \
diff --git a/msm8909w_3100/libcopybit/Android.mk b/msm8909w_3100/libcopybit/Android.mk
index 6e906c3..979dd8a 100644
--- a/msm8909w_3100/libcopybit/Android.mk
+++ b/msm8909w_3100/libcopybit/Android.mk
@@ -24,6 +24,9 @@
 include $(CLEAR_VARS)
 ifneq ($(TARGET_USES_GRALLOC1), true)
 LOCAL_MODULE                  := copybit.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS      := by_exception_only not_allowed notice
+LOCAL_NOTICE_FILE             := $(LOCAL_PATH)/NOTICE
 LOCAL_VENDOR_MODULE           := true
 LOCAL_MODULE_RELATIVE_PATH    := hw
 LOCAL_MODULE_TAGS             := optional
@@ -39,12 +42,12 @@
     include $(BUILD_SHARED_LIBRARY)
 else
     ifneq ($(call is-chipset-in-board-platform,msm7630),true)
-        ifeq ($(call is-board-platform-in-list,$(MSM7K_BOARD_PLATFORMS)),true)
+        ifneq (,$(call is-board-platform-in-list2,$(MSM7K_BOARD_PLATFORMS)))
             LOCAL_CFLAGS += -DCOPYBIT_MSM7K=1
             LOCAL_SRC_FILES := software_converter.cpp copybit.cpp
             include $(BUILD_SHARED_LIBRARY)
         endif
-        ifeq ($(call is-board-platform-in-list, msm8610 msm8909),true)
+        ifneq (,$(call is-board-platform-in-list2, msm8610 msm8909))
             LOCAL_SRC_FILES := software_converter.cpp copybit.cpp
             include $(BUILD_SHARED_LIBRARY)
         endif
diff --git a/msm8909w_3100/libdisplayconfig/Android.mk b/msm8909w_3100/libdisplayconfig/Android.mk
index 40b96e6..ec13d0d 100644
--- a/msm8909w_3100/libdisplayconfig/Android.mk
+++ b/msm8909w_3100/libdisplayconfig/Android.mk
@@ -2,6 +2,8 @@
 
 include $(CLEAR_VARS)
 LOCAL_MODULE                  := libdisplayconfig
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS      := notice
 LOCAL_MODULE_TAGS             := optional
 LOCAL_C_INCLUDES              := $(common_includes)
 LOCAL_HEADER_LIBRARIES        := display_headers
diff --git a/msm8909w_3100/libdrmutils/Android.mk b/msm8909w_3100/libdrmutils/Android.mk
index 7c5a4b0..057e177 100644
--- a/msm8909w_3100/libdrmutils/Android.mk
+++ b/msm8909w_3100/libdrmutils/Android.mk
@@ -2,6 +2,8 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := libdrmutils
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS      := notice
 LOCAL_VENDOR_MODULE           := true
 LOCAL_MODULE_TAGS             := optional
 LOCAL_C_INCLUDES              := external/libdrm
diff --git a/msm8909w_3100/libgralloc/Android.mk b/msm8909w_3100/libgralloc/Android.mk
index 86c0f04..08d5f56 100644
--- a/msm8909w_3100/libgralloc/Android.mk
+++ b/msm8909w_3100/libgralloc/Android.mk
@@ -18,6 +18,9 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := gralloc.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS      := notice
+LOCAL_NOTICE_FILE             := $(LOCAL_PATH)/NOTICE
 LOCAL_VENDOR_MODULE           := true
 LOCAL_MODULE_RELATIVE_PATH    := hw
 LOCAL_MODULE_TAGS             := optional
@@ -39,6 +42,9 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := libmemalloc
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS      := notice
+LOCAL_NOTICE_FILE             := $(LOCAL_PATH)/NOTICE
 LOCAL_VENDOR_MODULE           := true
 LOCAL_MODULE_TAGS             := optional
 LOCAL_C_INCLUDES              := $(common_includes) $(kernel_includes)
diff --git a/msm8909w_3100/libgralloc1/Android.mk b/msm8909w_3100/libgralloc1/Android.mk
index 90a7080..364c1c0 100644
--- a/msm8909w_3100/libgralloc1/Android.mk
+++ b/msm8909w_3100/libgralloc1/Android.mk
@@ -4,6 +4,8 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := gralloc.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS      := by_exception_only not_allowed notice
 LOCAL_VENDOR_MODULE           := true
 LOCAL_MODULE_RELATIVE_PATH    := hw
 LOCAL_MODULE_TAGS             := optional
@@ -27,6 +29,8 @@
 #libgrallocutils
 include $(CLEAR_VARS)
 LOCAL_MODULE                  := libgrallocutils
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS      := by_exception_only not_allowed notice
 LOCAL_VENDOR_MODULE           := true
 LOCAL_MODULE_TAGS             := optional
 LOCAL_C_INCLUDES              := $(common_includes) $(kernel_includes)
diff --git a/msm8909w_3100/liblight/Android.mk b/msm8909w_3100/liblight/Android.mk
index 2f2e1ca..c1127ed 100644
--- a/msm8909w_3100/liblight/Android.mk
+++ b/msm8909w_3100/liblight/Android.mk
@@ -26,6 +26,9 @@
 LOCAL_CFLAGS := -DLOG_TAG=\"qdlights\"
 LOCAL_CLANG  := true
 LOCAL_MODULE := lights.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS := by_exception_only not_allowed notice
+LOCAL_NOTICE_FILE := $(LOCAL_PATH)/NOTICE
 LOCAL_MODULE_TAGS := optional
 LOCAL_VENDOR_MODULE := true
 
diff --git a/msm8909w_3100/libmemtrack/Android.mk b/msm8909w_3100/libmemtrack/Android.mk
index d4014bb..a66a5f2 100644
--- a/msm8909w_3100/libmemtrack/Android.mk
+++ b/msm8909w_3100/libmemtrack/Android.mk
@@ -26,4 +26,6 @@
 LOCAL_SHARED_LIBRARIES := liblog
 LOCAL_SRC_FILES := memtrack_msm.c kgsl.c
 LOCAL_MODULE := memtrack.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0
+LOCAL_LICENSE_CONDITIONS := notice
 include $(BUILD_SHARED_LIBRARY)
diff --git a/msm8909w_3100/libqdutils/Android.mk b/msm8909w_3100/libqdutils/Android.mk
index 60efb3a..4b59b59 100644
--- a/msm8909w_3100/libqdutils/Android.mk
+++ b/msm8909w_3100/libqdutils/Android.mk
@@ -3,6 +3,8 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := libqdutils
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS      := notice
 LOCAL_VENDOR_MODULE           := true
 LOCAL_MODULE_TAGS             := optional
 LOCAL_SHARED_LIBRARIES        := $(common_libs) libbinder libqservice
@@ -31,6 +33,8 @@
 
 LOCAL_MODULE_TAGS               := optional
 LOCAL_MODULE                    := libqdMetaData
+LOCAL_LICENSE_KINDS             := SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS        := notice
 LOCAL_VENDOR_MODULE             := true
 include $(BUILD_SHARED_LIBRARY)
 
@@ -47,5 +51,7 @@
 
 LOCAL_MODULE_TAGS               := optional
 LOCAL_MODULE                    := libqdMetaData.system
+LOCAL_LICENSE_KINDS             := SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS        := notice
 
 include $(BUILD_SHARED_LIBRARY)
diff --git a/msm8909w_3100/libqservice/Android.mk b/msm8909w_3100/libqservice/Android.mk
index 9cfdf97..0b7c733 100644
--- a/msm8909w_3100/libqservice/Android.mk
+++ b/msm8909w_3100/libqservice/Android.mk
@@ -3,6 +3,8 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := libqservice
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS      := by_exception_only not_allowed notice
 LOCAL_VENDOR_MODULE           := true
 LOCAL_MODULE_TAGS             := optional
 LOCAL_C_INCLUDES              := $(common_includes) $(kernel_includes)
diff --git a/msm8909w_3100/sdm/libs/core/Android.mk b/msm8909w_3100/sdm/libs/core/Android.mk
index 1d55d96..4e31fbb 100644
--- a/msm8909w_3100/sdm/libs/core/Android.mk
+++ b/msm8909w_3100/sdm/libs/core/Android.mk
@@ -3,6 +3,8 @@
 include $(LOCAL_PATH)/../../../common.mk
 
 LOCAL_MODULE                  := libsdmcore
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS      := notice
 LOCAL_VENDOR_MODULE           := true
 LOCAL_MODULE_TAGS             := optional
 LOCAL_C_INCLUDES              := $(common_includes) $(kernel_includes)
diff --git a/msm8909w_3100/sdm/libs/hwc/Android.mk b/msm8909w_3100/sdm/libs/hwc/Android.mk
index 6b7aa6c..2df3d96 100644
--- a/msm8909w_3100/sdm/libs/hwc/Android.mk
+++ b/msm8909w_3100/sdm/libs/hwc/Android.mk
@@ -4,6 +4,8 @@
 ifeq ($(use_hwc2),false)
 
 LOCAL_MODULE                  := hwcomposer.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS      := by_exception_only not_allowed notice
 LOCAL_VENDOR_MODULE           := true
 LOCAL_MODULE_RELATIVE_PATH    := hw
 LOCAL_MODULE_TAGS             := optional
diff --git a/msm8909w_3100/sdm/libs/hwc2/Android.mk b/msm8909w_3100/sdm/libs/hwc2/Android.mk
index beec1a8..942d30c 100644
--- a/msm8909w_3100/sdm/libs/hwc2/Android.mk
+++ b/msm8909w_3100/sdm/libs/hwc2/Android.mk
@@ -5,6 +5,8 @@
 ifeq ($(use_hwc2),true)
 
 LOCAL_MODULE                  := hwcomposer.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS      := by_exception_only not_allowed notice
 LOCAL_VENDOR_MODULE           := true
 LOCAL_MODULE_RELATIVE_PATH    := hw
 LOCAL_MODULE_TAGS             := optional
diff --git a/msm8909w_3100/sdm/libs/utils/Android.mk b/msm8909w_3100/sdm/libs/utils/Android.mk
index 09e1414..1c09f7e 100644
--- a/msm8909w_3100/sdm/libs/utils/Android.mk
+++ b/msm8909w_3100/sdm/libs/utils/Android.mk
@@ -3,6 +3,8 @@
 include $(LOCAL_PATH)/../../../common.mk
 
 LOCAL_MODULE                  := libsdmutils
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS      := notice
 LOCAL_VENDOR_MODULE           := true
 LOCAL_MODULE_TAGS             := optional
 LOCAL_C_INCLUDES              := $(common_includes)
diff --git a/msm8960/Android.mk b/msm8960/Android.mk
index 13a0054..f035c1c 100644
--- a/msm8960/Android.mk
+++ b/msm8960/Android.mk
@@ -1,7 +1,7 @@
 display-hals := libgralloc libgenlock libcopybit liblight
 display-hals += libhwcomposer liboverlay libqdutils libexternal libqservice
 display-hals += libmemtrack
-ifeq ($(call is-vendor-board-platform,QCOM),true)
+ifneq (,$(call is-vendor-board-qcom))
     include $(call all-named-subdir-makefiles,$(display-hals))
 else
 ifneq ($(filter msm8226 msm8x26 msm8960 msm8974 msm8x74,$(TARGET_BOARD_PLATFORM)),)
diff --git a/msm8960/common.mk b/msm8960/common.mk
index fcbcfb5..f385d4e 100644
--- a/msm8960/common.mk
+++ b/msm8960/common.mk
@@ -33,7 +33,7 @@
 kernel_includes :=
 
 # Executed only on QCOM BSPs
-ifeq ($(call is-vendor-board-platform,QCOM),true)
+ifneq (,$(call is-vendor-board-qcom))
     common_flags += -DQCOM_BSP
     common_deps += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr
     kernel_includes += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr/include
diff --git a/msm8960/libcopybit/Android.mk b/msm8960/libcopybit/Android.mk
index ccc7bde..b30e977 100644
--- a/msm8960/libcopybit/Android.mk
+++ b/msm8960/libcopybit/Android.mk
@@ -22,6 +22,9 @@
 
 include $(CLEAR_VARS)
 LOCAL_MODULE                  := copybit.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS      := by_exception_only not_allowed notice
+LOCAL_NOTICE_FILE             := $(LOCAL_PATH)/NOTICE
 LOCAL_MODULE_RELATIVE_PATH    := hw
 LOCAL_PROPRIETARY_MODULE      := true
 LOCAL_MODULE_TAGS             := optional
@@ -36,7 +39,7 @@
     include $(BUILD_SHARED_LIBRARY)
 else
     ifneq ($(call is-chipset-in-board-platform,msm7630),true)
-        ifeq ($(call is-board-platform-in-list,$(MSM7K_BOARD_PLATFORMS)),true)
+        ifneq (,$(call is-board-platform-in-list2,$(MSM7K_BOARD_PLATFORMS)))
             LOCAL_CFLAGS += -DCOPYBIT_MSM7K=1
             LOCAL_SRC_FILES := software_converter.cpp copybit.cpp
             include $(BUILD_SHARED_LIBRARY)
diff --git a/msm8960/libexternal/Android.mk b/msm8960/libexternal/Android.mk
index 9200478..7ce8c84 100644
--- a/msm8960/libexternal/Android.mk
+++ b/msm8960/libexternal/Android.mk
@@ -3,6 +3,8 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := libexternal
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS      := by_exception_only not_allowed notice
 LOCAL_MODULE_PATH             := $(TARGET_OUT_SHARED_LIBRARIES)
 LOCAL_MODULE_TAGS             := optional
 LOCAL_C_INCLUDES              := $(common_includes) $(kernel_includes)
diff --git a/msm8960/libgenlock/Android.mk b/msm8960/libgenlock/Android.mk
index 96e8b4e..f03744a 100644
--- a/msm8960/libgenlock/Android.mk
+++ b/msm8960/libgenlock/Android.mk
@@ -3,6 +3,8 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := libgenlock
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS      := notice
 LOCAL_MODULE_TAGS             := optional
 LOCAL_C_INCLUDES              := $(common_includes)
 LOCAL_SHARED_LIBRARIES        := liblog libcutils
diff --git a/msm8960/libgralloc/Android.mk b/msm8960/libgralloc/Android.mk
index fd6332e..9ba838f 100644
--- a/msm8960/libgralloc/Android.mk
+++ b/msm8960/libgralloc/Android.mk
@@ -18,6 +18,9 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := gralloc.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS      := notice
+LOCAL_NOTICE_FILE             := $(LOCAL_PATH)/NOTICE
 LOCAL_MODULE_RELATIVE_PATH    := hw
 LOCAL_PROPRIETARY_MODULE      := true
 LOCAL_MODULE_TAGS             := optional
@@ -36,6 +39,9 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := libmemalloc
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS      := notice
+LOCAL_NOTICE_FILE             := $(LOCAL_PATH)/NOTICE
 LOCAL_MODULE_TAGS             := optional
 LOCAL_C_INCLUDES              := $(common_includes) $(kernel_includes)
 LOCAL_SHARED_LIBRARIES        := $(common_libs) libqdutils libdl
diff --git a/msm8960/libhwcomposer/Android.mk b/msm8960/libhwcomposer/Android.mk
index d1190b0..715d23d 100644
--- a/msm8960/libhwcomposer/Android.mk
+++ b/msm8960/libhwcomposer/Android.mk
@@ -3,6 +3,8 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := hwcomposer.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS      := by_exception_only not_allowed notice
 LOCAL_MODULE_RELATIVE_PATH    := hw
 LOCAL_PROPRIETARY_MODULE      := true
 LOCAL_MODULE_TAGS             := optional
diff --git a/msm8960/liblight/Android.mk b/msm8960/liblight/Android.mk
index 3efacec..061cf51 100644
--- a/msm8960/liblight/Android.mk
+++ b/msm8960/liblight/Android.mk
@@ -23,6 +23,9 @@
 LOCAL_SHARED_LIBRARIES := liblog
 LOCAL_CFLAGS := $(common_flags) -DLOG_TAG=\"qdlights\"
 LOCAL_MODULE := lights.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0
+LOCAL_LICENSE_CONDITIONS := notice
+LOCAL_NOTICE_FILE := $(LOCAL_PATH)/NOTICE
 LOCAL_MODULE_TAGS := optional
 LOCAL_CFLAGS += -Wno-error
 
diff --git a/msm8960/libmemtrack/Android.mk b/msm8960/libmemtrack/Android.mk
index 95acbb9..9718a8d 100644
--- a/msm8960/libmemtrack/Android.mk
+++ b/msm8960/libmemtrack/Android.mk
@@ -24,5 +24,7 @@
 LOCAL_SHARED_LIBRARIES := liblog
 LOCAL_SRC_FILES := memtrack_msm.c kgsl.c
 LOCAL_MODULE := memtrack.msm8960
+LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0
+LOCAL_LICENSE_CONDITIONS := notice
 LOCAL_CFLAGS += -Wno-error
 include $(BUILD_SHARED_LIBRARY)
diff --git a/msm8960/liboverlay/Android.mk b/msm8960/liboverlay/Android.mk
index a375284..4ea5b7e 100644
--- a/msm8960/liboverlay/Android.mk
+++ b/msm8960/liboverlay/Android.mk
@@ -3,6 +3,8 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := liboverlay
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS      := by_exception_only not_allowed notice
 LOCAL_MODULE_PATH             := $(TARGET_OUT_SHARED_LIBRARIES)
 LOCAL_MODULE_TAGS             := optional
 LOCAL_C_INCLUDES              := $(common_includes) $(kernel_includes)
diff --git a/msm8960/libqdutils/Android.mk b/msm8960/libqdutils/Android.mk
index 459f548..9c80b12 100644
--- a/msm8960/libqdutils/Android.mk
+++ b/msm8960/libqdutils/Android.mk
@@ -3,6 +3,8 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := libqdutils
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS      := notice
 LOCAL_MODULE_TAGS             := optional
 LOCAL_SHARED_LIBRARIES        := $(common_libs)
 LOCAL_C_INCLUDES              := $(common_includes) $(kernel_includes)
@@ -26,5 +28,6 @@
 LOCAL_CFLAGS                    += -DLOG_TAG=\"DisplayMetaData\"
 LOCAL_MODULE_TAGS               := optional
 LOCAL_MODULE                    := libqdMetaData
+LOCAL_LICENSE_KINDS             := SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS        := notice
 include $(BUILD_SHARED_LIBRARY)
-
diff --git a/msm8960/libqservice/Android.mk b/msm8960/libqservice/Android.mk
index 5f90beb..ecf031b 100644
--- a/msm8960/libqservice/Android.mk
+++ b/msm8960/libqservice/Android.mk
@@ -3,6 +3,8 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := libqservice
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS      := by_exception_only not_allowed notice
 LOCAL_MODULE_PATH             := $(TARGET_OUT_SHARED_LIBRARIES)
 LOCAL_MODULE_TAGS             := optional
 LOCAL_C_INCLUDES              := $(common_includes) $(kernel_includes)
diff --git a/msm8960/libtilerenderer/Android.mk b/msm8960/libtilerenderer/Android.mk
index ca17fbc..18eb9ab 100644
--- a/msm8960/libtilerenderer/Android.mk
+++ b/msm8960/libtilerenderer/Android.mk
@@ -4,6 +4,8 @@
 
 ifeq ($(USE_OPENGL_RENDERER),true)
 LOCAL_MODULE           := libtilerenderer
+LOCAL_LICENSE_KINDS    := SPDX-license-identifier-Apache-2.0
+LOCAL_LICENSE_CONDITIONS := notice
 LOCAL_MODULE_TAGS      := optional
 LOCAL_CFLAGS           := -DLOG_TAG=\"qdtilerenderer\"
 LOCAL_C_INCLUDES := \
diff --git a/msm8994/Android.mk b/msm8994/Android.mk
index a0644d7..0189300 100644
--- a/msm8994/Android.mk
+++ b/msm8994/Android.mk
@@ -1,7 +1,7 @@
 display-hals := libgralloc libcopybit liblight libmemtrack libqservice
 display-hals += libhwcomposer liboverlay libqdutils libhdmi
 
-ifeq ($(call is-vendor-board-platform,QCOM),true)
+ifneq (,$(call is-vendor-board-qcom))
     include $(call all-named-subdir-makefiles,$(display-hals))
 else
 ifneq ($(filter msm% apq%,$(TARGET_BOARD_PLATFORM)),)
diff --git a/msm8994/common.mk b/msm8994/common.mk
index bbc2223..de14966 100644
--- a/msm8994/common.mk
+++ b/msm8994/common.mk
@@ -42,7 +42,7 @@
 # Enable QCOM Display features
     common_flags += -DQCOM_BSP
 endif
-ifneq ($(call is-platform-sdk-version-at-least,18),true)
+ifneq (T,T)  # TODO: Obsolete, please remove
     common_flags += -DANDROID_JELLYBEAN_MR1=1
 endif
 ifeq ($(TARGET_COMPILE_WITH_MSM_KERNEL),true)
diff --git a/msm8994/libcopybit/Android.mk b/msm8994/libcopybit/Android.mk
index 7b12310..f05eea4 100644
--- a/msm8994/libcopybit/Android.mk
+++ b/msm8994/libcopybit/Android.mk
@@ -25,6 +25,9 @@
 LOCAL_CLANG := false
 
 LOCAL_MODULE                  := copybit.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS      := by_exception_only not_allowed notice
+LOCAL_NOTICE_FILE             := $(LOCAL_PATH)/NOTICE
 LOCAL_MODULE_RELATIVE_PATH    := hw
 LOCAL_PROPRIETARY_MODULE      := true
 LOCAL_MODULE_TAGS             := optional
@@ -39,12 +42,12 @@
     include $(BUILD_SHARED_LIBRARY)
 else
     ifneq ($(call is-chipset-in-board-platform,msm7630),true)
-        ifeq ($(call is-board-platform-in-list,$(MSM7K_BOARD_PLATFORMS)),true)
+        ifneq (,$(call is-board-platform-in-list2,$(MSM7K_BOARD_PLATFORMS)))
             LOCAL_CFLAGS += -DCOPYBIT_MSM7K=1
             LOCAL_SRC_FILES := software_converter.cpp copybit.cpp
             include $(BUILD_SHARED_LIBRARY)
         endif
-        ifeq ($(call is-board-platform-in-list, msm8610 msm8909),true)
+        ifneq (,$(call is-board-platform-in-list2, msm8610 msm8909))
             LOCAL_SRC_FILES := software_converter.cpp copybit.cpp
             include $(BUILD_SHARED_LIBRARY)
         endif
diff --git a/msm8994/libgralloc/Android.mk b/msm8994/libgralloc/Android.mk
index ac3d492..4cf2c4b 100644
--- a/msm8994/libgralloc/Android.mk
+++ b/msm8994/libgralloc/Android.mk
@@ -21,6 +21,9 @@
 LOCAL_CLANG := false
 
 LOCAL_MODULE                  := gralloc.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS      := notice
+LOCAL_NOTICE_FILE             := $(LOCAL_PATH)/NOTICE
 LOCAL_MODULE_RELATIVE_PATH    := hw
 LOCAL_PROPRIETARY_MODULE      := true
 LOCAL_MODULE_TAGS             := optional
@@ -49,6 +52,9 @@
 LOCAL_CLANG := false
 
 LOCAL_MODULE                  := libmemalloc
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS      := notice
+LOCAL_NOTICE_FILE             := $(LOCAL_PATH)/NOTICE
 LOCAL_MODULE_TAGS             := optional
 LOCAL_C_INCLUDES              := $(common_includes) $(kernel_includes)
 LOCAL_SHARED_LIBRARIES        := $(common_libs) libqdutils libdl
diff --git a/msm8994/libhdmi/Android.mk b/msm8994/libhdmi/Android.mk
index 1aab46d..68bfb36 100644
--- a/msm8994/libhdmi/Android.mk
+++ b/msm8994/libhdmi/Android.mk
@@ -6,6 +6,8 @@
 LOCAL_CLANG := false
 
 LOCAL_MODULE                  := libhdmi
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS      := by_exception_only not_allowed notice
 LOCAL_MODULE_TAGS             := optional
 LOCAL_C_INCLUDES              := $(common_includes) $(kernel_includes)
 LOCAL_SHARED_LIBRARIES        := $(common_libs) liboverlay libqdutils
diff --git a/msm8994/libhwcomposer/Android.mk b/msm8994/libhwcomposer/Android.mk
index 9ae742d..2107109 100644
--- a/msm8994/libhwcomposer/Android.mk
+++ b/msm8994/libhwcomposer/Android.mk
@@ -6,6 +6,8 @@
 LOCAL_CLANG := false
 
 LOCAL_MODULE                  := hwcomposer.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS      := by_exception_only not_allowed notice
 LOCAL_MODULE_RELATIVE_PATH    := hw
 LOCAL_PROPRIETARY_MODULE      := true
 LOCAL_MODULE_TAGS             := optional
diff --git a/msm8994/liblight/Android.mk b/msm8994/liblight/Android.mk
index 3efacec..061cf51 100644
--- a/msm8994/liblight/Android.mk
+++ b/msm8994/liblight/Android.mk
@@ -23,6 +23,9 @@
 LOCAL_SHARED_LIBRARIES := liblog
 LOCAL_CFLAGS := $(common_flags) -DLOG_TAG=\"qdlights\"
 LOCAL_MODULE := lights.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0
+LOCAL_LICENSE_CONDITIONS := notice
+LOCAL_NOTICE_FILE := $(LOCAL_PATH)/NOTICE
 LOCAL_MODULE_TAGS := optional
 LOCAL_CFLAGS += -Wno-error
 
diff --git a/msm8994/libmemtrack/Android.mk b/msm8994/libmemtrack/Android.mk
index 658d65f..f8643d8 100644
--- a/msm8994/libmemtrack/Android.mk
+++ b/msm8994/libmemtrack/Android.mk
@@ -25,5 +25,7 @@
 LOCAL_SHARED_LIBRARIES := liblog
 LOCAL_SRC_FILES := memtrack_msm.c kgsl.c
 LOCAL_MODULE := memtrack.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0
+LOCAL_LICENSE_CONDITIONS := notice
 LOCAL_CFLAGS += -Wno-error
 include $(BUILD_SHARED_LIBRARY)
diff --git a/msm8994/liboverlay/Android.mk b/msm8994/liboverlay/Android.mk
index 26a058f..fcb1267 100644
--- a/msm8994/liboverlay/Android.mk
+++ b/msm8994/liboverlay/Android.mk
@@ -6,6 +6,8 @@
 LOCAL_CLANG := false
 
 LOCAL_MODULE                  := liboverlay
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS      := by_exception_only not_allowed notice
 LOCAL_MODULE_TAGS             := optional
 LOCAL_C_INCLUDES              := $(common_includes) $(kernel_includes)
 LOCAL_SHARED_LIBRARIES        := $(common_libs) libqdutils libmemalloc \
diff --git a/msm8994/libqdutils/Android.mk b/msm8994/libqdutils/Android.mk
index e9861a0..717c636 100644
--- a/msm8994/libqdutils/Android.mk
+++ b/msm8994/libqdutils/Android.mk
@@ -6,6 +6,8 @@
 LOCAL_CLANG := false
 
 LOCAL_MODULE                  := libqdutils
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS      := notice
 LOCAL_MODULE_TAGS             := optional
 LOCAL_SHARED_LIBRARIES        := $(common_libs) libui libbinder libqservice
 LOCAL_C_INCLUDES              := $(common_includes) $(kernel_includes)
@@ -35,5 +37,6 @@
 LOCAL_CFLAGS                    += -DLOG_TAG=\"DisplayMetaData\"
 LOCAL_MODULE_TAGS               := optional
 LOCAL_MODULE                    := libqdMetaData
+LOCAL_LICENSE_KINDS             := SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS        := notice
 include $(BUILD_SHARED_LIBRARY)
-
diff --git a/msm8994/libqservice/Android.mk b/msm8994/libqservice/Android.mk
index 9acbd88..59c11b1 100644
--- a/msm8994/libqservice/Android.mk
+++ b/msm8994/libqservice/Android.mk
@@ -6,6 +6,8 @@
 LOCAL_CLANG := false
 
 LOCAL_MODULE                  := libqservice
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS      := by_exception_only not_allowed notice
 LOCAL_MODULE_TAGS             := optional
 LOCAL_C_INCLUDES              := $(common_includes) $(kernel_includes)
 LOCAL_SHARED_LIBRARIES        := $(common_libs) libbinder
diff --git a/msm8996/Android.mk b/msm8996/Android.mk
index b5961ad..1864f92 100644
--- a/msm8996/Android.mk
+++ b/msm8996/Android.mk
@@ -9,7 +9,7 @@
 sdm-libs := sdm/libs
 display-hals += $(sdm-libs)/utils $(sdm-libs)/core $(sdm-libs)/hwc $(sdm-libs)/hwc2
 
-ifeq ($(call is-vendor-board-platform,QCOM),true)
+ifneq (,$(call is-vendor-board-qcom))
     include $(call all-named-subdir-makefiles,$(display-hals))
 else
 ifneq ($(filter msm% apq%,$(TARGET_BOARD_PLATFORM)),)
diff --git a/msm8996/common.mk b/msm8996/common.mk
index 1dd17eb..ac8828d 100644
--- a/msm8996/common.mk
+++ b/msm8996/common.mk
@@ -41,11 +41,11 @@
     common_flags += -D__ARM_HAVE_NEON
 endif
 
-ifeq ($(call is-board-platform-in-list, $(MSM_VIDC_TARGET_LIST)), true)
+ifneq (,$(call is-board-platform-in-list2, $(MSM_VIDC_TARGET_LIST)))
     common_flags += -DVENUS_COLOR_FORMAT
 endif
 
-ifeq ($(call is-board-platform-in-list, $(MASTER_SIDE_CP_TARGET_LIST)), true)
+ifneq (,$(call is-board-platform-in-list2, $(MASTER_SIDE_CP_TARGET_LIST)))
     common_flags += -DMASTER_SIDE_CP
 endif
 
diff --git a/msm8996/hdmi_cec/Android.mk b/msm8996/hdmi_cec/Android.mk
index 3117b59..022274c 100644
--- a/msm8996/hdmi_cec/Android.mk
+++ b/msm8996/hdmi_cec/Android.mk
@@ -3,6 +3,8 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := hdmi_cec.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS      := notice
 LOCAL_MODULE_RELATIVE_PATH    := hw
 LOCAL_PROPRIETARY_MODULE      := true
 LOCAL_MODULE_TAGS             := optional
diff --git a/msm8996/libcopybit/Android.mk b/msm8996/libcopybit/Android.mk
index 41ee9e9..f16f95d 100644
--- a/msm8996/libcopybit/Android.mk
+++ b/msm8996/libcopybit/Android.mk
@@ -17,12 +17,18 @@
 
 include $(CLEAR_VARS)
 LOCAL_MODULE := copybit_headers
+LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS := by_exception_only not_allowed notice
+LOCAL_NOTICE_FILE := $(LOCAL_PATH)/NOTICE
 LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)
 include $(BUILD_HEADER_LIBRARY)
 
 include $(CLEAR_VARS)
 ifneq ($(TARGET_USES_GRALLOC1), true)
 LOCAL_MODULE                  := copybit.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS      := by_exception_only not_allowed notice
+LOCAL_NOTICE_FILE             := $(LOCAL_PATH)/NOTICE
 LOCAL_MODULE_RELATIVE_PATH    := hw
 LOCAL_PROPRIETARY_MODULE      := true
 LOCAL_MODULE_TAGS             := optional
@@ -38,12 +44,12 @@
     include $(BUILD_SHARED_LIBRARY)
 else
     ifneq ($(call is-chipset-in-board-platform,msm7630),true)
-        ifeq ($(call is-board-platform-in-list,$(MSM7K_BOARD_PLATFORMS)),true)
+        ifneq (,$(call is-board-platform-in-list2,$(MSM7K_BOARD_PLATFORMS)))
             LOCAL_CFLAGS += -DCOPYBIT_MSM7K=1
             LOCAL_SRC_FILES := software_converter.cpp copybit.cpp
             include $(BUILD_SHARED_LIBRARY)
         endif
-        ifeq ($(call is-board-platform-in-list, msm8610 msm8909),true)
+        ifneq (,$(call is-board-platform-in-list2, msm8610 msm8909))
             LOCAL_SRC_FILES := software_converter.cpp copybit.cpp
             include $(BUILD_SHARED_LIBRARY)
         endif
diff --git a/msm8996/libgralloc/Android.mk b/msm8996/libgralloc/Android.mk
index 8778ad8..de6cbf4 100644
--- a/msm8996/libgralloc/Android.mk
+++ b/msm8996/libgralloc/Android.mk
@@ -18,12 +18,18 @@
 
 include $(CLEAR_VARS)
 LOCAL_MODULE := gralloc_headers
+LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS := notice
+LOCAL_NOTICE_FILE := $(LOCAL_PATH)/NOTICE
 LOCAL_EXPORT_C_INCLUDE_DIRS   := $(LOCAL_PATH)
 include $(BUILD_HEADER_LIBRARY)
 
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := gralloc.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS      := notice
+LOCAL_NOTICE_FILE             := $(LOCAL_PATH)/NOTICE
 LOCAL_MODULE_RELATIVE_PATH    := hw
 LOCAL_PROPRIETARY_MODULE      := true
 LOCAL_MODULE_TAGS             := optional
@@ -48,6 +54,9 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := libmemalloc
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS      := notice
+LOCAL_NOTICE_FILE             := $(LOCAL_PATH)/NOTICE
 LOCAL_PROPRIETARY_MODULE      := true
 LOCAL_MODULE_TAGS             := optional
 LOCAL_C_INCLUDES              := $(common_includes) $(kernel_includes)
diff --git a/msm8996/libgralloc1/Android.mk b/msm8996/libgralloc1/Android.mk
index 0a807e1..489adea 100644
--- a/msm8996/libgralloc1/Android.mk
+++ b/msm8996/libgralloc1/Android.mk
@@ -4,12 +4,16 @@
 
 include $(CLEAR_VARS)
 LOCAL_MODULE := gralloc_headers
+LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS := by_exception_only not_allowed notice
 LOCAL_EXPORT_C_INCLUDE_DIRS   := $(LOCAL_PATH)
 LOCAL_EXPORT_HEADER_LIBRARY_HEADERS := libhardware_headers liblog_headers
 include $(BUILD_HEADER_LIBRARY)
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := gralloc.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS      := by_exception_only not_allowed notice
 LOCAL_MODULE_RELATIVE_PATH    := hw
 LOCAL_PROPRIETARY_MODULE      := true
 LOCAL_MODULE_TAGS             := optional
diff --git a/msm8996/liblight/Android.mk b/msm8996/liblight/Android.mk
index 4f84703..f0baa98 100644
--- a/msm8996/liblight/Android.mk
+++ b/msm8996/liblight/Android.mk
@@ -25,6 +25,9 @@
 LOCAL_CFLAGS := $(common_flags) -DLOG_TAG=\"qdlights\"
 LOCAL_CLANG  := true
 LOCAL_MODULE := lights.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0
+LOCAL_LICENSE_CONDITIONS := notice
+LOCAL_NOTICE_FILE := $(LOCAL_PATH)/NOTICE
 LOCAL_MODULE_TAGS := optional
 LOCAL_CFLAGS += -Wno-error
 
diff --git a/msm8996/libmemtrack/Android.mk b/msm8996/libmemtrack/Android.mk
index 4907b85..521f5b0 100644
--- a/msm8996/libmemtrack/Android.mk
+++ b/msm8996/libmemtrack/Android.mk
@@ -26,5 +26,7 @@
 LOCAL_SHARED_LIBRARIES := liblog
 LOCAL_SRC_FILES := memtrack_msm.c kgsl.c
 LOCAL_MODULE := memtrack.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0
+LOCAL_LICENSE_CONDITIONS := notice
 LOCAL_CFLAGS += -Wno-error
 include $(BUILD_SHARED_LIBRARY)
diff --git a/msm8996/libqdutils/Android.mk b/msm8996/libqdutils/Android.mk
index c714ca0..06c80fb 100644
--- a/msm8996/libqdutils/Android.mk
+++ b/msm8996/libqdutils/Android.mk
@@ -3,6 +3,8 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := libqdutils
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS      := notice
 LOCAL_PROPRIETARY_MODULE      := true
 LOCAL_MODULE_TAGS             := optional
 LOCAL_HEADER_LIBRARIES        := libhardware_headers
@@ -30,6 +32,7 @@
 LOCAL_CLANG                     := true
 LOCAL_MODULE_TAGS               := optional
 LOCAL_MODULE                    := libqdMetaData
+LOCAL_LICENSE_KINDS             := SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS        := notice
 LOCAL_PROPRIETARY_MODULE        := true
 include $(BUILD_SHARED_LIBRARY)
-
diff --git a/msm8996/libqservice/Android.mk b/msm8996/libqservice/Android.mk
index 8b083e0..dca3527 100644
--- a/msm8996/libqservice/Android.mk
+++ b/msm8996/libqservice/Android.mk
@@ -3,6 +3,8 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := libqservice
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS      := by_exception_only not_allowed notice
 LOCAL_PROPRIETARY_MODULE      := true
 LOCAL_MODULE_TAGS             := optional
 LOCAL_C_INCLUDES              := $(common_includes) $(kernel_includes)
diff --git a/msm8996/sdm/libs/core/Android.mk b/msm8996/sdm/libs/core/Android.mk
index 350f5c1..43db413 100644
--- a/msm8996/sdm/libs/core/Android.mk
+++ b/msm8996/sdm/libs/core/Android.mk
@@ -3,6 +3,8 @@
 include $(LOCAL_PATH)/../../../common.mk
 
 LOCAL_MODULE                  := libsdmcore
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS      := notice
 LOCAL_PROPRIETARY_MODULE      := true
 LOCAL_MODULE_TAGS             := optional
 LOCAL_C_INCLUDES              := $(common_includes) $(kernel_includes)
diff --git a/msm8996/sdm/libs/hwc/Android.mk b/msm8996/sdm/libs/hwc/Android.mk
index a34e9c8..c6a4350 100644
--- a/msm8996/sdm/libs/hwc/Android.mk
+++ b/msm8996/sdm/libs/hwc/Android.mk
@@ -4,6 +4,8 @@
 ifeq ($(use_hwc2),false)
 
 LOCAL_MODULE                  := hwcomposer.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS      := by_exception_only not_allowed notice
 LOCAL_MODULE_RELATIVE_PATH    := hw
 LOCAL_PROPRIETARY_MODULE      := true
 LOCAL_MODULE_TAGS             := optional
diff --git a/msm8996/sdm/libs/hwc2/Android.mk b/msm8996/sdm/libs/hwc2/Android.mk
index a581ab6..9f37659 100644
--- a/msm8996/sdm/libs/hwc2/Android.mk
+++ b/msm8996/sdm/libs/hwc2/Android.mk
@@ -5,6 +5,8 @@
 ifeq ($(use_hwc2),true)
 
 LOCAL_MODULE                  := hwcomposer.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS      := by_exception_only not_allowed notice
 LOCAL_MODULE_RELATIVE_PATH    := hw
 LOCAL_PROPRIETARY_MODULE      := true
 LOCAL_MODULE_TAGS             := optional
diff --git a/msm8996/sdm/libs/utils/Android.mk b/msm8996/sdm/libs/utils/Android.mk
index e158ed2..e911513 100644
--- a/msm8996/sdm/libs/utils/Android.mk
+++ b/msm8996/sdm/libs/utils/Android.mk
@@ -3,6 +3,8 @@
 include $(LOCAL_PATH)/../../../common.mk
 
 LOCAL_MODULE                  := libsdmutils
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS      := notice
 LOCAL_PROPRIETARY_MODULE      := true
 LOCAL_MODULE_TAGS             := optional
 LOCAL_C_INCLUDES              := $(common_includes)
diff --git a/msm8998/Android.mk b/msm8998/Android.mk
index 30ab70f..5f99c0e 100644
--- a/msm8998/Android.mk
+++ b/msm8998/Android.mk
@@ -8,7 +8,7 @@
 
 display-hals += libgralloc1
 
-ifeq ($(call is-vendor-board-platform,QCOM),true)
+ifneq (,$(call is-vendor-board-qcom))
     include $(call all-named-subdir-makefiles,$(display-hals))
 else
 ifneq ($(filter msm% apq%,$(TARGET_BOARD_PLATFORM)),)
diff --git a/msm8998/common.mk b/msm8998/common.mk
index 1427261..abd19dd 100644
--- a/msm8998/common.mk
+++ b/msm8998/common.mk
@@ -24,7 +24,7 @@
     common_flags += -D__ARM_HAVE_NEON
 endif
 
-ifeq ($(call is-board-platform-in-list, $(MASTER_SIDE_CP_TARGET_LIST)), true)
+ifneq (,$(call is-board-platform-in-list2, $(MASTER_SIDE_CP_TARGET_LIST)))
     common_flags += -DMASTER_SIDE_CP
 endif
 
@@ -38,7 +38,7 @@
     common_flags += -DUSER_DEBUG
 endif
 
-common_includes := system/core/base/include
+common_includes := system/libbase/include
 CHECK_VERSION_LE = $(shell if [ $(1) -le $(2) ] ; then echo true ; else echo false ; fi)
 PLATFORM_SDK_NOUGAT = 25
 ifeq "REL" "$(PLATFORM_VERSION_CODENAME)"
diff --git a/msm8998/gpu_tonemapper/Android.mk b/msm8998/gpu_tonemapper/Android.mk
index ea1d2e9..cd7da9f 100644
--- a/msm8998/gpu_tonemapper/Android.mk
+++ b/msm8998/gpu_tonemapper/Android.mk
@@ -10,6 +10,8 @@
 
 include $(CLEAR_VARS)
 LOCAL_MODULE              := libgpu_tonemapper
+LOCAL_LICENSE_KINDS       := SPDX-license-identifier-Apache-2.0 legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS  := by_exception_only not_allowed notice
 LOCAL_VENDOR_MODULE       := true
 LOCAL_MODULE_TAGS         := optional
 LOCAL_C_INCLUDES          := $(TARGET_OUT_HEADERS)/qcom/display/
diff --git a/msm8998/gpu_tonemapper/glengine.cpp b/msm8998/gpu_tonemapper/glengine.cpp
index 6cfe15f..596c94c 100644
--- a/msm8998/gpu_tonemapper/glengine.cpp
+++ b/msm8998/gpu_tonemapper/glengine.cpp
@@ -336,36 +336,30 @@
 //-----------------------------------------------------------------------------
 {
   for (GLint error = glGetError(); error; error = glGetError()) {
-    char *pError;
+    const char *pError = "<unknown error>";
     switch (error) {
       case GL_NO_ERROR:
-        pError = (char *)"GL_NO_ERROR";
+        pError = "GL_NO_ERROR";
         break;
       case GL_INVALID_ENUM:
-        pError = (char *)"GL_INVALID_ENUM";
+        pError = "GL_INVALID_ENUM";
         break;
       case GL_INVALID_VALUE:
-        pError = (char *)"GL_INVALID_VALUE";
+        pError = "GL_INVALID_VALUE";
         break;
       case GL_INVALID_OPERATION:
-        pError = (char *)"GL_INVALID_OPERATION";
+        pError = "GL_INVALID_OPERATION";
         break;
       case GL_OUT_OF_MEMORY:
-        pError = (char *)"GL_OUT_OF_MEMORY";
+        pError = "GL_OUT_OF_MEMORY";
         break;
       case GL_INVALID_FRAMEBUFFER_OPERATION:
-        pError = (char *)"GL_INVALID_FRAMEBUFFER_OPERATION";
+        pError = "GL_INVALID_FRAMEBUFFER_OPERATION";
         break;
-
-      default:
-        ALOGE("glError (0x%x) %s:%d\n", error, file, line);
-        return;
     }
 
     ALOGE("glError (%s) %s:%d\n", pError, file, line);
-    return;
   }
-  return;
 }
 
 //-----------------------------------------------------------------------------
@@ -378,59 +372,54 @@
       break;
     }
 
-    char *pError;
+    const char *pError = "<unknown error>";
     switch (error) {
       case EGL_SUCCESS:
-        pError = (char *)"EGL_SUCCESS";
+        pError = "EGL_SUCCESS";
         break;
       case EGL_NOT_INITIALIZED:
-        pError = (char *)"EGL_NOT_INITIALIZED";
+        pError = "EGL_NOT_INITIALIZED";
         break;
       case EGL_BAD_ACCESS:
-        pError = (char *)"EGL_BAD_ACCESS";
+        pError = "EGL_BAD_ACCESS";
         break;
       case EGL_BAD_ALLOC:
-        pError = (char *)"EGL_BAD_ALLOC";
+        pError = "EGL_BAD_ALLOC";
         break;
       case EGL_BAD_ATTRIBUTE:
-        pError = (char *)"EGL_BAD_ATTRIBUTE";
+        pError = "EGL_BAD_ATTRIBUTE";
         break;
       case EGL_BAD_CONTEXT:
-        pError = (char *)"EGL_BAD_CONTEXT";
+        pError = "EGL_BAD_CONTEXT";
         break;
       case EGL_BAD_CONFIG:
-        pError = (char *)"EGL_BAD_CONFIG";
+        pError = "EGL_BAD_CONFIG";
         break;
       case EGL_BAD_CURRENT_SURFACE:
-        pError = (char *)"EGL_BAD_CURRENT_SURFACE";
+        pError = "EGL_BAD_CURRENT_SURFACE";
         break;
       case EGL_BAD_DISPLAY:
-        pError = (char *)"EGL_BAD_DISPLAY";
+        pError = "EGL_BAD_DISPLAY";
         break;
       case EGL_BAD_SURFACE:
-        pError = (char *)"EGL_BAD_SURFACE";
+        pError = "EGL_BAD_SURFACE";
         break;
       case EGL_BAD_MATCH:
-        pError = (char *)"EGL_BAD_MATCH";
+        pError = "EGL_BAD_MATCH";
         break;
       case EGL_BAD_PARAMETER:
-        pError = (char *)"EGL_BAD_PARAMETER";
+        pError = "EGL_BAD_PARAMETER";
         break;
       case EGL_BAD_NATIVE_PIXMAP:
-        pError = (char *)"EGL_BAD_NATIVE_PIXMAP";
+        pError = "EGL_BAD_NATIVE_PIXMAP";
         break;
       case EGL_BAD_NATIVE_WINDOW:
-        pError = (char *)"EGL_BAD_NATIVE_WINDOW";
+        pError = "EGL_BAD_NATIVE_WINDOW";
         break;
       case EGL_CONTEXT_LOST:
-        pError = (char *)"EGL_CONTEXT_LOST";
+        pError = "EGL_CONTEXT_LOST";
         break;
-      default:
-        ALOGE("eglError (0x%x) %s:%d\n", error, file, line);
-        return;
     }
     ALOGE("eglError (%s) %s:%d\n", pError, file, line);
-    return;
   }
-  return;
 }
diff --git a/msm8998/hdmi_cec/Android.mk b/msm8998/hdmi_cec/Android.mk
index a333654..c73d20d 100644
--- a/msm8998/hdmi_cec/Android.mk
+++ b/msm8998/hdmi_cec/Android.mk
@@ -3,6 +3,8 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := hdmi_cec.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS      := notice
 LOCAL_VENDOR_MODULE           := true
 LOCAL_MODULE_RELATIVE_PATH    := hw
 LOCAL_MODULE_TAGS             := optional
diff --git a/msm8998/include/Android.mk b/msm8998/include/Android.mk
index 455436b..ad36da7 100644
--- a/msm8998/include/Android.mk
+++ b/msm8998/include/Android.mk
@@ -11,6 +11,8 @@
 include $(CLEAR_VARS)
 #TODO move all exported headers to this directory
 LOCAL_MODULE                  := display_headers
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS      := notice
 LOCAL_VENDOR_MODULE           := true
 LOCAL_EXPORT_C_INCLUDE_DIRS   := $(LOCAL_PATH) \
                                  $(display_top)/libcopybit \
diff --git a/msm8998/libdrmutils/Android.mk b/msm8998/libdrmutils/Android.mk
index d36b5b0..7918cb3 100644
--- a/msm8998/libdrmutils/Android.mk
+++ b/msm8998/libdrmutils/Android.mk
@@ -2,6 +2,8 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := libdrmutils
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS      := notice
 LOCAL_VENDOR_MODULE           := true
 LOCAL_MODULE_TAGS             := optional
 LOCAL_C_INCLUDES              := external/libdrm
diff --git a/msm8998/libgralloc1/Android.mk b/msm8998/libgralloc1/Android.mk
index 90c222b..fb647b4 100644
--- a/msm8998/libgralloc1/Android.mk
+++ b/msm8998/libgralloc1/Android.mk
@@ -4,6 +4,8 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := gralloc.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS      := by_exception_only not_allowed notice
 LOCAL_VENDOR_MODULE           := true
 LOCAL_MODULE_RELATIVE_PATH    := hw
 LOCAL_MODULE_TAGS             := optional
diff --git a/msm8998/liblight/Android.mk b/msm8998/liblight/Android.mk
index 94bf835..030b9b8 100644
--- a/msm8998/liblight/Android.mk
+++ b/msm8998/liblight/Android.mk
@@ -23,6 +23,9 @@
 LOCAL_CFLAGS := -DLOG_TAG=\"qdlights\"
 LOCAL_CLANG  := true
 LOCAL_MODULE := lights.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS := by_exception_only not_allowed notice
+LOCAL_NOTICE_FILE := $(LOCAL_PATH)/NOTICE
 LOCAL_HEADER_LIBRARIES := libhardware_headers
 LOCAL_MODULE_TAGS := optional
 LOCAL_VENDOR_MODULE := true
diff --git a/msm8998/libmemtrack/Android.mk b/msm8998/libmemtrack/Android.mk
index 19aa42d..3038a51 100644
--- a/msm8998/libmemtrack/Android.mk
+++ b/msm8998/libmemtrack/Android.mk
@@ -25,6 +25,8 @@
 LOCAL_SHARED_LIBRARIES := liblog
 LOCAL_SRC_FILES := memtrack_msm.c kgsl.c
 LOCAL_MODULE := memtrack.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0
+LOCAL_LICENSE_CONDITIONS := notice
 LOCAL_HEADER_LIBRARIES := libhardware_headers
 LOCAL_CFLAGS += -Wno-error
 include $(BUILD_SHARED_LIBRARY)
diff --git a/msm8998/libqdutils/Android.mk b/msm8998/libqdutils/Android.mk
index 330ebbf..0c3a39a 100644
--- a/msm8998/libqdutils/Android.mk
+++ b/msm8998/libqdutils/Android.mk
@@ -3,6 +3,8 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := libqdutils
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS      := notice
 LOCAL_VENDOR_MODULE           := true
 LOCAL_MODULE_TAGS             := optional
 LOCAL_SHARED_LIBRARIES        := $(common_libs) libbinder libqservice
@@ -32,6 +34,7 @@
 
 LOCAL_MODULE_TAGS               := optional
 LOCAL_MODULE                    := libqdMetaData
+LOCAL_LICENSE_KINDS             := SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS        := notice
 LOCAL_VENDOR_MODULE             := true
 include $(BUILD_SHARED_LIBRARY)
-
diff --git a/msm8998/libqservice/Android.mk b/msm8998/libqservice/Android.mk
index 6550227..b8f800c 100644
--- a/msm8998/libqservice/Android.mk
+++ b/msm8998/libqservice/Android.mk
@@ -3,6 +3,8 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE                  := libqservice
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS      := by_exception_only not_allowed notice
 LOCAL_VENDOR_MODULE           := true
 LOCAL_MODULE_TAGS             := optional
 LOCAL_C_INCLUDES              := $(common_includes) $(kernel_includes)
diff --git a/msm8998/sdm/libs/core/Android.mk b/msm8998/sdm/libs/core/Android.mk
index fe7a11f..9d2ac6c 100644
--- a/msm8998/sdm/libs/core/Android.mk
+++ b/msm8998/sdm/libs/core/Android.mk
@@ -3,6 +3,8 @@
 include $(LOCAL_PATH)/../../../common.mk
 
 LOCAL_MODULE                  := libsdmcore
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS      := notice
 LOCAL_VENDOR_MODULE           := true
 LOCAL_MODULE_TAGS             := optional
 LOCAL_C_INCLUDES              := $(common_includes) $(kernel_includes)
diff --git a/msm8998/sdm/libs/hwc2/Android.mk b/msm8998/sdm/libs/hwc2/Android.mk
index 7014564..b4790a8 100644
--- a/msm8998/sdm/libs/hwc2/Android.mk
+++ b/msm8998/sdm/libs/hwc2/Android.mk
@@ -5,6 +5,8 @@
 ifeq ($(use_hwc2),true)
 
 LOCAL_MODULE                  := hwcomposer.$(TARGET_BOARD_PLATFORM)
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD legacy_not_a_contribution
+LOCAL_LICENSE_CONDITIONS      := by_exception_only not_allowed notice
 LOCAL_VENDOR_MODULE           := true
 LOCAL_MODULE_RELATIVE_PATH    := hw
 LOCAL_MODULE_TAGS             := optional
diff --git a/msm8998/sdm/libs/utils/Android.mk b/msm8998/sdm/libs/utils/Android.mk
index 481ea39..c27ecc7 100644
--- a/msm8998/sdm/libs/utils/Android.mk
+++ b/msm8998/sdm/libs/utils/Android.mk
@@ -3,6 +3,8 @@
 include $(LOCAL_PATH)/../../../common.mk
 
 LOCAL_MODULE                  := libsdmutils
+LOCAL_LICENSE_KINDS           := SPDX-license-identifier-BSD
+LOCAL_LICENSE_CONDITIONS      := notice
 LOCAL_VENDOR_MODULE           := true
 LOCAL_MODULE_TAGS             := optional
 LOCAL_C_INCLUDES              := $(common_includes)