ISDB-T Multi-Layer Backward Compatible.

*) Query modulation and codeRate from AIDL Layer Settings.
*) Set Capabilities default values.

Bug: 171537116
Test: atest VtsHalTvTunerTargetTest
Test: atest android.media.tv.tuner.cts on AIDL and HAL HALs
Change-Id: Ic2792fb0152c5c1c321033ba7777fe76fe48301a
diff --git a/services/tuner/hidl/TunerHidlFrontend.cpp b/services/tuner/hidl/TunerHidlFrontend.cpp
index bbfc90f..1f28406 100644
--- a/services/tuner/hidl/TunerHidlFrontend.cpp
+++ b/services/tuner/hidl/TunerHidlFrontend.cpp
@@ -1158,12 +1158,19 @@
     }
     case FrontendSettings::isdbt: {
         const FrontendIsdbtSettings& isdbt = aidlSettings.get<FrontendSettings::isdbt>();
+        HidlFrontendIsdbtModulation modulation = HidlFrontendIsdbtModulation::UNDEFINED;
+        HidlFrontendIsdbtCoderate coderate = HidlFrontendIsdbtCoderate::UNDEFINED;
+        if (isdbt.layerSettings.size() > 0) {
+            modulation =
+                    static_cast<HidlFrontendIsdbtModulation>(isdbt.layerSettings[0].modulation);
+            coderate = static_cast<HidlFrontendIsdbtCoderate>(isdbt.layerSettings[0].coderate);
+        }
         settings.isdbt({
                 .frequency = static_cast<uint32_t>(isdbt.frequency),
-                .modulation = static_cast<HidlFrontendIsdbtModulation>(isdbt.modulation),
+                .modulation = modulation,
                 .bandwidth = static_cast<HidlFrontendIsdbtBandwidth>(isdbt.bandwidth),
                 .mode = static_cast<HidlFrontendIsdbtMode>(isdbt.mode),
-                .coderate = static_cast<HidlFrontendIsdbtCoderate>(isdbt.coderate),
+                .coderate = coderate,
                 .guardInterval = static_cast<HidlFrontendIsdbtGuardInterval>(isdbt.guardInterval),
                 .serviceAreaId = static_cast<uint32_t>(isdbt.serviceAreaId),
         });