assemble_vintf: add assembleFrameworkCompatibilityMatrixKernels

Refactor code to execute the procedure of processing
android-base.cfg files in a separate function.

Test: m system_compatibility_matrix.xml -j
Bug: 64124223
Change-Id: Ic6159fe3b6e69687a9a062f34e95e05733e7308a
Merged-In: Ic6159fe3b6e69687a9a062f34e95e05733e7308a
diff --git a/assemble_vintf.cpp b/assemble_vintf.cpp
index d75e889..febb2d9 100644
--- a/assemble_vintf.cpp
+++ b/assemble_vintf.cpp
@@ -154,6 +154,28 @@
         return true;
     }
 
+    bool assembleFrameworkCompatibilityMatrixKernels(CompatibilityMatrix* matrix) {
+        for (const auto& pair : mKernels) {
+            std::vector<KernelConfig> configs;
+            if (!parseFilesForKernelConfigs(pair.second, &configs)) {
+                return false;
+            }
+            bool added = false;
+            for (auto& e : matrix->framework.mKernels) {
+                if (e.minLts() == pair.first) {
+                    e.mConfigs.insert(e.mConfigs.end(), configs.begin(), configs.end());
+                    added = true;
+                    break;
+                }
+            }
+            if (!added) {
+                matrix->framework.mKernels.push_back(
+                    MatrixKernel{KernelVersion{pair.first}, std::move(configs)});
+            }
+        }
+        return true;
+    }
+
     bool assembleCompatibilityMatrix(CompatibilityMatrix* matrix) {
         std::string error;
 
@@ -166,24 +188,11 @@
             if (!getFlag("POLICYVERS", &kernelSepolicyVers)) {
                 return false;
             }
-            for (const auto& pair : mKernels) {
-                std::vector<KernelConfig> configs;
-                if (!parseFilesForKernelConfigs(pair.second, &configs)) {
-                    return false;
-                }
-                bool added = false;
-                for (auto& e : matrix->framework.mKernels) {
-                    if (e.minLts() == pair.first) {
-                        e.mConfigs.insert(e.mConfigs.end(), configs.begin(), configs.end());
-                        added = true;
-                        break;
-                    }
-                }
-                if (!added) {
-                    matrix->framework.mKernels.push_back(
-                        MatrixKernel{KernelVersion{pair.first}, std::move(configs)});
-                }
+
+            if (!assembleFrameworkCompatibilityMatrixKernels(matrix)) {
+                return false;
             }
+
             matrix->framework.mSepolicy =
                 Sepolicy(kernelSepolicyVers, {{sepolicyVers.majorVer, sepolicyVers.minorVer}});