Merge "[RenderScript] Use OVERRIDE_RS_DRIVER string in the default implementation."
diff --git a/bluetooth/1.0/Android.bp b/bluetooth/1.0/Android.bp
index 4cc3b50..48159b3 100644
--- a/bluetooth/1.0/Android.bp
+++ b/bluetooth/1.0/Android.bp
@@ -48,6 +48,7 @@
 
 cc_library_shared {
     name: "android.hardware.bluetooth@1.0",
+    defaults: ["hidl-module-defaults"],
     generated_sources: ["android.hardware.bluetooth@1.0_genc++"],
     generated_headers: ["android.hardware.bluetooth@1.0_genc++_headers"],
     export_generated_headers: ["android.hardware.bluetooth@1.0_genc++_headers"],
diff --git a/boot/1.0/Android.bp b/boot/1.0/Android.bp
index d75d6ac..de42647 100644
--- a/boot/1.0/Android.bp
+++ b/boot/1.0/Android.bp
@@ -41,6 +41,7 @@
 
 cc_library_shared {
     name: "android.hardware.boot@1.0",
+    defaults: ["hidl-module-defaults"],
     generated_sources: ["android.hardware.boot@1.0_genc++"],
     generated_headers: ["android.hardware.boot@1.0_genc++_headers"],
     export_generated_headers: ["android.hardware.boot@1.0_genc++_headers"],
diff --git a/configstore/1.0/Android.bp b/configstore/1.0/Android.bp
index db7ec97..89f99f2 100644
--- a/configstore/1.0/Android.bp
+++ b/configstore/1.0/Android.bp
@@ -41,6 +41,7 @@
 
 cc_library_shared {
     name: "android.hardware.configstore@1.0",
+    defaults: ["hidl-module-defaults"],
     generated_sources: ["android.hardware.configstore@1.0_genc++"],
     generated_headers: ["android.hardware.configstore@1.0_genc++_headers"],
     export_generated_headers: ["android.hardware.configstore@1.0_genc++_headers"],
diff --git a/configstore/utils/include/configstore/Utils.h b/configstore/utils/include/configstore/Utils.h
index 862e812..ee85549 100644
--- a/configstore/utils/include/configstore/Utils.h
+++ b/configstore/utils/include/configstore/Utils.h
@@ -42,6 +42,15 @@
 using ::android::hardware::configstore::V1_0::OptionalUInt64;
 using ::android::hardware::configstore::V1_0::OptionalString;
 
+// a function to retrieve and cache the service handle
+// for a particular interface
+template <typename I>
+sp<I> getService() {
+    // static initializer used for synchronizations
+    static sp<I> configs = I::getService();
+    return configs;
+}
+
 // arguments V: type for the value (i.e., OptionalXXX)
 //           I: interface class name
 //           func: member function pointer
@@ -49,9 +58,10 @@
         (std::function<void(const V&)>)>
 decltype(V::value) get(const decltype(V::value) &defValue) {
     using namespace android::hardware::details;
+    // static initializer used for synchronizations
     auto getHelper = []()->V {
         V ret;
-        sp<I> configs = I::getService();
+        sp<I> configs = getService<I>();
 
         if (!configs.get()) {
             // fallback to the default value
diff --git a/ir/1.0/Android.bp b/ir/1.0/Android.bp
index 2c53047..a059da5 100644
--- a/ir/1.0/Android.bp
+++ b/ir/1.0/Android.bp
@@ -41,6 +41,7 @@
 
 cc_library_shared {
     name: "android.hardware.ir@1.0",
+    defaults: ["hidl-module-defaults"],
     generated_sources: ["android.hardware.ir@1.0_genc++"],
     generated_headers: ["android.hardware.ir@1.0_genc++_headers"],
     export_generated_headers: ["android.hardware.ir@1.0_genc++_headers"],
diff --git a/nfc/1.0/Android.bp b/nfc/1.0/Android.bp
index 8faf2a1..7c9a66e 100644
--- a/nfc/1.0/Android.bp
+++ b/nfc/1.0/Android.bp
@@ -48,6 +48,7 @@
 
 cc_library_shared {
     name: "android.hardware.nfc@1.0",
+    defaults: ["hidl-module-defaults"],
     generated_sources: ["android.hardware.nfc@1.0_genc++"],
     generated_headers: ["android.hardware.nfc@1.0_genc++_headers"],
     export_generated_headers: ["android.hardware.nfc@1.0_genc++_headers"],
diff --git a/radio/1.0/Android.bp b/radio/1.0/Android.bp
index b58d85a..988f5d2 100644
--- a/radio/1.0/Android.bp
+++ b/radio/1.0/Android.bp
@@ -69,6 +69,7 @@
 
 cc_library_shared {
     name: "android.hardware.radio@1.0",
+    defaults: ["hidl-module-defaults"],
     generated_sources: ["android.hardware.radio@1.0_genc++"],
     generated_headers: ["android.hardware.radio@1.0_genc++_headers"],
     export_generated_headers: ["android.hardware.radio@1.0_genc++_headers"],
diff --git a/radio/1.0/vts/functional/Android.bp b/radio/1.0/vts/functional/Android.bp
index 7808de1..5403971 100644
--- a/radio/1.0/vts/functional/Android.bp
+++ b/radio/1.0/vts/functional/Android.bp
@@ -27,7 +27,8 @@
            "radio_hidl_hal_test.cpp",
            "radio_hidl_hal_voice.cpp",
            "radio_response.cpp",
-           "VtsHalRadioV1_0TargetTest.cpp"],
+           "VtsHalRadioV1_0TargetTest.cpp",
+           "vts_test_util.cpp"],
     shared_libs: [
         "libbase",
         "liblog",
@@ -51,7 +52,8 @@
     srcs: ["sap_callback.cpp",
            "sap_hidl_hal_api.cpp",
            "sap_hidl_hal_test.cpp",
-           "VtsHalSapV1_0TargetTest.cpp"],
+           "VtsHalSapV1_0TargetTest.cpp",
+           "vts_test_util.cpp"],
     shared_libs: [
         "libbase",
         "liblog",
diff --git a/radio/1.0/vts/functional/VtsHalRadioV1_0TargetTest.cpp b/radio/1.0/vts/functional/VtsHalRadioV1_0TargetTest.cpp
index e7c89d5..59881ef 100644
--- a/radio/1.0/vts/functional/VtsHalRadioV1_0TargetTest.cpp
+++ b/radio/1.0/vts/functional/VtsHalRadioV1_0TargetTest.cpp
@@ -17,11 +17,16 @@
 #include <radio_hidl_hal_utils.h>
 
 int main(int argc, char** argv) {
-  ::testing::AddGlobalTestEnvironment(new RadioHidlEnvironment);
-  ::testing::InitGoogleTest(&argc, argv);
+    ::testing::AddGlobalTestEnvironment(new RadioHidlEnvironment);
+    ::testing::InitGoogleTest(&argc, argv);
 
-  int status = RUN_ALL_TESTS();
-  LOG(INFO) << "Test result = " << status;
+    // setup seed for rand function
+    int seedSrand = time(NULL);
+    std::cout << "seed setup for random function (radio):" + std::to_string(seedSrand) << std::endl;
+    srand(seedSrand);
 
-  return status;
+    int status = RUN_ALL_TESTS();
+    LOG(INFO) << "Test result = " << status;
+
+    return status;
 }
\ No newline at end of file
diff --git a/radio/1.0/vts/functional/VtsHalSapV1_0TargetTest.cpp b/radio/1.0/vts/functional/VtsHalSapV1_0TargetTest.cpp
index 5306076..5e5c50c 100644
--- a/radio/1.0/vts/functional/VtsHalSapV1_0TargetTest.cpp
+++ b/radio/1.0/vts/functional/VtsHalSapV1_0TargetTest.cpp
@@ -17,12 +17,17 @@
 #include <sap_hidl_hal_utils.h>
 
 int main(int argc, char** argv) {
-  // Add Sim-access Profile Hidl Environment
-  ::testing::AddGlobalTestEnvironment(new SapHidlEnvironment);
-  ::testing::InitGoogleTest(&argc, argv);
+    // Add Sim-access Profile Hidl Environment
+    ::testing::AddGlobalTestEnvironment(new SapHidlEnvironment);
+    ::testing::InitGoogleTest(&argc, argv);
 
-  int status = RUN_ALL_TESTS();
-  LOG(INFO) << "Test result = " << status;
+    // setup seed for rand function
+    int seedSrand = time(NULL);
+    std::cout << "seed setup for random function (sap):" + std::to_string(seedSrand) << std::endl;
+    srand(seedSrand);
 
-  return status;
+    int status = RUN_ALL_TESTS();
+    LOG(INFO) << "Test result = " << status;
+
+    return status;
 }
diff --git a/radio/1.0/vts/functional/radio_hidl_hal_cell_broadcast.cpp b/radio/1.0/vts/functional/radio_hidl_hal_cell_broadcast.cpp
index bbca9e4..3bf7c9d 100644
--- a/radio/1.0/vts/functional/radio_hidl_hal_cell_broadcast.cpp
+++ b/radio/1.0/vts/functional/radio_hidl_hal_cell_broadcast.cpp
@@ -22,165 +22,163 @@
  * Test IRadio.setGsmBroadcastConfig() for the response returned.
  */
 TEST_F(RadioHidlTest, setGsmBroadcastConfig) {
-  int serial = 0;
+    int serial = GetRandomSerialNumber();
 
-  // Create GsmBroadcastSmsConfigInfo #1
-  GsmBroadcastSmsConfigInfo gbSmsConfig1;
-  gbSmsConfig1.fromServiceId = 4352;
-  gbSmsConfig1.toServiceId = 4354;
-  gbSmsConfig1.fromCodeScheme = 0;
-  gbSmsConfig1.toCodeScheme = 255;
-  gbSmsConfig1.selected = true;
+    // Create GsmBroadcastSmsConfigInfo #1
+    GsmBroadcastSmsConfigInfo gbSmsConfig1;
+    gbSmsConfig1.fromServiceId = 4352;
+    gbSmsConfig1.toServiceId = 4354;
+    gbSmsConfig1.fromCodeScheme = 0;
+    gbSmsConfig1.toCodeScheme = 255;
+    gbSmsConfig1.selected = true;
 
-  // Create GsmBroadcastSmsConfigInfo #2
-  GsmBroadcastSmsConfigInfo gbSmsConfig2;
-  gbSmsConfig2.fromServiceId = 4356;
-  gbSmsConfig2.toServiceId = 4356;
-  gbSmsConfig2.fromCodeScheme = 0;
-  gbSmsConfig2.toCodeScheme = 255;
-  gbSmsConfig2.selected = true;
+    // Create GsmBroadcastSmsConfigInfo #2
+    GsmBroadcastSmsConfigInfo gbSmsConfig2;
+    gbSmsConfig2.fromServiceId = 4356;
+    gbSmsConfig2.toServiceId = 4356;
+    gbSmsConfig2.fromCodeScheme = 0;
+    gbSmsConfig2.toCodeScheme = 255;
+    gbSmsConfig2.selected = true;
 
-  // Create GsmBroadcastSmsConfigInfo #3
-  GsmBroadcastSmsConfigInfo gbSmsConfig3;
-  gbSmsConfig3.fromServiceId = 4370;
-  gbSmsConfig3.toServiceId = 4379;
-  gbSmsConfig3.fromCodeScheme = 0;
-  gbSmsConfig3.toCodeScheme = 255;
-  gbSmsConfig3.selected = true;
+    // Create GsmBroadcastSmsConfigInfo #3
+    GsmBroadcastSmsConfigInfo gbSmsConfig3;
+    gbSmsConfig3.fromServiceId = 4370;
+    gbSmsConfig3.toServiceId = 4379;
+    gbSmsConfig3.fromCodeScheme = 0;
+    gbSmsConfig3.toCodeScheme = 255;
+    gbSmsConfig3.selected = true;
 
-  // Create GsmBroadcastSmsConfigInfo #4
-  GsmBroadcastSmsConfigInfo gbSmsConfig4;
-  gbSmsConfig4.fromServiceId = 4383;
-  gbSmsConfig4.toServiceId = 4391;
-  gbSmsConfig4.fromCodeScheme = 0;
-  gbSmsConfig4.toCodeScheme = 255;
-  gbSmsConfig4.selected = true;
+    // Create GsmBroadcastSmsConfigInfo #4
+    GsmBroadcastSmsConfigInfo gbSmsConfig4;
+    gbSmsConfig4.fromServiceId = 4383;
+    gbSmsConfig4.toServiceId = 4391;
+    gbSmsConfig4.fromCodeScheme = 0;
+    gbSmsConfig4.toCodeScheme = 255;
+    gbSmsConfig4.selected = true;
 
-  // Create GsmBroadcastSmsConfigInfo #5
-  GsmBroadcastSmsConfigInfo gbSmsConfig5;
-  gbSmsConfig5.fromServiceId = 4392;
-  gbSmsConfig5.toServiceId = 4392;
-  gbSmsConfig5.fromCodeScheme = 0;
-  gbSmsConfig5.toCodeScheme = 255;
-  gbSmsConfig5.selected = true;
+    // Create GsmBroadcastSmsConfigInfo #5
+    GsmBroadcastSmsConfigInfo gbSmsConfig5;
+    gbSmsConfig5.fromServiceId = 4392;
+    gbSmsConfig5.toServiceId = 4392;
+    gbSmsConfig5.fromCodeScheme = 0;
+    gbSmsConfig5.toCodeScheme = 255;
+    gbSmsConfig5.selected = true;
 
-  android::hardware::hidl_vec<GsmBroadcastSmsConfigInfo>
-      gsmBroadcastSmsConfigsInfoList = {
-          gbSmsConfig1, gbSmsConfig2, gbSmsConfig3, gbSmsConfig4, gbSmsConfig5};
+    android::hardware::hidl_vec<GsmBroadcastSmsConfigInfo> gsmBroadcastSmsConfigsInfoList = {
+        gbSmsConfig1, gbSmsConfig2, gbSmsConfig3, gbSmsConfig4, gbSmsConfig5};
 
-  radio->setGsmBroadcastConfig(++serial, gsmBroadcastSmsConfigsInfoList);
+    radio->setGsmBroadcastConfig(serial, gsmBroadcastSmsConfigsInfoList);
 
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_STATE ||
-                  radioRsp->rspInfo.error == RadioError::NONE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_STATE ||
+                    radioRsp->rspInfo.error == RadioError::NONE);
+    }
 }
 
 /*
  * Test IRadio.getGsmBroadcastConfig() for the response returned.
  */
 TEST_F(RadioHidlTest, getGsmBroadcastConfig) {
-  int serial = 0;
+    int serial = GetRandomSerialNumber();
 
-  radio->getGsmBroadcastConfig(++serial);
+    radio->getGsmBroadcastConfig(serial);
 
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_STATE ||
-                  radioRsp->rspInfo.error == RadioError::NONE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() || radioRsp->rspInfo.error == RadioError::INVALID_STATE ||
+                    radioRsp->rspInfo.error == RadioError::NONE);
+    }
 }
 
 /*
  * Test IRadio.setCdmaBroadcastConfig() for the response returned.
  */
 TEST_F(RadioHidlTest, setCdmaBroadcastConfig) {
-  int serial = 0;
+    int serial = GetRandomSerialNumber();
 
-  CdmaBroadcastSmsConfigInfo cbSmsConfig;
-  cbSmsConfig.serviceCategory = 4096;
-  cbSmsConfig.language = 1;
-  cbSmsConfig.selected = true;
+    CdmaBroadcastSmsConfigInfo cbSmsConfig;
+    cbSmsConfig.serviceCategory = 4096;
+    cbSmsConfig.language = 1;
+    cbSmsConfig.selected = true;
 
-  android::hardware::hidl_vec<CdmaBroadcastSmsConfigInfo>
-      cdmaBroadcastSmsConfigInfoList = {cbSmsConfig};
+    android::hardware::hidl_vec<CdmaBroadcastSmsConfigInfo> cdmaBroadcastSmsConfigInfoList = {
+        cbSmsConfig};
 
-  radio->setCdmaBroadcastConfig(++serial, cdmaBroadcastSmsConfigInfoList);
+    radio->setCdmaBroadcastConfig(serial, cdmaBroadcastSmsConfigInfoList);
 
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS);
+    }
 }
 
 /*
  * Test IRadio.getCdmaBroadcastConfig() for the response returned.
  */
 TEST_F(RadioHidlTest, getCdmaBroadcastConfig) {
-  int serial = 0;
+    int serial = GetRandomSerialNumber();
 
-  radio->getCdmaBroadcastConfig(++serial);
+    radio->getCdmaBroadcastConfig(serial);
 
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError());
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError());
+    }
 }
 
 /*
  * Test IRadio.setCdmaBroadcastActivation() for the response returned.
  */
 TEST_F(RadioHidlTest, setCdmaBroadcastActivation) {
-  int serial = 0;
-  bool activate = false;
+    int serial = GetRandomSerialNumber();
+    bool activate = false;
 
-  radio->setCdmaBroadcastActivation(++serial, activate);
+    radio->setCdmaBroadcastActivation(serial, activate);
 
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS);
+    }
 }
 
 /*
  * Test IRadio.setGsmBroadcastActivation() for the response returned.
  */
 TEST_F(RadioHidlTest, setGsmBroadcastActivation) {
-  int serial = 0;
-  bool activate = false;
+    int serial = GetRandomSerialNumber();
+    bool activate = false;
 
-  radio->setGsmBroadcastActivation(++serial, activate);
+    radio->setGsmBroadcastActivation(serial, activate);
 
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_STATE ||
-                  radioRsp->rspInfo.error == RadioError::NONE ||
-                  radioRsp->rspInfo.error == RadioError::OPERATION_NOT_ALLOWED);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_STATE ||
+                    radioRsp->rspInfo.error == RadioError::NONE ||
+                    radioRsp->rspInfo.error == RadioError::OPERATION_NOT_ALLOWED);
+    }
 }
diff --git a/radio/1.0/vts/functional/radio_hidl_hal_data.cpp b/radio/1.0/vts/functional/radio_hidl_hal_data.cpp
index 4eeabe8..108676b 100644
--- a/radio/1.0/vts/functional/radio_hidl_hal_data.cpp
+++ b/radio/1.0/vts/functional/radio_hidl_hal_data.cpp
@@ -22,209 +22,204 @@
  * Test IRadio.getDataRegistrationState() for the response returned.
  */
 TEST_F(RadioHidlTest, getDataRegistrationState) {
-  int serial = 0;
+    int serial = GetRandomSerialNumber();
 
-  radio->getDataRegistrationState(++serial);
+    radio->getDataRegistrationState(serial);
 
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    EXPECT_EQ(RadioError::NONE, radioRsp->rspInfo.error);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        EXPECT_EQ(RadioError::NONE, radioRsp->rspInfo.error);
+    }
 }
 
 /*
  * Test IRadio.setupDataCall() for the response returned.
  */
 TEST_F(RadioHidlTest, setupDataCall) {
-  int serial = 0;
+    int serial = GetRandomSerialNumber();
 
-  RadioTechnology radioTechnology = RadioTechnology::LTE;
+    RadioTechnology radioTechnology = RadioTechnology::LTE;
 
-  DataProfileInfo dataProfileInfo;
-  memset(&dataProfileInfo, 0, sizeof(dataProfileInfo));
-  dataProfileInfo.profileId = DataProfileId::IMS;
-  dataProfileInfo.apn = hidl_string("VZWIMS");
-  dataProfileInfo.protocol = hidl_string("IPV4V6");
-  dataProfileInfo.roamingProtocol = hidl_string("IPV6");
-  dataProfileInfo.authType = ApnAuthType::NO_PAP_NO_CHAP;
-  dataProfileInfo.user = "";
-  dataProfileInfo.password = "";
-  dataProfileInfo.type = DataProfileInfoType::THREE_GPP2;
-  dataProfileInfo.maxConnsTime = 300;
-  dataProfileInfo.maxConns = 20;
-  dataProfileInfo.waitTime = 0;
-  dataProfileInfo.enabled = true;
-  dataProfileInfo.supportedApnTypesBitmap = 320;
-  dataProfileInfo.bearerBitmap = 161543;
-  dataProfileInfo.mtu = 0;
-  dataProfileInfo.mvnoType = MvnoType::NONE;
-  dataProfileInfo.mvnoMatchData = hidl_string();
+    DataProfileInfo dataProfileInfo;
+    memset(&dataProfileInfo, 0, sizeof(dataProfileInfo));
+    dataProfileInfo.profileId = DataProfileId::IMS;
+    dataProfileInfo.apn = hidl_string("VZWIMS");
+    dataProfileInfo.protocol = hidl_string("IPV4V6");
+    dataProfileInfo.roamingProtocol = hidl_string("IPV6");
+    dataProfileInfo.authType = ApnAuthType::NO_PAP_NO_CHAP;
+    dataProfileInfo.user = "";
+    dataProfileInfo.password = "";
+    dataProfileInfo.type = DataProfileInfoType::THREE_GPP2;
+    dataProfileInfo.maxConnsTime = 300;
+    dataProfileInfo.maxConns = 20;
+    dataProfileInfo.waitTime = 0;
+    dataProfileInfo.enabled = true;
+    dataProfileInfo.supportedApnTypesBitmap = 320;
+    dataProfileInfo.bearerBitmap = 161543;
+    dataProfileInfo.mtu = 0;
+    dataProfileInfo.mvnoType = MvnoType::NONE;
+    dataProfileInfo.mvnoMatchData = hidl_string();
 
-  bool modemCognitive = false;
-  bool roamingAllowed = false;
-  bool isRoaming = false;
+    bool modemCognitive = false;
+    bool roamingAllowed = false;
+    bool isRoaming = false;
 
-  radio->setupDataCall(++serial, radioTechnology, dataProfileInfo,
-                       modemCognitive, roamingAllowed, isRoaming);
+    radio->setupDataCall(serial, radioTechnology, dataProfileInfo, modemCognitive, roamingAllowed,
+                         isRoaming);
 
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE ||
-                  radioRsp->rspInfo.error == RadioError::RADIO_NOT_AVAILABLE ||
-                  radioRsp->rspInfo.error ==
-                      RadioError::OP_NOT_ALLOWED_BEFORE_REG_TO_NW ||
-                  radioRsp->rspInfo.error ==
-                      RadioError::OP_NOT_ALLOWED_DURING_VOICE_CALL ||
-                  CheckOEMError());
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE ||
+                    radioRsp->rspInfo.error == RadioError::RADIO_NOT_AVAILABLE ||
+                    radioRsp->rspInfo.error == RadioError::OP_NOT_ALLOWED_BEFORE_REG_TO_NW ||
+                    radioRsp->rspInfo.error == RadioError::OP_NOT_ALLOWED_DURING_VOICE_CALL ||
+                    CheckOEMError());
+    }
 }
 
 /*
  * Test IRadio.deactivateDataCall() for the response returned.
  */
 TEST_F(RadioHidlTest, deactivateDataCall) {
-  int serial = 0;
-  int cid = 1;
-  bool reasonRadioShutDown = false;
+    int serial = GetRandomSerialNumber();
+    int cid = 1;
+    bool reasonRadioShutDown = false;
 
-  radio->deactivateDataCall(++serial, cid, reasonRadioShutDown);
+    radio->deactivateDataCall(serial, cid, reasonRadioShutDown);
 
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      EXPECT_EQ(RadioError::INVALID_CALL_ID, radioRsp->rspInfo.error);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        EXPECT_EQ(RadioError::INVALID_CALL_ID, radioRsp->rspInfo.error);
+    }
 }
 
 /*
  * Test IRadio.getDataCallList() for the response returned.
  */
 TEST_F(RadioHidlTest, getDataCallList) {
-  int serial = 0;
+    int serial = GetRandomSerialNumber();
 
-  radio->getDataCallList(++serial);
+    radio->getDataCallList(serial);
 
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE ||
-                  radioRsp->rspInfo.error == RadioError::RADIO_NOT_AVAILABLE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE ||
+                    radioRsp->rspInfo.error == RadioError::RADIO_NOT_AVAILABLE);
+    }
 }
 
 /*
  * Test IRadio.setInitialAttachApn() for the response returned.
  */
 TEST_F(RadioHidlTest, setInitialAttachApn) {
-  int serial = 0;
+    int serial = GetRandomSerialNumber();
 
-  DataProfileInfo dataProfileInfo;
-  memset(&dataProfileInfo, 0, sizeof(dataProfileInfo));
-  dataProfileInfo.profileId = DataProfileId::IMS;
-  dataProfileInfo.apn = hidl_string("VZWIMS");
-  dataProfileInfo.protocol = hidl_string("IPV4V6");
-  dataProfileInfo.roamingProtocol = hidl_string("IPV6");
-  dataProfileInfo.authType = ApnAuthType::NO_PAP_NO_CHAP;
-  dataProfileInfo.user = "";
-  dataProfileInfo.password = "";
-  dataProfileInfo.type = DataProfileInfoType::THREE_GPP2;
-  dataProfileInfo.maxConnsTime = 300;
-  dataProfileInfo.maxConns = 20;
-  dataProfileInfo.waitTime = 0;
-  dataProfileInfo.enabled = true;
-  dataProfileInfo.supportedApnTypesBitmap = 320;
-  dataProfileInfo.bearerBitmap = 161543;
-  dataProfileInfo.mtu = 0;
-  dataProfileInfo.mvnoType = MvnoType::NONE;
-  dataProfileInfo.mvnoMatchData = hidl_string();
+    DataProfileInfo dataProfileInfo;
+    memset(&dataProfileInfo, 0, sizeof(dataProfileInfo));
+    dataProfileInfo.profileId = DataProfileId::IMS;
+    dataProfileInfo.apn = hidl_string("VZWIMS");
+    dataProfileInfo.protocol = hidl_string("IPV4V6");
+    dataProfileInfo.roamingProtocol = hidl_string("IPV6");
+    dataProfileInfo.authType = ApnAuthType::NO_PAP_NO_CHAP;
+    dataProfileInfo.user = "";
+    dataProfileInfo.password = "";
+    dataProfileInfo.type = DataProfileInfoType::THREE_GPP2;
+    dataProfileInfo.maxConnsTime = 300;
+    dataProfileInfo.maxConns = 20;
+    dataProfileInfo.waitTime = 0;
+    dataProfileInfo.enabled = true;
+    dataProfileInfo.supportedApnTypesBitmap = 320;
+    dataProfileInfo.bearerBitmap = 161543;
+    dataProfileInfo.mtu = 0;
+    dataProfileInfo.mvnoType = MvnoType::NONE;
+    dataProfileInfo.mvnoMatchData = hidl_string();
 
-  bool modemCognitive = true;
-  bool isRoaming = false;
+    bool modemCognitive = true;
+    bool isRoaming = false;
 
-  radio->setInitialAttachApn(++serial, dataProfileInfo, modemCognitive,
-                             isRoaming);
+    radio->setInitialAttachApn(serial, dataProfileInfo, modemCognitive, isRoaming);
 
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE ||
-                  radioRsp->rspInfo.error == RadioError::RADIO_NOT_AVAILABLE ||
-                  radioRsp->rspInfo.error ==
-                      RadioError::SUBSCRIPTION_NOT_AVAILABLE ||
-                  CheckOEMError());
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE ||
+                    radioRsp->rspInfo.error == RadioError::RADIO_NOT_AVAILABLE ||
+                    radioRsp->rspInfo.error == RadioError::SUBSCRIPTION_NOT_AVAILABLE ||
+                    CheckOEMError());
+    }
 }
 
 /*
  * Test IRadio.setDataAllowed() for the response returned.
  */
 TEST_F(RadioHidlTest, setDataAllowed) {
-  int serial = 0;
-  bool allow = true;
+    int serial = GetRandomSerialNumber();
+    bool allow = true;
 
-  radio->setDataAllowed(++serial, allow);
+    radio->setDataAllowed(serial, allow);
 
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    EXPECT_EQ(RadioError::NONE, radioRsp->rspInfo.error);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        EXPECT_EQ(RadioError::NONE, radioRsp->rspInfo.error);
+    }
 }
 
 /*
  * Test IRadio.setDataProfile() for the response returned.
  */
 TEST_F(RadioHidlTest, setDataProfile) {
-  int serial = 0;
+    int serial = GetRandomSerialNumber();
 
-  // Create a dataProfileInfo
-  DataProfileInfo dataProfileInfo;
-  memset(&dataProfileInfo, 0, sizeof(dataProfileInfo));
-  dataProfileInfo.profileId = DataProfileId::IMS;
-  dataProfileInfo.apn = hidl_string("VZWIMS");
-  dataProfileInfo.protocol = hidl_string("IPV4V6");
-  dataProfileInfo.roamingProtocol = hidl_string("IPV6");
-  dataProfileInfo.authType = ApnAuthType::NO_PAP_NO_CHAP;
-  dataProfileInfo.user = "";
-  dataProfileInfo.password = "";
-  dataProfileInfo.type = DataProfileInfoType::THREE_GPP2;
-  dataProfileInfo.maxConnsTime = 300;
-  dataProfileInfo.maxConns = 20;
-  dataProfileInfo.waitTime = 0;
-  dataProfileInfo.enabled = true;
-  dataProfileInfo.supportedApnTypesBitmap = 320;
-  dataProfileInfo.bearerBitmap = 161543;
-  dataProfileInfo.mtu = 0;
-  dataProfileInfo.mvnoType = MvnoType::NONE;
-  dataProfileInfo.mvnoMatchData = hidl_string();
+    // Create a dataProfileInfo
+    DataProfileInfo dataProfileInfo;
+    memset(&dataProfileInfo, 0, sizeof(dataProfileInfo));
+    dataProfileInfo.profileId = DataProfileId::IMS;
+    dataProfileInfo.apn = hidl_string("VZWIMS");
+    dataProfileInfo.protocol = hidl_string("IPV4V6");
+    dataProfileInfo.roamingProtocol = hidl_string("IPV6");
+    dataProfileInfo.authType = ApnAuthType::NO_PAP_NO_CHAP;
+    dataProfileInfo.user = "";
+    dataProfileInfo.password = "";
+    dataProfileInfo.type = DataProfileInfoType::THREE_GPP2;
+    dataProfileInfo.maxConnsTime = 300;
+    dataProfileInfo.maxConns = 20;
+    dataProfileInfo.waitTime = 0;
+    dataProfileInfo.enabled = true;
+    dataProfileInfo.supportedApnTypesBitmap = 320;
+    dataProfileInfo.bearerBitmap = 161543;
+    dataProfileInfo.mtu = 0;
+    dataProfileInfo.mvnoType = MvnoType::NONE;
+    dataProfileInfo.mvnoMatchData = hidl_string();
 
-  // Create a dataProfileInfoList
-  android::hardware::hidl_vec<DataProfileInfo> dataProfileInfoList = {
-      dataProfileInfo};
+    // Create a dataProfileInfoList
+    android::hardware::hidl_vec<DataProfileInfo> dataProfileInfoList = {dataProfileInfo};
 
-  bool isRoadming = false;
+    bool isRoadming = false;
 
-  radio->setDataProfile(++serial, dataProfileInfoList, isRoadming);
+    radio->setDataProfile(serial, dataProfileInfoList, isRoadming);
 
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    // TODO(shuoq): Will add error check when we know the expected error from QC
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        // TODO(shuoq): Will add error check when we know the expected error from QC
+    }
 }
diff --git a/radio/1.0/vts/functional/radio_hidl_hal_icc.cpp b/radio/1.0/vts/functional/radio_hidl_hal_icc.cpp
index 1547c33..a8857c3 100644
--- a/radio/1.0/vts/functional/radio_hidl_hal_icc.cpp
+++ b/radio/1.0/vts/functional/radio_hidl_hal_icc.cpp
@@ -20,304 +20,303 @@
  * Test IRadio.getIccCardStatus() for the response returned.
  */
 TEST_F(RadioHidlTest, getIccCardStatus) {
-  EXPECT_LE(cardStatus.applications.size(),
-            (unsigned int)RadioConst::CARD_MAX_APPS);
-  EXPECT_LT(cardStatus.gsmUmtsSubscriptionAppIndex,
-            (int)RadioConst::CARD_MAX_APPS);
-  EXPECT_LT(cardStatus.cdmaSubscriptionAppIndex,
-            (int)RadioConst::CARD_MAX_APPS);
-  EXPECT_LT(cardStatus.imsSubscriptionAppIndex, (int)RadioConst::CARD_MAX_APPS);
+    EXPECT_LE(cardStatus.applications.size(), (unsigned int)RadioConst::CARD_MAX_APPS);
+    EXPECT_LT(cardStatus.gsmUmtsSubscriptionAppIndex, (int)RadioConst::CARD_MAX_APPS);
+    EXPECT_LT(cardStatus.cdmaSubscriptionAppIndex, (int)RadioConst::CARD_MAX_APPS);
+    EXPECT_LT(cardStatus.imsSubscriptionAppIndex, (int)RadioConst::CARD_MAX_APPS);
 }
 
 /*
  * Test IRadio.supplyIccPinForApp() for the response returned
  */
 TEST_F(RadioHidlTest, supplyIccPinForApp) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  // Pass wrong password and check PASSWORD_INCORRECT returned for 3GPP and
-  // 3GPP2 apps only
-  for (int i = 0; i < (int)cardStatus.applications.size(); i++) {
-    if (cardStatus.applications[i].appType == AppType::SIM ||
-        cardStatus.applications[i].appType == AppType::USIM ||
-        cardStatus.applications[i].appType == AppType::RUIM ||
-        cardStatus.applications[i].appType == AppType::CSIM) {
-      radio->supplyIccPinForApp(++serial, hidl_string("test1"),
-                                cardStatus.applications[i].aidPtr);
-      EXPECT_EQ(std::cv_status::no_timeout, wait());
-      EXPECT_EQ(serial, radioRsp->rspInfo.serial);
-      EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-      EXPECT_EQ(RadioError::PASSWORD_INCORRECT, radioRsp->rspInfo.error);
+    // Pass wrong password and check PASSWORD_INCORRECT returned for 3GPP and
+    // 3GPP2 apps only
+    for (int i = 0; i < (int)cardStatus.applications.size(); i++) {
+        if (cardStatus.applications[i].appType == AppType::SIM ||
+            cardStatus.applications[i].appType == AppType::USIM ||
+            cardStatus.applications[i].appType == AppType::RUIM ||
+            cardStatus.applications[i].appType == AppType::CSIM) {
+            radio->supplyIccPinForApp(serial, hidl_string("test1"),
+                                      cardStatus.applications[i].aidPtr);
+            EXPECT_EQ(std::cv_status::no_timeout, wait());
+            EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+            EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+            EXPECT_EQ(RadioError::PASSWORD_INCORRECT, radioRsp->rspInfo.error);
+        }
     }
-  }
 }
 
 /*
  * Test IRadio.supplyIccPukForApp() for the response returned.
  */
 TEST_F(RadioHidlTest, supplyIccPukForApp) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  // Pass wrong password and check PASSWORD_INCORRECT returned for 3GPP and
-  // 3GPP2 apps only
-  for (int i = 0; i < (int)cardStatus.applications.size(); i++) {
-    if (cardStatus.applications[i].appType == AppType::SIM ||
-        cardStatus.applications[i].appType == AppType::USIM ||
-        cardStatus.applications[i].appType == AppType::RUIM ||
-        cardStatus.applications[i].appType == AppType::CSIM) {
-      radio->supplyIccPukForApp(++serial, hidl_string("test1"),
-                                hidl_string("test2"),
-                                cardStatus.applications[i].aidPtr);
-      EXPECT_EQ(std::cv_status::no_timeout, wait());
-      EXPECT_EQ(serial, radioRsp->rspInfo.serial);
-      EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-      EXPECT_EQ(RadioError::PASSWORD_INCORRECT, radioRsp->rspInfo.error);
+    // Pass wrong password and check PASSWORD_INCORRECT returned for 3GPP and
+    // 3GPP2 apps only
+    for (int i = 0; i < (int)cardStatus.applications.size(); i++) {
+        if (cardStatus.applications[i].appType == AppType::SIM ||
+            cardStatus.applications[i].appType == AppType::USIM ||
+            cardStatus.applications[i].appType == AppType::RUIM ||
+            cardStatus.applications[i].appType == AppType::CSIM) {
+            radio->supplyIccPukForApp(serial, hidl_string("test1"), hidl_string("test2"),
+                                      cardStatus.applications[i].aidPtr);
+            EXPECT_EQ(std::cv_status::no_timeout, wait());
+            EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+            EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+            EXPECT_EQ(RadioError::PASSWORD_INCORRECT, radioRsp->rspInfo.error);
+        }
     }
-  }
 }
 
 /*
  * Test IRadio.supplyIccPin2ForApp() for the response returned.
  */
 TEST_F(RadioHidlTest, supplyIccPin2ForApp) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  // Pass wrong password and check PASSWORD_INCORRECT returned for 3GPP and
-  // 3GPP2 apps only
-  for (int i = 0; i < (int)cardStatus.applications.size(); i++) {
-    if (cardStatus.applications[i].appType == AppType::SIM ||
-        cardStatus.applications[i].appType == AppType::USIM ||
-        cardStatus.applications[i].appType == AppType::RUIM ||
-        cardStatus.applications[i].appType == AppType::CSIM) {
-      radio->supplyIccPin2ForApp(++serial, hidl_string("test1"),
-                                 cardStatus.applications[i].aidPtr);
-      EXPECT_EQ(std::cv_status::no_timeout, wait());
-      EXPECT_EQ(serial, radioRsp->rspInfo.serial);
-      EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-      EXPECT_EQ(RadioError::PASSWORD_INCORRECT, radioRsp->rspInfo.error);
+    // Pass wrong password and check PASSWORD_INCORRECT returned for 3GPP and
+    // 3GPP2 apps only
+    for (int i = 0; i < (int)cardStatus.applications.size(); i++) {
+        if (cardStatus.applications[i].appType == AppType::SIM ||
+            cardStatus.applications[i].appType == AppType::USIM ||
+            cardStatus.applications[i].appType == AppType::RUIM ||
+            cardStatus.applications[i].appType == AppType::CSIM) {
+            radio->supplyIccPin2ForApp(serial, hidl_string("test1"),
+                                       cardStatus.applications[i].aidPtr);
+            EXPECT_EQ(std::cv_status::no_timeout, wait());
+            EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+            EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+            EXPECT_EQ(RadioError::PASSWORD_INCORRECT, radioRsp->rspInfo.error);
+        }
     }
-  }
 }
 
 /*
  * Test IRadio.supplyIccPuk2ForApp() for the response returned.
  */
 TEST_F(RadioHidlTest, supplyIccPuk2ForApp) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  // Pass wrong password and check PASSWORD_INCORRECT returned for 3GPP and
-  // 3GPP2 apps only
-  for (int i = 0; i < (int)cardStatus.applications.size(); i++) {
-    if (cardStatus.applications[i].appType == AppType::SIM ||
-        cardStatus.applications[i].appType == AppType::USIM ||
-        cardStatus.applications[i].appType == AppType::RUIM ||
-        cardStatus.applications[i].appType == AppType::CSIM) {
-      radio->supplyIccPuk2ForApp(++serial, hidl_string("test1"),
-                                 hidl_string("test2"),
-                                 cardStatus.applications[i].aidPtr);
-      EXPECT_EQ(std::cv_status::no_timeout, wait());
-      EXPECT_EQ(serial, radioRsp->rspInfo.serial);
-      EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-      EXPECT_EQ(RadioError::PASSWORD_INCORRECT, radioRsp->rspInfo.error);
+    // Pass wrong password and check PASSWORD_INCORRECT returned for 3GPP and
+    // 3GPP2 apps only
+    for (int i = 0; i < (int)cardStatus.applications.size(); i++) {
+        if (cardStatus.applications[i].appType == AppType::SIM ||
+            cardStatus.applications[i].appType == AppType::USIM ||
+            cardStatus.applications[i].appType == AppType::RUIM ||
+            cardStatus.applications[i].appType == AppType::CSIM) {
+            radio->supplyIccPuk2ForApp(serial, hidl_string("test1"), hidl_string("test2"),
+                                       cardStatus.applications[i].aidPtr);
+            EXPECT_EQ(std::cv_status::no_timeout, wait());
+            EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+            EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+            EXPECT_EQ(RadioError::PASSWORD_INCORRECT, radioRsp->rspInfo.error);
+        }
     }
-  }
 }
 
 /*
  * Test IRadio.changeIccPinForApp() for the response returned.
  */
 TEST_F(RadioHidlTest, changeIccPinForApp) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  // Pass wrong password and check PASSWORD_INCORRECT returned for 3GPP and
-  // 3GPP2 apps only
-  for (int i = 0; i < (int)cardStatus.applications.size(); i++) {
-    if (cardStatus.applications[i].appType == AppType::SIM ||
-        cardStatus.applications[i].appType == AppType::USIM ||
-        cardStatus.applications[i].appType == AppType::RUIM ||
-        cardStatus.applications[i].appType == AppType::CSIM) {
-      radio->changeIccPinForApp(++serial, hidl_string("test1"),
-                                hidl_string("test2"),
-                                cardStatus.applications[i].aidPtr);
-      EXPECT_EQ(std::cv_status::no_timeout, wait());
-      EXPECT_EQ(serial, radioRsp->rspInfo.serial);
-      EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-      EXPECT_EQ(RadioError::PASSWORD_INCORRECT, radioRsp->rspInfo.error);
+    // Pass wrong password and check PASSWORD_INCORRECT returned for 3GPP and
+    // 3GPP2 apps only
+    for (int i = 0; i < (int)cardStatus.applications.size(); i++) {
+        if (cardStatus.applications[i].appType == AppType::SIM ||
+            cardStatus.applications[i].appType == AppType::USIM ||
+            cardStatus.applications[i].appType == AppType::RUIM ||
+            cardStatus.applications[i].appType == AppType::CSIM) {
+            radio->changeIccPinForApp(serial, hidl_string("test1"), hidl_string("test2"),
+                                      cardStatus.applications[i].aidPtr);
+            EXPECT_EQ(std::cv_status::no_timeout, wait());
+            EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+            EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+            EXPECT_EQ(RadioError::PASSWORD_INCORRECT, radioRsp->rspInfo.error);
+        }
     }
-  }
 }
 
 /*
  * Test IRadio.changeIccPin2ForApp() for the response returned.
  */
 TEST_F(RadioHidlTest, changeIccPin2ForApp) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  // Pass wrong password and check PASSWORD_INCORRECT returned for 3GPP and
-  // 3GPP2 apps only
-  for (int i = 0; i < (int)cardStatus.applications.size(); i++) {
-    if (cardStatus.applications[i].appType == AppType::SIM ||
-        cardStatus.applications[i].appType == AppType::USIM ||
-        cardStatus.applications[i].appType == AppType::RUIM ||
-        cardStatus.applications[i].appType == AppType::CSIM) {
-      radio->changeIccPin2ForApp(++serial, hidl_string("test1"),
-                                 hidl_string("test2"),
-                                 cardStatus.applications[i].aidPtr);
-      EXPECT_EQ(std::cv_status::no_timeout, wait());
-      EXPECT_EQ(serial, radioRsp->rspInfo.serial);
-      EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-      EXPECT_EQ(RadioError::PASSWORD_INCORRECT, radioRsp->rspInfo.error);
+    // Pass wrong password and check PASSWORD_INCORRECT returned for 3GPP and
+    // 3GPP2 apps only
+    for (int i = 0; i < (int)cardStatus.applications.size(); i++) {
+        if (cardStatus.applications[i].appType == AppType::SIM ||
+            cardStatus.applications[i].appType == AppType::USIM ||
+            cardStatus.applications[i].appType == AppType::RUIM ||
+            cardStatus.applications[i].appType == AppType::CSIM) {
+            radio->changeIccPin2ForApp(serial, hidl_string("test1"), hidl_string("test2"),
+                                       cardStatus.applications[i].aidPtr);
+            EXPECT_EQ(std::cv_status::no_timeout, wait());
+            EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+            EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+            EXPECT_EQ(RadioError::PASSWORD_INCORRECT, radioRsp->rspInfo.error);
+        }
     }
-  }
 }
 
 /*
  * Test IRadio.getImsiForApp() for the response returned.
  */
 TEST_F(RadioHidlTest, getImsiForApp) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  // Check success returned while getting imsi for 3GPP and 3GPP2 apps only
-  for (int i = 0; i < (int)cardStatus.applications.size(); i++) {
-    if (cardStatus.applications[i].appType == AppType::SIM ||
-        cardStatus.applications[i].appType == AppType::USIM ||
-        cardStatus.applications[i].appType == AppType::RUIM ||
-        cardStatus.applications[i].appType == AppType::CSIM) {
-      radio->getImsiForApp(++serial, cardStatus.applications[i].aidPtr);
-      EXPECT_EQ(std::cv_status::no_timeout, wait());
-      EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-      EXPECT_EQ(serial, radioRsp->rspInfo.serial);
-      EXPECT_EQ(RadioError::NONE, radioRsp->rspInfo.error);
+    // Check success returned while getting imsi for 3GPP and 3GPP2 apps only
+    for (int i = 0; i < (int)cardStatus.applications.size(); i++) {
+        if (cardStatus.applications[i].appType == AppType::SIM ||
+            cardStatus.applications[i].appType == AppType::USIM ||
+            cardStatus.applications[i].appType == AppType::RUIM ||
+            cardStatus.applications[i].appType == AppType::CSIM) {
+            radio->getImsiForApp(serial, cardStatus.applications[i].aidPtr);
+            EXPECT_EQ(std::cv_status::no_timeout, wait());
+            EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+            EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+            EXPECT_EQ(RadioError::NONE, radioRsp->rspInfo.error);
 
-      // IMSI (MCC+MNC+MSIN) is at least 6 digits, but not more than 15
-      if (radioRsp->rspInfo.error == RadioError::NONE) {
-        EXPECT_NE(radioRsp->imsi, hidl_string());
-        EXPECT_GE((int)(radioRsp->imsi).size(), 6);
-        EXPECT_LE((int)(radioRsp->imsi).size(), 15);
-      }
+            // IMSI (MCC+MNC+MSIN) is at least 6 digits, but not more than 15
+            if (radioRsp->rspInfo.error == RadioError::NONE) {
+                EXPECT_NE(radioRsp->imsi, hidl_string());
+                EXPECT_GE((int)(radioRsp->imsi).size(), 6);
+                EXPECT_LE((int)(radioRsp->imsi).size(), 15);
+            }
+        }
     }
-  }
 }
 
 /*
  * Test IRadio.iccIOForApp() for the response returned.
  */
 TEST_F(RadioHidlTest, iccIOForApp) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  for (int i = 0; i < (int)cardStatus.applications.size(); i++) {
-    IccIo iccIo;
-    iccIo.command = 0xc0;
-    iccIo.fileId = 0x6f11;
-    iccIo.path = hidl_string("3F007FFF");
-    iccIo.p1 = 0;
-    iccIo.p2 = 0;
-    iccIo.p3 = 0;
-    iccIo.data = hidl_string();
-    iccIo.pin2 = hidl_string();
-    iccIo.aid = cardStatus.applications[i].aidPtr;
+    for (int i = 0; i < (int)cardStatus.applications.size(); i++) {
+        IccIo iccIo;
+        iccIo.command = 0xc0;
+        iccIo.fileId = 0x6f11;
+        iccIo.path = hidl_string("3F007FFF");
+        iccIo.p1 = 0;
+        iccIo.p2 = 0;
+        iccIo.p3 = 0;
+        iccIo.data = hidl_string();
+        iccIo.pin2 = hidl_string();
+        iccIo.aid = cardStatus.applications[i].aidPtr;
 
-    radio->iccIOForApp(++serial, iccIo);
-    EXPECT_EQ(std::cv_status::no_timeout, wait());
-    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
-  }
+        radio->iccIOForApp(serial, iccIo);
+        EXPECT_EQ(std::cv_status::no_timeout, wait());
+        EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+        EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    }
 }
 
 /*
  * Test IRadio.iccTransmitApduBasicChannel() for the response returned.
  */
 TEST_F(RadioHidlTest, iccTransmitApduBasicChannel) {
-  int serial = 1;
-  SimApdu msg;
-  memset(&msg, 0, sizeof(msg));
-  msg.data = hidl_string();
+    int serial = GetRandomSerialNumber();
+    SimApdu msg;
+    memset(&msg, 0, sizeof(msg));
+    msg.data = hidl_string();
 
-  radio->iccTransmitApduBasicChannel(serial, msg);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->iccTransmitApduBasicChannel(serial, msg);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  // TODO(sanketpadawe): Add test for error code
+    // TODO(sanketpadawe): Add test for error code
 }
 
 /*
  * Test IRadio.iccOpenLogicalChannel() for the response returned.
  */
 TEST_F(RadioHidlTest, iccOpenLogicalChannel) {
-  int serial = 1;
-  int p2 = 0x04;
-  // Specified in ISO 7816-4 clause 7.1.1 0x04 means that FCP template is requested.
-  for (int i = 0; i < (int)cardStatus.applications.size(); i++) {
-    radio->iccOpenLogicalChannel(++serial, cardStatus.applications[i].aidPtr, p2);
-    EXPECT_EQ(std::cv_status::no_timeout, wait());
-    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
-    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  }
+    int serial = GetRandomSerialNumber();
+    int p2 = 0x04;
+    // Specified in ISO 7816-4 clause 7.1.1 0x04 means that FCP template is requested.
+    for (int i = 0; i < (int)cardStatus.applications.size(); i++) {
+        radio->iccOpenLogicalChannel(serial, cardStatus.applications[i].aidPtr, p2);
+        EXPECT_EQ(std::cv_status::no_timeout, wait());
+        EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+        EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    }
 }
 
 /*
  * Test IRadio.iccCloseLogicalChannel() for the response returned.
  */
 TEST_F(RadioHidlTest, iccCloseLogicalChannel) {
-  int serial = 1;
-  // Try closing invalid channel and check INVALID_ARGUMENTS returned as error
-  radio->iccCloseLogicalChannel(serial, 0);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    int serial = GetRandomSerialNumber();
+    // Try closing invalid channel and check INVALID_ARGUMENTS returned as error
+    radio->iccCloseLogicalChannel(serial, 0);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  EXPECT_EQ(RadioError::INVALID_ARGUMENTS, radioRsp->rspInfo.error);
+    EXPECT_EQ(RadioError::INVALID_ARGUMENTS, radioRsp->rspInfo.error);
 }
 
 /*
  * Test IRadio.iccTransmitApduLogicalChannel() for the response returned.
  */
 TEST_F(RadioHidlTest, iccTransmitApduLogicalChannel) {
-  SimApdu msg;
-  memset(&msg, 0, sizeof(msg));
-  msg.data = hidl_string();
+    int serial = GetRandomSerialNumber();
+    SimApdu msg;
+    memset(&msg, 0, sizeof(msg));
+    msg.data = hidl_string();
 
-  radio->iccTransmitApduLogicalChannel(1, msg);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(1, radioRsp->rspInfo.serial);
+    radio->iccTransmitApduLogicalChannel(serial, msg);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  // TODO(sanketpadawe): Add test for error code
+    // TODO(sanketpadawe): Add test for error code
 }
 
 /*
  * Test IRadio.requestIccSimAuthentication() for the response returned.
  */
 TEST_F(RadioHidlTest, requestIccSimAuthentication) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  // Pass wrong challenge string and check RadioError::INVALID_ARGUMENTS
-  // returned as error.
-  for (int i = 0; i < (int)cardStatus.applications.size(); i++) {
-    radio->requestIccSimAuthentication(++serial, 0, hidl_string("test"),
-                                       cardStatus.applications[i].aidPtr);
-    EXPECT_EQ(std::cv_status::no_timeout, wait());
-    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
-    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-    EXPECT_EQ(RadioError::INVALID_ARGUMENTS, radioRsp->rspInfo.error);
-  }
+    // Pass wrong challenge string and check RadioError::INVALID_ARGUMENTS
+    // returned as error.
+    for (int i = 0; i < (int)cardStatus.applications.size(); i++) {
+        radio->requestIccSimAuthentication(serial, 0, hidl_string("test"),
+                                           cardStatus.applications[i].aidPtr);
+        EXPECT_EQ(std::cv_status::no_timeout, wait());
+        EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+        EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+        EXPECT_EQ(RadioError::INVALID_ARGUMENTS, radioRsp->rspInfo.error);
+    }
 }
 
 /*
  * Test IRadio.supplyNetworkDepersonalization() for the response returned.
  */
 TEST_F(RadioHidlTest, supplyNetworkDepersonalization) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->supplyNetworkDepersonalization(serial, hidl_string("test"));
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->supplyNetworkDepersonalization(serial, hidl_string("test"));
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
-                  radioRsp->rspInfo.error == RadioError::PASSWORD_INCORRECT);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE ||
+                    radioRsp->rspInfo.error == RadioError::SYSTEM_ERR ||
+                    radioRsp->rspInfo.error == RadioError::NO_MEMORY ||
+                    radioRsp->rspInfo.error == RadioError::MODEM_ERR ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_SIM_STATE ||
+                    radioRsp->rspInfo.error == RadioError::PASSWORD_INCORRECT ||
+                    radioRsp->rspInfo.error == RadioError::INTERNAL_ERR);
+    }
 }
diff --git a/radio/1.0/vts/functional/radio_hidl_hal_ims.cpp b/radio/1.0/vts/functional/radio_hidl_hal_ims.cpp
index ddf6b7e..ec99d42 100644
--- a/radio/1.0/vts/functional/radio_hidl_hal_ims.cpp
+++ b/radio/1.0/vts/functional/radio_hidl_hal_ims.cpp
@@ -22,178 +22,174 @@
  * Test IRadio.getClir() for the response returned.
  */
 TEST_F(RadioHidlTest, getClir) {
-  int serial = 0;
+    int serial = GetRandomSerialNumber();
 
-  radio->getClir(++serial);
+    radio->getClir(serial);
 
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::MODEM_ERR);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() || radioRsp->rspInfo.error == RadioError::MODEM_ERR);
+    }
 }
 
 /*
  * Test IRadio.setClir() for the response returned.
  */
 TEST_F(RadioHidlTest, setClir) {
-  int serial = 0;
-  int32_t status = 1;
+    int serial = GetRandomSerialNumber();
+    int32_t status = 1;
 
-  radio->setClir(++serial, status);
+    radio->setClir(serial, status);
 
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    EXPECT_EQ(RadioError::NONE, radioRsp->rspInfo.error);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        EXPECT_EQ(RadioError::NONE, radioRsp->rspInfo.error);
+    }
 }
 
 /*
  * Test IRadio.getFacilityLockForApp() for the response returned.
  */
 TEST_F(RadioHidlTest, getFacilityLockForApp) {
-  int serial = 0;
-  std::string facility = "";
-  std::string password = "";
-  int32_t serviceClass = 1;
-  std::string appId = "";
+    int serial = GetRandomSerialNumber();
+    std::string facility = "";
+    std::string password = "";
+    int32_t serviceClass = 1;
+    std::string appId = "";
 
-  radio->getFacilityLockForApp(++serial, facility, password, serviceClass,
-                               appId);
+    radio->getFacilityLockForApp(serial, facility, password, serviceClass, appId);
 
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
-                  radioRsp->rspInfo.error == RadioError::MODEM_ERR);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
+                    radioRsp->rspInfo.error == RadioError::MODEM_ERR);
+    }
 }
 
 /*
  * Test IRadio.setFacilityLockForApp() for the response returned.
  */
 TEST_F(RadioHidlTest, setFacilityLockForApp) {
-  int serial = 0;
-  std::string facility = "";
-  bool lockState = false;
-  std::string password = "";
-  int32_t serviceClass = 1;
-  std::string appId = "";
+    int serial = GetRandomSerialNumber();
+    std::string facility = "";
+    bool lockState = false;
+    std::string password = "";
+    int32_t serviceClass = 1;
+    std::string appId = "";
 
-  radio->setFacilityLockForApp(++serial, facility, lockState, password,
-                               serviceClass, appId);
+    radio->setFacilityLockForApp(serial, facility, lockState, password, serviceClass, appId);
 
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
-                  radioRsp->rspInfo.error == RadioError::MODEM_ERR);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
+                    radioRsp->rspInfo.error == RadioError::MODEM_ERR);
+    }
 }
 
 /*
  * Test IRadio.setBarringPassword() for the response returned.
  */
 TEST_F(RadioHidlTest, setBarringPassword) {
-  int serial = 0;
-  std::string facility = "";
-  std::string oldPassword = "";
-  std::string newPassword = "";
+    int serial = GetRandomSerialNumber();
+    std::string facility = "";
+    std::string oldPassword = "";
+    std::string newPassword = "";
 
-  radio->setBarringPassword(++serial, facility, oldPassword, newPassword);
+    radio->setBarringPassword(serial, facility, oldPassword, newPassword);
 
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
-                  radioRsp->rspInfo.error == RadioError::NONE ||
-                  radioRsp->rspInfo.error == RadioError::MODEM_ERR ||
-                  radioRsp->rspInfo.error == RadioError::FDN_CHECK_FAILURE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
+                    radioRsp->rspInfo.error == RadioError::NONE ||
+                    radioRsp->rspInfo.error == RadioError::MODEM_ERR ||
+                    radioRsp->rspInfo.error == RadioError::FDN_CHECK_FAILURE);
+    }
 }
 
 /*
  * Test IRadio.getClip() for the response returned.
  */
 TEST_F(RadioHidlTest, getClip) {
-  int serial = 0;
+    int serial = GetRandomSerialNumber();
 
-  radio->getClip(++serial);
+    radio->getClip(serial);
 
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::MODEM_ERR);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() || radioRsp->rspInfo.error == RadioError::MODEM_ERR);
+    }
 }
 
 /*
  * Test IRadio.setSuppServiceNotifications() for the response returned.
  */
 TEST_F(RadioHidlTest, setSuppServiceNotifications) {
-  int serial = 0;
-  bool enable = false;
+    int serial = GetRandomSerialNumber();
+    bool enable = false;
 
-  radio->setSuppServiceNotifications(++serial, enable);
+    radio->setSuppServiceNotifications(serial, enable);
 
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    EXPECT_EQ(RadioError::NONE, radioRsp->rspInfo.error);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        EXPECT_EQ(RadioError::NONE, radioRsp->rspInfo.error);
+    }
 }
 
 /*
  * Test IRadio.requestIsimAuthentication() for the response returned.
  */
 TEST_F(RadioHidlTest, requestIsimAuthentication) {
-  int serial = 0;
-  std::string challenge = "";
+    int serial = GetRandomSerialNumber();
+    std::string challenge = "";
 
-  radio->requestIsimAuthentication(++serial, challenge);
+    radio->requestIsimAuthentication(serial, challenge);
 
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError());
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError());
+    }
 }
 
 /*
  * Test IRadio.getImsRegistrationState() for the response returned.
  */
 TEST_F(RadioHidlTest, getImsRegistrationState) {
-  int serial = 0;
+    int serial = GetRandomSerialNumber();
 
-  radio->getImsRegistrationState(++serial);
+    radio->getImsRegistrationState(serial);
 
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    EXPECT_EQ(RadioError::NONE, radioRsp->rspInfo.error);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        EXPECT_EQ(RadioError::NONE, radioRsp->rspInfo.error);
+    }
 }
diff --git a/radio/1.0/vts/functional/radio_hidl_hal_misc.cpp b/radio/1.0/vts/functional/radio_hidl_hal_misc.cpp
index 6879c90..29cb912 100644
--- a/radio/1.0/vts/functional/radio_hidl_hal_misc.cpp
+++ b/radio/1.0/vts/functional/radio_hidl_hal_misc.cpp
@@ -20,800 +20,809 @@
  * Test IRadio.getSignalStrength() for the response returned.
  */
 TEST_F(RadioHidlTest, getSignalStrength) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->getSignalStrength(++serial);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->getSignalStrength(serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
+    }
 }
 
 /*
  * Test IRadio.getVoiceRegistrationState() for the response returned.
  */
 TEST_F(RadioHidlTest, getVoiceRegistrationState) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->getVoiceRegistrationState(++serial);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->getVoiceRegistrationState(serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
+    }
 }
 
 /*
  * Test IRadio.getOperator() for the response returned.
  */
 TEST_F(RadioHidlTest, getOperator) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->getOperator(++serial);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->getOperator(serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
+    }
 }
 
 /*
  * Test IRadio.setRadioPower() for the response returned.
  */
 TEST_F(RadioHidlTest, setRadioPower) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->setRadioPower(++serial, 0);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->setRadioPower(serial, 0);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
+    }
 }
 
 /*
  * Test IRadio.getNetworkSelectionMode() for the response returned.
  */
 TEST_F(RadioHidlTest, getNetworkSelectionMode) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->getNetworkSelectionMode(++serial);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->getNetworkSelectionMode(serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
+    }
 }
 
 /*
  * Test IRadio.setNetworkSelectionModeAutomatic() for the response returned.
  */
 TEST_F(RadioHidlTest, setNetworkSelectionModeAutomatic) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->setNetworkSelectionModeAutomatic(++serial);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->setNetworkSelectionModeAutomatic(serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::ILLEGAL_SIM_OR_ME ||
-                  radioRsp->rspInfo.error == RadioError::NONE ||
-                  radioRsp->rspInfo.error == RadioError::OPERATION_NOT_ALLOWED);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() ||
+                    radioRsp->rspInfo.error == RadioError::ILLEGAL_SIM_OR_ME ||
+                    radioRsp->rspInfo.error == RadioError::NONE ||
+                    radioRsp->rspInfo.error == RadioError::OPERATION_NOT_ALLOWED);
+    }
 }
 
 /*
  * Test IRadio.setNetworkSelectionModeManual() for the response returned.
  */
 TEST_F(RadioHidlTest, setNetworkSelectionModeManual) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->setNetworkSelectionModeManual(++serial, "123456");
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->setNetworkSelectionModeManual(serial, "123456");
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
-                  radioRsp->rspInfo.error == RadioError::ILLEGAL_SIM_OR_ME ||
-                  radioRsp->rspInfo.error == RadioError::NONE ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_STATE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
+                    radioRsp->rspInfo.error == RadioError::ILLEGAL_SIM_OR_ME ||
+                    radioRsp->rspInfo.error == RadioError::NONE ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_STATE);
+    }
 }
 
 /*
  * Test IRadio.getAvailableNetworks() for the response returned.
  */
 TEST_F(RadioHidlTest, getAvailableNetworks) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->getAvailableNetworks(++serial);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->getAvailableNetworks(serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    ASSERT_TRUE(radioRsp->rspInfo.type == RadioResponseType::SOLICITED ||
+                radioRsp->rspInfo.type == RadioResponseType::SOLICITED_ACK_EXP);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::NONE ||
-                  radioRsp->rspInfo.error == RadioError::DEVICE_IN_USE ||
-                  radioRsp->rspInfo.error == RadioError::CANCELLED ||
-                  radioRsp->rspInfo.error == RadioError::OPERATION_NOT_ALLOWED);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() || radioRsp->rspInfo.error == RadioError::NONE ||
+                    radioRsp->rspInfo.error == RadioError::DEVICE_IN_USE ||
+                    radioRsp->rspInfo.error == RadioError::CANCELLED ||
+                    radioRsp->rspInfo.error == RadioError::OPERATION_NOT_ALLOWED ||
+                    radioRsp->rspInfo.error == RadioError::MODEM_ERR);
+    }
 }
 
 /*
  * Test IRadio.getBasebandVersion() for the response returned.
  */
 TEST_F(RadioHidlTest, getBasebandVersion) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->getBasebandVersion(++serial);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->getBasebandVersion(serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
+    }
 }
 
 /*
  * Test IRadio.setBandMode() for the response returned.
  */
 TEST_F(RadioHidlTest, setBandMode) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->setBandMode(++serial, RadioBandMode::BAND_MODE_USA);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->setBandMode(serial, RadioBandMode::BAND_MODE_USA);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
+    }
 }
 
 /*
  * Test IRadio.getAvailableBandModes() for the response returned.
  */
 TEST_F(RadioHidlTest, getAvailableBandModes) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->getAvailableBandModes(++serial);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->getAvailableBandModes(serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
+    }
 }
 
 /*
  * Test IRadio.setPreferredNetworkType() for the response returned.
  */
 TEST_F(RadioHidlTest, setPreferredNetworkType) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->setPreferredNetworkType(++serial, PreferredNetworkType::GSM_ONLY);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->setPreferredNetworkType(serial, PreferredNetworkType::GSM_ONLY);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
+    }
 }
 
 /*
  * Test IRadio.getPreferredNetworkType() for the response returned.
  */
 TEST_F(RadioHidlTest, getPreferredNetworkType) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->getPreferredNetworkType(++serial);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->getPreferredNetworkType(serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
+    }
 }
 
 /*
  * Test IRadio.getNeighboringCids() for the response returned.
  */
 TEST_F(RadioHidlTest, getNeighboringCids) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->getNeighboringCids(++serial);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->getNeighboringCids(serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
+    }
 }
 
 /*
  * Test IRadio.setLocationUpdates() for the response returned.
  */
 TEST_F(RadioHidlTest, setLocationUpdates) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->setLocationUpdates(++serial, true);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->setLocationUpdates(serial, true);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
+    }
 }
 
 /*
  * Test IRadio.setCdmaRoamingPreference() for the response returned.
  */
 TEST_F(RadioHidlTest, setCdmaRoamingPreference) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->setCdmaRoamingPreference(++serial, CdmaRoamingType::HOME_NETWORK);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->setCdmaRoamingPreference(serial, CdmaRoamingType::HOME_NETWORK);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
+    }
 }
 
 /*
  * Test IRadio.getCdmaRoamingPreference() for the response returned.
  */
 TEST_F(RadioHidlTest, getCdmaRoamingPreference) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->getCdmaRoamingPreference(++serial);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->getCdmaRoamingPreference(serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::NONE ||
-                  radioRsp->rspInfo.error == RadioError::MODEM_ERR);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() || radioRsp->rspInfo.error == RadioError::NONE ||
+                    radioRsp->rspInfo.error == RadioError::MODEM_ERR);
+    }
 }
 
 /*
  * Test IRadio.getTTYMode() for the response returned.
  */
 TEST_F(RadioHidlTest, getTTYMode) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->getTTYMode(++serial);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->getTTYMode(serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
+    }
 }
 
 /*
  * Test IRadio.setTTYMode() for the response returned.
  */
 TEST_F(RadioHidlTest, setTTYMode) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->setTTYMode(++serial, TtyMode::OFF);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->setTTYMode(serial, TtyMode::OFF);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
+    }
 }
 
 /*
  * Test IRadio.setPreferredVoicePrivacy() for the response returned.
  */
 TEST_F(RadioHidlTest, setPreferredVoicePrivacy) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->setPreferredVoicePrivacy(++serial, true);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->setPreferredVoicePrivacy(serial, true);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
+    }
 }
 
 /*
  * Test IRadio.getPreferredVoicePrivacy() for the response returned.
  */
 TEST_F(RadioHidlTest, getPreferredVoicePrivacy) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->getPreferredVoicePrivacy(++serial);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->getPreferredVoicePrivacy(serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
+    }
 }
 
 /*
  * Test IRadio.getCDMASubscription() for the response returned.
  */
 TEST_F(RadioHidlTest, getCDMASubscription) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->getCDMASubscription(++serial);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->getCDMASubscription(serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
+    }
 }
 
 /*
  * Test IRadio.getDeviceIdentity() for the response returned.
  */
 TEST_F(RadioHidlTest, getDeviceIdentity) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->getDeviceIdentity(++serial);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->getDeviceIdentity(serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
+    }
 }
 
 /*
  * Test IRadio.exitEmergencyCallbackMode() for the response returned.
  */
 TEST_F(RadioHidlTest, exitEmergencyCallbackMode) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->exitEmergencyCallbackMode(++serial);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->exitEmergencyCallbackMode(serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
+    }
 }
 
 /*
  * Test IRadio.getCdmaSubscriptionSource() for the response returned.
  */
 TEST_F(RadioHidlTest, getCdmaSubscriptionSource) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->getCdmaSubscriptionSource(++serial);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->getCdmaSubscriptionSource(serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
+    }
 }
 
 /*
  * Test IRadio.setCdmaSubscriptionSource() for the response returned.
  */
 TEST_F(RadioHidlTest, setCdmaSubscriptionSource) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->setCdmaSubscriptionSource(++serial, CdmaSubscriptionSource::RUIM_SIM);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->setCdmaSubscriptionSource(serial, CdmaSubscriptionSource::RUIM_SIM);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::SIM_ABSENT ||
-                radioRsp->rspInfo.error ==
-                    RadioError::SUBSCRIPTION_NOT_AVAILABLE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::SIM_ABSENT ||
+                    radioRsp->rspInfo.error == RadioError::SUBSCRIPTION_NOT_AVAILABLE);
+    }
 }
 
 /*
  * Test IRadio.getVoiceRadioTechnology() for the response returned.
  */
 TEST_F(RadioHidlTest, getVoiceRadioTechnology) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->getVoiceRadioTechnology(++serial);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->getVoiceRadioTechnology(serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
+    }
 }
 
 /*
  * Test IRadio.getCellInfoList() for the response returned.
  */
 TEST_F(RadioHidlTest, getCellInfoList) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->getCellInfoList(++serial);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->getCellInfoList(serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::NONE ||
-                  radioRsp->rspInfo.error == RadioError::NO_NETWORK_FOUND);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() || radioRsp->rspInfo.error == RadioError::NONE ||
+                    radioRsp->rspInfo.error == RadioError::NO_NETWORK_FOUND);
+    }
 }
 
 /*
  * Test IRadio.setCellInfoListRate() for the response returned.
  */
 TEST_F(RadioHidlTest, setCellInfoListRate) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  // TODO(sanketpadawe): RIL crashes with value of rate = 10
-  radio->setCellInfoListRate(++serial, 10);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    // TODO(sanketpadawe): RIL crashes with value of rate = 10
+    radio->setCellInfoListRate(serial, 10);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
+    }
 }
 
 /*
  * Test IRadio.nvReadItem() for the response returned.
  */
 TEST_F(RadioHidlTest, nvReadItem) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->nvReadItem(++serial, NvItem::LTE_BAND_ENABLE_25);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->nvReadItem(serial, NvItem::LTE_BAND_ENABLE_25);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
+    }
 }
 
 /*
  * Test IRadio.nvWriteItem() for the response returned.
  */
 TEST_F(RadioHidlTest, nvWriteItem) {
-  int serial = 1;
-  NvWriteItem item;
-  memset(&item, 0, sizeof(item));
-  item.value = hidl_string();
+    int serial = GetRandomSerialNumber();
+    NvWriteItem item;
+    memset(&item, 0, sizeof(item));
+    item.value = hidl_string();
 
-  radio->nvWriteItem(++serial, item);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->nvWriteItem(serial, item);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
+    }
 }
 
 /*
  * Test IRadio.nvWriteCdmaPrl() for the response returned.
  */
 TEST_F(RadioHidlTest, nvWriteCdmaPrl) {
-  int serial = 1;
-  std::vector<uint8_t> prl = {1, 2, 3, 4, 5};
+    int serial = GetRandomSerialNumber();
+    std::vector<uint8_t> prl = {1, 2, 3, 4, 5};
 
-  radio->nvWriteCdmaPrl(++serial, hidl_vec<uint8_t>(prl));
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->nvWriteCdmaPrl(serial, hidl_vec<uint8_t>(prl));
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
+    }
 }
 
 /*
  * Test IRadio.nvResetConfig() for the response returned.
  */
 TEST_F(RadioHidlTest, nvResetConfig) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->nvResetConfig(++serial, ResetNvType::RELOAD);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->nvResetConfig(++serial, ResetNvType::ERASE);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
+    }
 }
 
 /*
  * Test IRadio.setUiccSubscription() for the response returned.
  */
 TEST_F(RadioHidlTest, setUiccSubscription) {
-  int serial = 1;
-  SelectUiccSub item;
-  memset(&item, 0, sizeof(item));
+    int serial = GetRandomSerialNumber();
+    SelectUiccSub item;
+    memset(&item, 0, sizeof(item));
 
-  radio->setUiccSubscription(++serial, item);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->setUiccSubscription(serial, item);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
-                  radioRsp->rspInfo.error == RadioError::NONE ||
-                  radioRsp->rspInfo.error ==
-                      RadioError::SUBSCRIPTION_NOT_SUPPORTED ||
-                  radioRsp->rspInfo.error == RadioError::MODEM_ERR);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
+                    radioRsp->rspInfo.error == RadioError::NONE ||
+                    radioRsp->rspInfo.error == RadioError::SUBSCRIPTION_NOT_SUPPORTED ||
+                    radioRsp->rspInfo.error == RadioError::MODEM_ERR);
+    }
 }
 
 /*
  * Test IRadio.getHardwareConfig() for the response returned.
  */
 TEST_F(RadioHidlTest, getHardwareConfig) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->getHardwareConfig(++serial);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->getHardwareConfig(serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
+    }
 }
 
 /*
  * Test IRadio.requestShutdown() for the response returned.
  */
 TEST_F(RadioHidlTest, requestShutdown) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->requestShutdown(++serial);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->requestShutdown(serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::NONE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() || radioRsp->rspInfo.error == RadioError::NONE);
+    }
 }
 
 /*
  * Test IRadio.getRadioCapability() for the response returned.
  */
 TEST_F(RadioHidlTest, getRadioCapability) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->getRadioCapability(++serial);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->getRadioCapability(serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
+    }
 }
 
 /*
  * Test IRadio.setRadioCapability() for the response returned.
  */
 TEST_F(RadioHidlTest, setRadioCapability) {
-  int serial = 1;
-  RadioCapability rc;
-  memset(&rc, 0, sizeof(rc));
-  rc.logicalModemUuid = hidl_string();
+    int serial = GetRandomSerialNumber();
+    RadioCapability rc;
+    memset(&rc, 0, sizeof(rc));
+    rc.logicalModemUuid = hidl_string();
 
-  radio->setRadioCapability(++serial, rc);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->setRadioCapability(serial, rc);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_STATE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_STATE);
+    }
 }
 
 /*
  * Test IRadio.startLceService() for the response returned.
  */
 TEST_F(RadioHidlTest, startLceService) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->startLceService(++serial, 5, true);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->startLceService(serial, 5, true);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::RADIO_NOT_AVAILABLE ||
-                  radioRsp->rspInfo.error == RadioError::LCE_NOT_SUPPORTED ||
-                  radioRsp->rspInfo.error == RadioError::INTERNAL_ERR);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::RADIO_NOT_AVAILABLE ||
+                    radioRsp->rspInfo.error == RadioError::LCE_NOT_SUPPORTED ||
+                    radioRsp->rspInfo.error == RadioError::INTERNAL_ERR);
+    }
 }
 
 /*
  * Test IRadio.stopLceService() for the response returned.
  */
 TEST_F(RadioHidlTest, stopLceService) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->stopLceService(++serial);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->stopLceService(serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE ||
-                radioRsp->rspInfo.error == RadioError::LCE_NOT_SUPPORTED);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE ||
+                    radioRsp->rspInfo.error == RadioError::LCE_NOT_SUPPORTED);
+    }
 }
 
 /*
  * Test IRadio.pullLceData() for the response returned.
  */
 TEST_F(RadioHidlTest, pullLceData) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->pullLceData(++serial);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->pullLceData(serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::RADIO_NOT_AVAILABLE ||
-                  CheckOEMError());
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::RADIO_NOT_AVAILABLE || CheckOEMError());
+    }
 }
 
 /*
  * Test IRadio.getModemActivityInfo() for the response returned.
  */
 TEST_F(RadioHidlTest, getModemActivityInfo) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->getModemActivityInfo(++serial);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->getModemActivityInfo(serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
+    }
 }
 
 /*
  * Test IRadio.setAllowedCarriers() for the response returned.
  */
 TEST_F(RadioHidlTest, setAllowedCarriers) {
-  int serial = 1;
-  CarrierRestrictions carriers;
-  memset(&carriers, 0, sizeof(carriers));
-  carriers.allowedCarriers.resize(1);
-  carriers.excludedCarriers.resize(0);
-  carriers.allowedCarriers[0].mcc = hidl_string();
-  carriers.allowedCarriers[0].mnc = hidl_string();
-  carriers.allowedCarriers[0].matchType = CarrierMatchType::ALL;
-  carriers.allowedCarriers[0].matchData = hidl_string();
+    int serial = GetRandomSerialNumber();
+    CarrierRestrictions carriers;
+    memset(&carriers, 0, sizeof(carriers));
+    carriers.allowedCarriers.resize(1);
+    carriers.excludedCarriers.resize(0);
+    carriers.allowedCarriers[0].mcc = hidl_string();
+    carriers.allowedCarriers[0].mnc = hidl_string();
+    carriers.allowedCarriers[0].matchType = CarrierMatchType::ALL;
+    carriers.allowedCarriers[0].matchData = hidl_string();
 
-  radio->setAllowedCarriers(++serial, false, carriers);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->setAllowedCarriers(serial, false, carriers);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
+    }
+
+    /* Reset back to no carrier restriction */
+    memset(&carriers, 0, sizeof(carriers));
+    carriers.allowedCarriers.resize(0);
+    carriers.excludedCarriers.resize(0);
+
+    radio->setAllowedCarriers(++serial, true, carriers);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
+    }
 }
 
 /*
  * Test IRadio.getAllowedCarriers() for the response returned.
  */
 TEST_F(RadioHidlTest, getAllowedCarriers) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->getAllowedCarriers(++serial);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->getAllowedCarriers(serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
+    }
 }
 
 /*
  * Test IRadio.sendDeviceState() for the response returned.
  */
 TEST_F(RadioHidlTest, sendDeviceState) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->sendDeviceState(++serial, DeviceStateType::POWER_SAVE_MODE, true);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->sendDeviceState(serial, DeviceStateType::POWER_SAVE_MODE, true);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS);
+    }
 }
 
 /*
  * Test IRadio.setIndicationFilter() for the response returned.
  */
 TEST_F(RadioHidlTest, setIndicationFilter) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->setIndicationFilter(++serial, 1);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->setIndicationFilter(serial, 1);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS);
+    }
 }
 
 /*
  * Test IRadio.setSimCardPower() for the response returned.
  */
 TEST_F(RadioHidlTest, setSimCardPower) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->setSimCardPower(++serial, true);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->setSimCardPower(serial, true);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE ||
-                  radioRsp->rspInfo.error == RadioError::REQUEST_NOT_SUPPORTED);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE ||
+                    radioRsp->rspInfo.error == RadioError::REQUEST_NOT_SUPPORTED);
+    }
 }
\ No newline at end of file
diff --git a/radio/1.0/vts/functional/radio_hidl_hal_sms.cpp b/radio/1.0/vts/functional/radio_hidl_hal_sms.cpp
index b8a50c0..698cf26 100644
--- a/radio/1.0/vts/functional/radio_hidl_hal_sms.cpp
+++ b/radio/1.0/vts/functional/radio_hidl_hal_sms.cpp
@@ -22,417 +22,412 @@
  * Test IRadio.sendSms() for the response returned.
  */
 TEST_F(RadioHidlTest, sendSms) {
-  int serial = 0;
-  GsmSmsMessage msg;
-  msg.smscPdu = "";
-  msg.pdu = "01000b916105770203f3000006d4f29c3e9b01";
+    int serial = GetRandomSerialNumber();
+    GsmSmsMessage msg;
+    msg.smscPdu = "";
+    msg.pdu = "01000b916105770203f3000006d4f29c3e9b01";
 
-  radio->sendSms(++serial, msg);
+    radio->sendSms(serial, msg);
 
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_STATE);
-      EXPECT_EQ(0, radioRsp->sendSmsResult.errorCode);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_STATE);
+        EXPECT_EQ(0, radioRsp->sendSmsResult.errorCode);
+    }
 }
 
 /*
  * Test IRadio.sendSMSExpectMore() for the response returned.
  */
 TEST_F(RadioHidlTest, sendSMSExpectMore) {
-  int serial = 0;
-  GsmSmsMessage msg;
-  msg.smscPdu = "";
-  msg.pdu = "01000b916105770203f3000006d4f29c3e9b01";
+    int serial = GetRandomSerialNumber();
+    GsmSmsMessage msg;
+    msg.smscPdu = "";
+    msg.pdu = "01000b916105770203f3000006d4f29c3e9b01";
 
-  radio->sendSMSExpectMore(++serial, msg);
+    radio->sendSMSExpectMore(serial, msg);
 
-  // TODO(shuoq): add more test for this API when inserted sim card is
-  // considered
+    // TODO(shuoq): add more test for this API when inserted sim card is
+    // considered
 
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_STATE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_STATE);
+    }
 }
 
 /*
  * Test IRadio.acknowledgeLastIncomingGsmSms() for the response returned.
  */
 TEST_F(RadioHidlTest, acknowledgeLastIncomingGsmSms) {
-  int serial = 0;
-  bool success = true;
+    int serial = GetRandomSerialNumber();
+    bool success = true;
 
-  radio->acknowledgeLastIncomingGsmSms(
-      ++serial, success, SmsAcknowledgeFailCause::MEMORY_CAPACITY_EXCEEDED);
+    radio->acknowledgeLastIncomingGsmSms(serial, success,
+                                         SmsAcknowledgeFailCause::MEMORY_CAPACITY_EXCEEDED);
 
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_STATE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_STATE);
+    }
 }
 
 /*
  * Test IRadio.acknowledgeIncomingGsmSmsWithPdu() for the response returned.
  */
 TEST_F(RadioHidlTest, acknowledgeIncomingGsmSmsWithPdu) {
-  int serial = 0;
-  bool success = true;
-  std::string ackPdu = "";
+    int serial = GetRandomSerialNumber();
+    bool success = true;
+    std::string ackPdu = "";
 
-  radio->acknowledgeIncomingGsmSmsWithPdu(++serial, success, ackPdu);
+    radio->acknowledgeIncomingGsmSmsWithPdu(serial, success, ackPdu);
 
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    // TODO(shuoq): Will add error check when we know the expected error from QC
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        // TODO(shuoq): Will add error check when we know the expected error from QC
+    }
 }
 
 /*
  * Test IRadio.sendCdmaSms() for the response returned.
  */
 TEST_F(RadioHidlTest, sendCdmaSms) {
-  int serial = 0;
+    int serial = GetRandomSerialNumber();
 
-  // Create a CdmaSmsAddress
-  CdmaSmsAddress cdmaSmsAddress;
-  cdmaSmsAddress.digitMode = CdmaSmsDigitMode::FOUR_BIT;
-  cdmaSmsAddress.numberMode = CdmaSmsNumberMode::NOT_DATA_NETWORK;
-  cdmaSmsAddress.numberType = CdmaSmsNumberType::UNKNOWN;
-  cdmaSmsAddress.numberPlan = CdmaSmsNumberPlan::UNKNOWN;
-  cdmaSmsAddress.digits =
-      (std::vector<uint8_t>){11, 1, 6, 5, 10, 7, 7, 2, 10, 3, 10, 3};
+    // Create a CdmaSmsAddress
+    CdmaSmsAddress cdmaSmsAddress;
+    cdmaSmsAddress.digitMode = CdmaSmsDigitMode::FOUR_BIT;
+    cdmaSmsAddress.numberMode = CdmaSmsNumberMode::NOT_DATA_NETWORK;
+    cdmaSmsAddress.numberType = CdmaSmsNumberType::UNKNOWN;
+    cdmaSmsAddress.numberPlan = CdmaSmsNumberPlan::UNKNOWN;
+    cdmaSmsAddress.digits = (std::vector<uint8_t>){11, 1, 6, 5, 10, 7, 7, 2, 10, 3, 10, 3};
 
-  // Create a CdmaSmsSubAddress
-  CdmaSmsSubaddress cdmaSmsSubaddress;
-  cdmaSmsSubaddress.subaddressType = CdmaSmsSubaddressType::NSAP;
-  cdmaSmsSubaddress.odd = false;
-  cdmaSmsSubaddress.digits = (std::vector<uint8_t>){};
+    // Create a CdmaSmsSubAddress
+    CdmaSmsSubaddress cdmaSmsSubaddress;
+    cdmaSmsSubaddress.subaddressType = CdmaSmsSubaddressType::NSAP;
+    cdmaSmsSubaddress.odd = false;
+    cdmaSmsSubaddress.digits = (std::vector<uint8_t>){};
 
-  // Create a CdmaSmsMessage
-  android::hardware::radio::V1_0::CdmaSmsMessage cdmaSmsMessage;
-  cdmaSmsMessage.teleserviceId = 4098;
-  cdmaSmsMessage.isServicePresent = false;
-  cdmaSmsMessage.serviceCategory = 0;
-  cdmaSmsMessage.address = cdmaSmsAddress;
-  cdmaSmsMessage.subAddress = cdmaSmsSubaddress;
-  cdmaSmsMessage.bearerData = (std::vector<uint8_t>){
-      15, 0, 3, 32, 3, 16, 1, 8, 16, 53, 76, 68, 6, 51, 106, 0};
+    // Create a CdmaSmsMessage
+    android::hardware::radio::V1_0::CdmaSmsMessage cdmaSmsMessage;
+    cdmaSmsMessage.teleserviceId = 4098;
+    cdmaSmsMessage.isServicePresent = false;
+    cdmaSmsMessage.serviceCategory = 0;
+    cdmaSmsMessage.address = cdmaSmsAddress;
+    cdmaSmsMessage.subAddress = cdmaSmsSubaddress;
+    cdmaSmsMessage.bearerData =
+        (std::vector<uint8_t>){15, 0, 3, 32, 3, 16, 1, 8, 16, 53, 76, 68, 6, 51, 106, 0};
 
-  radio->sendCdmaSms(++serial, cdmaSmsMessage);
+    radio->sendCdmaSms(serial, cdmaSmsMessage);
 
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_STATE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_STATE);
+    }
 }
 
 /*
  * Test IRadio.acknowledgeLastIncomingCdmaSms() for the response returned.
  */
 TEST_F(RadioHidlTest, acknowledgeLastIncomingCdmaSms) {
-  int serial = 0;
+    int serial = GetRandomSerialNumber();
 
-  // Create a CdmaSmsAck
-  CdmaSmsAck cdmaSmsAck;
-  cdmaSmsAck.errorClass = CdmaSmsErrorClass::NO_ERROR;
-  cdmaSmsAck.smsCauseCode = 1;
+    // Create a CdmaSmsAck
+    CdmaSmsAck cdmaSmsAck;
+    cdmaSmsAck.errorClass = CdmaSmsErrorClass::NO_ERROR;
+    cdmaSmsAck.smsCauseCode = 1;
 
-  radio->acknowledgeLastIncomingCdmaSms(++serial, cdmaSmsAck);
+    radio->acknowledgeLastIncomingCdmaSms(serial, cdmaSmsAck);
 
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
-                  radioRsp->rspInfo.error == RadioError::NO_SMS_TO_ACK);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
+                    radioRsp->rspInfo.error == RadioError::NO_SMS_TO_ACK);
+    }
 }
 
 /*
  * Test IRadio.sendImsSms() for the response returned.
  */
 TEST_F(RadioHidlTest, sendImsSms) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  // Create a CdmaSmsAddress
-  CdmaSmsAddress cdmaSmsAddress;
-  cdmaSmsAddress.digitMode = CdmaSmsDigitMode::FOUR_BIT;
-  cdmaSmsAddress.numberMode = CdmaSmsNumberMode::NOT_DATA_NETWORK;
-  cdmaSmsAddress.numberType = CdmaSmsNumberType::UNKNOWN;
-  cdmaSmsAddress.numberPlan = CdmaSmsNumberPlan::UNKNOWN;
-  cdmaSmsAddress.digits =
-      (std::vector<uint8_t>){11, 1, 6, 5, 10, 7, 7, 2, 10, 3, 10, 3};
+    // Create a CdmaSmsAddress
+    CdmaSmsAddress cdmaSmsAddress;
+    cdmaSmsAddress.digitMode = CdmaSmsDigitMode::FOUR_BIT;
+    cdmaSmsAddress.numberMode = CdmaSmsNumberMode::NOT_DATA_NETWORK;
+    cdmaSmsAddress.numberType = CdmaSmsNumberType::UNKNOWN;
+    cdmaSmsAddress.numberPlan = CdmaSmsNumberPlan::UNKNOWN;
+    cdmaSmsAddress.digits = (std::vector<uint8_t>){11, 1, 6, 5, 10, 7, 7, 2, 10, 3, 10, 3};
 
-  // Create a CdmaSmsSubAddress
-  CdmaSmsSubaddress cdmaSmsSubaddress;
-  cdmaSmsSubaddress.subaddressType = CdmaSmsSubaddressType::NSAP;
-  cdmaSmsSubaddress.odd = false;
-  cdmaSmsSubaddress.digits = (std::vector<uint8_t>){};
+    // Create a CdmaSmsSubAddress
+    CdmaSmsSubaddress cdmaSmsSubaddress;
+    cdmaSmsSubaddress.subaddressType = CdmaSmsSubaddressType::NSAP;
+    cdmaSmsSubaddress.odd = false;
+    cdmaSmsSubaddress.digits = (std::vector<uint8_t>){};
 
-  // Create a CdmaSmsMessage
-  CdmaSmsMessage cdmaSmsMessage;
-  cdmaSmsMessage.teleserviceId = 4098;
-  cdmaSmsMessage.isServicePresent = false;
-  cdmaSmsMessage.serviceCategory = 0;
-  cdmaSmsMessage.address = cdmaSmsAddress;
-  cdmaSmsMessage.subAddress = cdmaSmsSubaddress;
-  cdmaSmsMessage.bearerData = (std::vector<uint8_t>){
-      15, 0, 3, 32, 3, 16, 1, 8, 16, 53, 76, 68, 6, 51, 106, 0};
+    // Create a CdmaSmsMessage
+    CdmaSmsMessage cdmaSmsMessage;
+    cdmaSmsMessage.teleserviceId = 4098;
+    cdmaSmsMessage.isServicePresent = false;
+    cdmaSmsMessage.serviceCategory = 0;
+    cdmaSmsMessage.address = cdmaSmsAddress;
+    cdmaSmsMessage.subAddress = cdmaSmsSubaddress;
+    cdmaSmsMessage.bearerData =
+        (std::vector<uint8_t>){15, 0, 3, 32, 3, 16, 1, 8, 16, 53, 76, 68, 6, 51, 106, 0};
 
-  // Creata an ImsSmsMessage
-  ImsSmsMessage msg;
-  msg.tech = RadioTechnologyFamily::THREE_GPP2;
-  msg.retry = false;
-  msg.messageRef = 0;
-  msg.cdmaMessage = (std::vector<CdmaSmsMessage>){cdmaSmsMessage};
-  msg.gsmMessage = (std::vector<GsmSmsMessage>){};
+    // Creata an ImsSmsMessage
+    ImsSmsMessage msg;
+    msg.tech = RadioTechnologyFamily::THREE_GPP2;
+    msg.retry = false;
+    msg.messageRef = 0;
+    msg.cdmaMessage = (std::vector<CdmaSmsMessage>){cdmaSmsMessage};
+    msg.gsmMessage = (std::vector<GsmSmsMessage>){};
 
-  radio->sendImsSms(serial, msg);
+    radio->sendImsSms(serial, msg);
 
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS);
+    }
 }
 
 /*
  * Test IRadio.getSmscAddress() for the response returned.
  */
 TEST_F(RadioHidlTest, getSmscAddress) {
-  int serial = 0;
+    int serial = GetRandomSerialNumber();
 
-  radio->getSmscAddress(++serial);
+    radio->getSmscAddress(serial);
 
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_STATE ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_MODEM_STATE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() || radioRsp->rspInfo.error == RadioError::INVALID_STATE ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_MODEM_STATE);
+    }
 }
 
 /*
  * Test IRadio.setSmscAddress() for the response returned.
  */
 TEST_F(RadioHidlTest, setSmscAddress) {
-  int serial = 0;
-  hidl_string address = hidl_string("smscAddress");
+    int serial = GetRandomSerialNumber();
+    hidl_string address = hidl_string("smscAddress");
 
-  radio->setSmscAddress(++serial, address);
+    radio->setSmscAddress(serial, address);
 
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_SMS_FORMAT);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_SMS_FORMAT);
+    }
 }
 
 /*
  * Test IRadio.writeSmsToSim() for the response returned.
  */
 TEST_F(RadioHidlTest, writeSmsToSim) {
-  int serial = 0;
-  SmsWriteArgs smsWriteArgs;
-  smsWriteArgs.status = SmsWriteArgsStatus::REC_UNREAD;
-  smsWriteArgs.smsc = "";
-  smsWriteArgs.pdu = "01000b916105770203f3000006d4f29c3e9b01";
+    int serial = GetRandomSerialNumber();
+    SmsWriteArgs smsWriteArgs;
+    smsWriteArgs.status = SmsWriteArgsStatus::REC_UNREAD;
+    smsWriteArgs.smsc = "";
+    smsWriteArgs.pdu = "01000b916105770203f3000006d4f29c3e9b01";
 
-  radio->writeSmsToSim(++serial, smsWriteArgs);
+    radio->writeSmsToSim(serial, smsWriteArgs);
 
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
-                  radioRsp->rspInfo.error == RadioError::NONE ||
-                  radioRsp->rspInfo.error == RadioError::MODEM_ERR ||
-                  radioRsp->rspInfo.error == RadioError::ENCODING_ERR ||
-                  radioRsp->rspInfo.error == RadioError::NO_RESOURCES ||
-                  radioRsp->rspInfo.error == RadioError::NETWORK_NOT_READY ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_SMSC_ADDRESS);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
+                    radioRsp->rspInfo.error == RadioError::NONE ||
+                    radioRsp->rspInfo.error == RadioError::MODEM_ERR ||
+                    radioRsp->rspInfo.error == RadioError::ENCODING_ERR ||
+                    radioRsp->rspInfo.error == RadioError::NO_RESOURCES ||
+                    radioRsp->rspInfo.error == RadioError::NETWORK_NOT_READY ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_SMSC_ADDRESS);
+    }
 }
 
 /*
  * Test IRadio.deleteSmsOnSim() for the response returned.
  */
 TEST_F(RadioHidlTest, deleteSmsOnSim) {
-  int serial = 0;
-  int index = 1;
+    int serial = GetRandomSerialNumber();
+    int index = 1;
 
-  radio->deleteSmsOnSim(++serial, index);
+    radio->deleteSmsOnSim(serial, index);
 
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
-                  radioRsp->rspInfo.error == RadioError::NONE ||
-                  radioRsp->rspInfo.error == RadioError::MODEM_ERR ||
-                  radioRsp->rspInfo.error == RadioError::NO_SUCH_ENTRY);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
+                    radioRsp->rspInfo.error == RadioError::NONE ||
+                    radioRsp->rspInfo.error == RadioError::MODEM_ERR ||
+                    radioRsp->rspInfo.error == RadioError::NO_SUCH_ENTRY);
+    }
 }
 
 /*
  * Test IRadio.writeSmsToRuim() for the response returned.
  */
 TEST_F(RadioHidlTest, writeSmsToRuim) {
-  int serial = 0;
+    int serial = GetRandomSerialNumber();
 
-  // Create a CdmaSmsAddress
-  CdmaSmsAddress cdmaSmsAddress;
-  cdmaSmsAddress.digitMode = CdmaSmsDigitMode::FOUR_BIT;
-  cdmaSmsAddress.numberMode = CdmaSmsNumberMode::NOT_DATA_NETWORK;
-  cdmaSmsAddress.numberType = CdmaSmsNumberType::UNKNOWN;
-  cdmaSmsAddress.numberPlan = CdmaSmsNumberPlan::UNKNOWN;
-  cdmaSmsAddress.digits =
-      (std::vector<uint8_t>){11, 1, 6, 5, 10, 7, 7, 2, 10, 3, 10, 3};
+    // Create a CdmaSmsAddress
+    CdmaSmsAddress cdmaSmsAddress;
+    cdmaSmsAddress.digitMode = CdmaSmsDigitMode::FOUR_BIT;
+    cdmaSmsAddress.numberMode = CdmaSmsNumberMode::NOT_DATA_NETWORK;
+    cdmaSmsAddress.numberType = CdmaSmsNumberType::UNKNOWN;
+    cdmaSmsAddress.numberPlan = CdmaSmsNumberPlan::UNKNOWN;
+    cdmaSmsAddress.digits = (std::vector<uint8_t>){11, 1, 6, 5, 10, 7, 7, 2, 10, 3, 10, 3};
 
-  // Create a CdmaSmsSubAddress
-  CdmaSmsSubaddress cdmaSmsSubaddress;
-  cdmaSmsSubaddress.subaddressType = CdmaSmsSubaddressType::NSAP;
-  cdmaSmsSubaddress.odd = false;
-  cdmaSmsSubaddress.digits = (std::vector<uint8_t>){};
+    // Create a CdmaSmsSubAddress
+    CdmaSmsSubaddress cdmaSmsSubaddress;
+    cdmaSmsSubaddress.subaddressType = CdmaSmsSubaddressType::NSAP;
+    cdmaSmsSubaddress.odd = false;
+    cdmaSmsSubaddress.digits = (std::vector<uint8_t>){};
 
-  // Create a CdmaSmsMessage
-  CdmaSmsMessage cdmaSmsMessage;
-  cdmaSmsMessage.teleserviceId = 4098;
-  cdmaSmsMessage.isServicePresent = false;
-  cdmaSmsMessage.serviceCategory = 0;
-  cdmaSmsMessage.address = cdmaSmsAddress;
-  cdmaSmsMessage.subAddress = cdmaSmsSubaddress;
-  cdmaSmsMessage.bearerData = (std::vector<uint8_t>){
-      15, 0, 3, 32, 3, 16, 1, 8, 16, 53, 76, 68, 6, 51, 106, 0};
+    // Create a CdmaSmsMessage
+    CdmaSmsMessage cdmaSmsMessage;
+    cdmaSmsMessage.teleserviceId = 4098;
+    cdmaSmsMessage.isServicePresent = false;
+    cdmaSmsMessage.serviceCategory = 0;
+    cdmaSmsMessage.address = cdmaSmsAddress;
+    cdmaSmsMessage.subAddress = cdmaSmsSubaddress;
+    cdmaSmsMessage.bearerData =
+        (std::vector<uint8_t>){15, 0, 3, 32, 3, 16, 1, 8, 16, 53, 76, 68, 6, 51, 106, 0};
 
-  // Create a CdmaSmsWriteArgs
-  CdmaSmsWriteArgs cdmaSmsWriteArgs;
-  cdmaSmsWriteArgs.status = CdmaSmsWriteArgsStatus::REC_UNREAD;
-  cdmaSmsWriteArgs.message = cdmaSmsMessage;
+    // Create a CdmaSmsWriteArgs
+    CdmaSmsWriteArgs cdmaSmsWriteArgs;
+    cdmaSmsWriteArgs.status = CdmaSmsWriteArgsStatus::REC_UNREAD;
+    cdmaSmsWriteArgs.message = cdmaSmsMessage;
 
-  radio->writeSmsToRuim(++serial, cdmaSmsWriteArgs);
+    radio->writeSmsToRuim(serial, cdmaSmsWriteArgs);
 
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_STATE ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_SMS_FORMAT ||
-                  radioRsp->rspInfo.error == RadioError::NONE ||
-                  radioRsp->rspInfo.error == RadioError::MODEM_ERR ||
-                  radioRsp->rspInfo.error == RadioError::NO_SUCH_ENTRY ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_SMSC_ADDRESS);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_STATE ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_SMS_FORMAT ||
+                    radioRsp->rspInfo.error == RadioError::NONE ||
+                    radioRsp->rspInfo.error == RadioError::MODEM_ERR ||
+                    radioRsp->rspInfo.error == RadioError::NO_SUCH_ENTRY ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_SMSC_ADDRESS);
+    }
 }
 
 /*
  * Test IRadio.deleteSmsOnRuim() for the response returned.
  */
 TEST_F(RadioHidlTest, deleteSmsOnRuim) {
-  int serial = 0;
-  int index = 1;
+    int serial = GetRandomSerialNumber();
+    int index = 1;
 
-  // Create a CdmaSmsAddress
-  CdmaSmsAddress cdmaSmsAddress;
-  cdmaSmsAddress.digitMode = CdmaSmsDigitMode::FOUR_BIT;
-  cdmaSmsAddress.numberMode = CdmaSmsNumberMode::NOT_DATA_NETWORK;
-  cdmaSmsAddress.numberType = CdmaSmsNumberType::UNKNOWN;
-  cdmaSmsAddress.numberPlan = CdmaSmsNumberPlan::UNKNOWN;
-  cdmaSmsAddress.digits =
-      (std::vector<uint8_t>){11, 1, 6, 5, 10, 7, 7, 2, 10, 3, 10, 3};
+    // Create a CdmaSmsAddress
+    CdmaSmsAddress cdmaSmsAddress;
+    cdmaSmsAddress.digitMode = CdmaSmsDigitMode::FOUR_BIT;
+    cdmaSmsAddress.numberMode = CdmaSmsNumberMode::NOT_DATA_NETWORK;
+    cdmaSmsAddress.numberType = CdmaSmsNumberType::UNKNOWN;
+    cdmaSmsAddress.numberPlan = CdmaSmsNumberPlan::UNKNOWN;
+    cdmaSmsAddress.digits = (std::vector<uint8_t>){11, 1, 6, 5, 10, 7, 7, 2, 10, 3, 10, 3};
 
-  // Create a CdmaSmsSubAddress
-  CdmaSmsSubaddress cdmaSmsSubaddress;
-  cdmaSmsSubaddress.subaddressType = CdmaSmsSubaddressType::NSAP;
-  cdmaSmsSubaddress.odd = false;
-  cdmaSmsSubaddress.digits = (std::vector<uint8_t>){};
+    // Create a CdmaSmsSubAddress
+    CdmaSmsSubaddress cdmaSmsSubaddress;
+    cdmaSmsSubaddress.subaddressType = CdmaSmsSubaddressType::NSAP;
+    cdmaSmsSubaddress.odd = false;
+    cdmaSmsSubaddress.digits = (std::vector<uint8_t>){};
 
-  // Create a CdmaSmsMessage
-  CdmaSmsMessage cdmaSmsMessage;
-  cdmaSmsMessage.teleserviceId = 4098;
-  cdmaSmsMessage.isServicePresent = false;
-  cdmaSmsMessage.serviceCategory = 0;
-  cdmaSmsMessage.address = cdmaSmsAddress;
-  cdmaSmsMessage.subAddress = cdmaSmsSubaddress;
-  cdmaSmsMessage.bearerData = (std::vector<uint8_t>){
-      15, 0, 3, 32, 3, 16, 1, 8, 16, 53, 76, 68, 6, 51, 106, 0};
+    // Create a CdmaSmsMessage
+    CdmaSmsMessage cdmaSmsMessage;
+    cdmaSmsMessage.teleserviceId = 4098;
+    cdmaSmsMessage.isServicePresent = false;
+    cdmaSmsMessage.serviceCategory = 0;
+    cdmaSmsMessage.address = cdmaSmsAddress;
+    cdmaSmsMessage.subAddress = cdmaSmsSubaddress;
+    cdmaSmsMessage.bearerData =
+        (std::vector<uint8_t>){15, 0, 3, 32, 3, 16, 1, 8, 16, 53, 76, 68, 6, 51, 106, 0};
 
-  // Create a CdmaSmsWriteArgs
-  CdmaSmsWriteArgs cdmaSmsWriteArgs;
-  cdmaSmsWriteArgs.status = CdmaSmsWriteArgsStatus::REC_UNREAD;
-  cdmaSmsWriteArgs.message = cdmaSmsMessage;
+    // Create a CdmaSmsWriteArgs
+    CdmaSmsWriteArgs cdmaSmsWriteArgs;
+    cdmaSmsWriteArgs.status = CdmaSmsWriteArgsStatus::REC_UNREAD;
+    cdmaSmsWriteArgs.message = cdmaSmsMessage;
 
-  radio->deleteSmsOnRuim(++serial, index);
+    radio->deleteSmsOnRuim(serial, index);
 
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError());
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError());
+    }
 }
 
 /*
  * Test IRadio.reportSmsMemoryStatus() for the response returned.
  */
 TEST_F(RadioHidlTest, reportSmsMemoryStatus) {
-  int serial = 0;
-  bool available = true;
+    int serial = GetRandomSerialNumber();
+    bool available = true;
 
-  radio->reportSmsMemoryStatus(++serial, available);
+    radio->reportSmsMemoryStatus(serial, available);
 
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_STATE ||
-                  radioRsp->rspInfo.error == RadioError::MODEM_ERR);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_STATE ||
+                    radioRsp->rspInfo.error == RadioError::MODEM_ERR);
+    }
 }
diff --git a/radio/1.0/vts/functional/radio_hidl_hal_stk.cpp b/radio/1.0/vts/functional/radio_hidl_hal_stk.cpp
index b02a740..4c76c45 100644
--- a/radio/1.0/vts/functional/radio_hidl_hal_stk.cpp
+++ b/radio/1.0/vts/functional/radio_hidl_hal_stk.cpp
@@ -22,101 +22,109 @@
  * Test IRadio.sendEnvelope() for the response returned.
  */
 TEST_F(RadioHidlTest, sendEnvelope) {
-  int serial = 0;
+    int serial = GetRandomSerialNumber();
 
-  // Test with sending empty string
-  std::string content = "";
+    // Test with sending empty string
+    std::string content = "";
 
-  radio->sendEnvelope(++serial, content);
+    radio->sendEnvelope(serial, content);
 
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    EXPECT_EQ(RadioError::NONE, radioRsp->rspInfo.error);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        EXPECT_EQ(RadioError::NONE, radioRsp->rspInfo.error);
+    }
 
-  // Test with sending random string
-  content = "0";
+    // Test with sending random string
+    serial = GetRandomSerialNumber();
+    content = "0";
 
-  radio->sendEnvelope(++serial, content);
+    radio->sendEnvelope(serial, content);
 
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    EXPECT_EQ(RadioError::NONE, radioRsp->rspInfo.error);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        EXPECT_EQ(RadioError::NONE, radioRsp->rspInfo.error);
+    }
 }
 
 /*
  * Test IRadio.sendTerminalResponseToSim() for the response returned.
  */
 TEST_F(RadioHidlTest, sendTerminalResponseToSim) {
-  int serial = 0;
+    int serial = GetRandomSerialNumber();
 
-  // Test with sending empty string
-  std::string commandResponse = "";
+    // Test with sending empty string
+    std::string commandResponse = "";
 
-  radio->sendTerminalResponseToSim(++serial, commandResponse);
+    radio->sendTerminalResponseToSim(serial, commandResponse);
 
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    EXPECT_EQ(RadioError::NONE, radioRsp->rspInfo.error);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        EXPECT_EQ(RadioError::NONE, radioRsp->rspInfo.error);
+    }
 
-  // Test with sending random string
-  commandResponse = "0";
+    serial = GetRandomSerialNumber();
 
-  radio->sendTerminalResponseToSim(++serial, commandResponse);
+    // Test with sending random string
+    commandResponse = "0";
 
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->sendTerminalResponseToSim(serial, commandResponse);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    EXPECT_EQ(RadioError::NONE, radioRsp->rspInfo.error);
-  }
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+
+    if (cardStatus.cardState == CardState::ABSENT) {
+        EXPECT_EQ(RadioError::NONE, radioRsp->rspInfo.error);
+    }
 }
 
 /*
  * Test IRadio.handleStkCallSetupRequestFromSim() for the response returned.
  */
 TEST_F(RadioHidlTest, handleStkCallSetupRequestFromSim) {
-  int serial = 0;
-  bool accept = false;
+    int serial = GetRandomSerialNumber();
+    bool accept = false;
 
-  radio->handleStkCallSetupRequestFromSim(++serial, accept);
+    radio->handleStkCallSetupRequestFromSim(serial, accept);
 
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    EXPECT_EQ(RadioError::NONE, radioRsp->rspInfo.error);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE ||
+                    radioRsp->rspInfo.error == RadioError::SYSTEM_ERR ||
+                    radioRsp->rspInfo.error == RadioError::NO_MEMORY ||
+                    radioRsp->rspInfo.error == RadioError::MODEM_ERR ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
+                    radioRsp->rspInfo.error == RadioError::INTERNAL_ERR);
+    }
 }
 
 /*
  * Test IRadio.reportStkServiceIsRunning() for the response returned.
  */
 TEST_F(RadioHidlTest, reportStkServiceIsRunning) {
-  int serial = 0;
+    int serial = GetRandomSerialNumber();
 
-  radio->reportStkServiceIsRunning(++serial);
+    radio->reportStkServiceIsRunning(serial);
 
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    EXPECT_EQ(RadioError::NONE, radioRsp->rspInfo.error);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        EXPECT_EQ(RadioError::NONE, radioRsp->rspInfo.error);
+    }
 }
 
 /*
@@ -124,31 +132,32 @@
  * string.
  */
 TEST_F(RadioHidlTest, sendEnvelopeWithStatus) {
-  int serial = 0;
+    int serial = GetRandomSerialNumber();
 
-  // Test with sending empty string
-  std::string contents = "";
+    // Test with sending empty string
+    std::string contents = "";
 
-  radio->sendEnvelopeWithStatus(++serial, contents);
+    radio->sendEnvelopeWithStatus(serial, contents);
 
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    EXPECT_EQ(RadioError::NONE, radioRsp->rspInfo.error);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        EXPECT_EQ(RadioError::NONE, radioRsp->rspInfo.error);
+    }
 
-  // Test with sending random string
-  contents = "0";
+    // Test with sending random string
+    serial = GetRandomSerialNumber();
+    contents = "0";
 
-  radio->sendEnvelopeWithStatus(++serial, contents);
+    radio->sendEnvelopeWithStatus(serial, contents);
 
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    ASSERT_FALSE(RadioError::NONE == radioRsp->rspInfo.error);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_FALSE(RadioError::NONE == radioRsp->rspInfo.error);
+    }
 }
diff --git a/radio/1.0/vts/functional/radio_hidl_hal_test.cpp b/radio/1.0/vts/functional/radio_hidl_hal_test.cpp
index 794c60f..1aa9d6c 100644
--- a/radio/1.0/vts/functional/radio_hidl_hal_test.cpp
+++ b/radio/1.0/vts/functional/radio_hidl_hal_test.cpp
@@ -17,46 +17,47 @@
 #include <radio_hidl_hal_utils.h>
 
 void RadioHidlTest::SetUp() {
-  radio = ::testing::VtsHalHidlTargetTestBase::getService<IRadio>(
-      hidl_string(RADIO_SERVICE_NAME));
-  ASSERT_NE(radio, nullptr);
+    radio =
+        ::testing::VtsHalHidlTargetTestBase::getService<IRadio>(hidl_string(RADIO_SERVICE_NAME));
+    ASSERT_NE(radio, nullptr);
 
-  radioRsp = new RadioResponse(*this);
-  ASSERT_NE(radioRsp, nullptr);
+    radioRsp = new RadioResponse(*this);
+    ASSERT_NE(radioRsp, nullptr);
 
-  count = 0;
+    count = 0;
 
-  radioInd = NULL;
-  radio->setResponseFunctions(radioRsp, radioInd);
+    radioInd = NULL;
+    radio->setResponseFunctions(radioRsp, radioInd);
 
-  radio->getIccCardStatus(1);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(1, radioRsp->rspInfo.serial);
-  EXPECT_EQ(RadioError::NONE, radioRsp->rspInfo.error);
+    int serial = GetRandomSerialNumber();
+    radio->getIccCardStatus(serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    EXPECT_EQ(RadioError::NONE, radioRsp->rspInfo.error);
 }
 
 void RadioHidlTest::TearDown() {}
 
 void RadioHidlTest::notify() {
-  std::unique_lock<std::mutex> lock(mtx);
-  count++;
-  cv.notify_one();
+    std::unique_lock<std::mutex> lock(mtx);
+    count++;
+    cv.notify_one();
 }
 
 std::cv_status RadioHidlTest::wait() {
-  std::unique_lock<std::mutex> lock(mtx);
+    std::unique_lock<std::mutex> lock(mtx);
 
-  std::cv_status status = std::cv_status::no_timeout;
-  auto now = std::chrono::system_clock::now();
-  while (count == 0) {
-    status = cv.wait_until(lock, now + std::chrono::seconds(TIMEOUT_PERIOD));
-    if (status == std::cv_status::timeout) {
-      return status;
+    std::cv_status status = std::cv_status::no_timeout;
+    auto now = std::chrono::system_clock::now();
+    while (count == 0) {
+        status = cv.wait_until(lock, now + std::chrono::seconds(TIMEOUT_PERIOD));
+        if (status == std::cv_status::timeout) {
+            return status;
+        }
     }
-  }
-  count--;
-  return status;
+    count--;
+    return status;
 }
 
 bool RadioHidlTest::CheckGeneralError() {
diff --git a/radio/1.0/vts/functional/radio_hidl_hal_utils.h b/radio/1.0/vts/functional/radio_hidl_hal_utils.h
index 735e575..3c46e79 100644
--- a/radio/1.0/vts/functional/radio_hidl_hal_utils.h
+++ b/radio/1.0/vts/functional/radio_hidl_hal_utils.h
@@ -26,6 +26,8 @@
 #include <android/hardware/radio/1.0/IRadioResponse.h>
 #include <android/hardware/radio/1.0/types.h>
 
+#include <vts_test_util.h>
+
 using ::android::hardware::radio::V1_0::ActivityStatsInfo;
 using ::android::hardware::radio::V1_0::AppType;
 using ::android::hardware::radio::V1_0::CardStatus;
@@ -88,432 +90,388 @@
 
 /* Callback class for radio response */
 class RadioResponse : public IRadioResponse {
- private:
-  RadioHidlTest& parent;
+   private:
+    RadioHidlTest& parent;
 
- public:
-  RadioResponseInfo rspInfo;
-  hidl_string imsi;
-  IccIoResult iccIoResult;
-  int channelId;
+   public:
+    RadioResponseInfo rspInfo;
+    hidl_string imsi;
+    IccIoResult iccIoResult;
+    int channelId;
 
-  // Sms
-  SendSmsResult sendSmsResult;
-  hidl_string smscAddress;
-  uint32_t writeSmsToSimIndex;
-  uint32_t writeSmsToRuimIndex;
+    // Sms
+    SendSmsResult sendSmsResult;
+    hidl_string smscAddress;
+    uint32_t writeSmsToSimIndex;
+    uint32_t writeSmsToRuimIndex;
 
-  RadioResponse(RadioHidlTest& parent);
+    RadioResponse(RadioHidlTest& parent);
 
-  virtual ~RadioResponse() = default;
+    virtual ~RadioResponse() = default;
 
-  Return<void> getIccCardStatusResponse(const RadioResponseInfo& info,
-                                        const CardStatus& cardStatus);
+    Return<void> getIccCardStatusResponse(const RadioResponseInfo& info,
+                                          const CardStatus& cardStatus);
 
-  Return<void> supplyIccPinForAppResponse(const RadioResponseInfo& info,
-                                          int32_t remainingRetries);
+    Return<void> supplyIccPinForAppResponse(const RadioResponseInfo& info,
+                                            int32_t remainingRetries);
 
-  Return<void> supplyIccPukForAppResponse(const RadioResponseInfo& info,
-                                          int32_t remainingRetries);
+    Return<void> supplyIccPukForAppResponse(const RadioResponseInfo& info,
+                                            int32_t remainingRetries);
 
-  Return<void> supplyIccPin2ForAppResponse(const RadioResponseInfo& info,
-                                           int32_t remainingRetries);
+    Return<void> supplyIccPin2ForAppResponse(const RadioResponseInfo& info,
+                                             int32_t remainingRetries);
 
-  Return<void> supplyIccPuk2ForAppResponse(const RadioResponseInfo& info,
-                                           int32_t remainingRetries);
+    Return<void> supplyIccPuk2ForAppResponse(const RadioResponseInfo& info,
+                                             int32_t remainingRetries);
 
-  Return<void> changeIccPinForAppResponse(const RadioResponseInfo& info,
-                                          int32_t remainingRetries);
+    Return<void> changeIccPinForAppResponse(const RadioResponseInfo& info,
+                                            int32_t remainingRetries);
 
-  Return<void> changeIccPin2ForAppResponse(const RadioResponseInfo& info,
-                                           int32_t remainingRetries);
+    Return<void> changeIccPin2ForAppResponse(const RadioResponseInfo& info,
+                                             int32_t remainingRetries);
 
-  Return<void> supplyNetworkDepersonalizationResponse(
-      const RadioResponseInfo& info, int32_t remainingRetries);
+    Return<void> supplyNetworkDepersonalizationResponse(const RadioResponseInfo& info,
+                                                        int32_t remainingRetries);
 
-  Return<void> getCurrentCallsResponse(
-      const RadioResponseInfo& info,
-      const ::android::hardware::hidl_vec<Call>& calls);
+    Return<void> getCurrentCallsResponse(const RadioResponseInfo& info,
+                                         const ::android::hardware::hidl_vec<Call>& calls);
 
-  Return<void> dialResponse(const RadioResponseInfo& info);
+    Return<void> dialResponse(const RadioResponseInfo& info);
 
-  Return<void> getIMSIForAppResponse(
-      const RadioResponseInfo& info,
-      const ::android::hardware::hidl_string& imsi);
+    Return<void> getIMSIForAppResponse(const RadioResponseInfo& info,
+                                       const ::android::hardware::hidl_string& imsi);
 
-  Return<void> hangupConnectionResponse(const RadioResponseInfo& info);
+    Return<void> hangupConnectionResponse(const RadioResponseInfo& info);
 
-  Return<void> hangupWaitingOrBackgroundResponse(const RadioResponseInfo& info);
+    Return<void> hangupWaitingOrBackgroundResponse(const RadioResponseInfo& info);
 
-  Return<void> hangupForegroundResumeBackgroundResponse(
-      const RadioResponseInfo& info);
+    Return<void> hangupForegroundResumeBackgroundResponse(const RadioResponseInfo& info);
 
-  Return<void> switchWaitingOrHoldingAndActiveResponse(
-      const RadioResponseInfo& info);
+    Return<void> switchWaitingOrHoldingAndActiveResponse(const RadioResponseInfo& info);
 
-  Return<void> conferenceResponse(const RadioResponseInfo& info);
+    Return<void> conferenceResponse(const RadioResponseInfo& info);
 
-  Return<void> rejectCallResponse(const RadioResponseInfo& info);
+    Return<void> rejectCallResponse(const RadioResponseInfo& info);
 
-  Return<void> getLastCallFailCauseResponse(
-      const RadioResponseInfo& info,
-      const LastCallFailCauseInfo& failCauseInfo);
+    Return<void> getLastCallFailCauseResponse(const RadioResponseInfo& info,
+                                              const LastCallFailCauseInfo& failCauseInfo);
 
-  Return<void> getSignalStrengthResponse(const RadioResponseInfo& info,
-                                         const SignalStrength& sigStrength);
+    Return<void> getSignalStrengthResponse(const RadioResponseInfo& info,
+                                           const SignalStrength& sigStrength);
 
-  Return<void> getVoiceRegistrationStateResponse(
-      const RadioResponseInfo& info,
-      const VoiceRegStateResult& voiceRegResponse);
+    Return<void> getVoiceRegistrationStateResponse(const RadioResponseInfo& info,
+                                                   const VoiceRegStateResult& voiceRegResponse);
 
-  Return<void> getDataRegistrationStateResponse(
-      const RadioResponseInfo& info, const DataRegStateResult& dataRegResponse);
+    Return<void> getDataRegistrationStateResponse(const RadioResponseInfo& info,
+                                                  const DataRegStateResult& dataRegResponse);
 
-  Return<void> getOperatorResponse(
-      const RadioResponseInfo& info,
-      const ::android::hardware::hidl_string& longName,
-      const ::android::hardware::hidl_string& shortName,
-      const ::android::hardware::hidl_string& numeric);
+    Return<void> getOperatorResponse(const RadioResponseInfo& info,
+                                     const ::android::hardware::hidl_string& longName,
+                                     const ::android::hardware::hidl_string& shortName,
+                                     const ::android::hardware::hidl_string& numeric);
 
-  Return<void> setRadioPowerResponse(const RadioResponseInfo& info);
+    Return<void> setRadioPowerResponse(const RadioResponseInfo& info);
 
-  Return<void> sendDtmfResponse(const RadioResponseInfo& info);
+    Return<void> sendDtmfResponse(const RadioResponseInfo& info);
 
-  Return<void> sendSmsResponse(const RadioResponseInfo& info,
-                               const SendSmsResult& sms);
+    Return<void> sendSmsResponse(const RadioResponseInfo& info, const SendSmsResult& sms);
 
-  Return<void> sendSMSExpectMoreResponse(const RadioResponseInfo& info,
-                                         const SendSmsResult& sms);
+    Return<void> sendSMSExpectMoreResponse(const RadioResponseInfo& info, const SendSmsResult& sms);
 
-  Return<void> setupDataCallResponse(const RadioResponseInfo& info,
-                                     const SetupDataCallResult& dcResponse);
+    Return<void> setupDataCallResponse(const RadioResponseInfo& info,
+                                       const SetupDataCallResult& dcResponse);
 
-  Return<void> iccIOForAppResponse(const RadioResponseInfo& info,
-                                   const IccIoResult& iccIo);
+    Return<void> iccIOForAppResponse(const RadioResponseInfo& info, const IccIoResult& iccIo);
 
-  Return<void> sendUssdResponse(const RadioResponseInfo& info);
+    Return<void> sendUssdResponse(const RadioResponseInfo& info);
 
-  Return<void> cancelPendingUssdResponse(const RadioResponseInfo& info);
+    Return<void> cancelPendingUssdResponse(const RadioResponseInfo& info);
 
-  Return<void> getClirResponse(const RadioResponseInfo& info, int32_t n,
-                               int32_t m);
+    Return<void> getClirResponse(const RadioResponseInfo& info, int32_t n, int32_t m);
 
-  Return<void> setClirResponse(const RadioResponseInfo& info);
+    Return<void> setClirResponse(const RadioResponseInfo& info);
 
-  Return<void> getCallForwardStatusResponse(
-      const RadioResponseInfo& info,
-      const ::android::hardware::hidl_vec<CallForwardInfo>& call_forwardInfos);
+    Return<void> getCallForwardStatusResponse(
+        const RadioResponseInfo& info,
+        const ::android::hardware::hidl_vec<CallForwardInfo>& call_forwardInfos);
 
-  Return<void> setCallForwardResponse(const RadioResponseInfo& info);
+    Return<void> setCallForwardResponse(const RadioResponseInfo& info);
 
-  Return<void> getCallWaitingResponse(const RadioResponseInfo& info,
-                                      bool enable, int32_t serviceClass);
+    Return<void> getCallWaitingResponse(const RadioResponseInfo& info, bool enable,
+                                        int32_t serviceClass);
 
-  Return<void> setCallWaitingResponse(const RadioResponseInfo& info);
+    Return<void> setCallWaitingResponse(const RadioResponseInfo& info);
 
-  Return<void> acknowledgeLastIncomingGsmSmsResponse(
-      const RadioResponseInfo& info);
+    Return<void> acknowledgeLastIncomingGsmSmsResponse(const RadioResponseInfo& info);
 
-  Return<void> acceptCallResponse(const RadioResponseInfo& info);
+    Return<void> acceptCallResponse(const RadioResponseInfo& info);
 
-  Return<void> deactivateDataCallResponse(const RadioResponseInfo& info);
+    Return<void> deactivateDataCallResponse(const RadioResponseInfo& info);
 
-  Return<void> getFacilityLockForAppResponse(const RadioResponseInfo& info,
-                                             int32_t response);
+    Return<void> getFacilityLockForAppResponse(const RadioResponseInfo& info, int32_t response);
 
-  Return<void> setFacilityLockForAppResponse(const RadioResponseInfo& info,
-                                             int32_t retry);
+    Return<void> setFacilityLockForAppResponse(const RadioResponseInfo& info, int32_t retry);
 
-  Return<void> setBarringPasswordResponse(const RadioResponseInfo& info);
+    Return<void> setBarringPasswordResponse(const RadioResponseInfo& info);
 
-  Return<void> getNetworkSelectionModeResponse(const RadioResponseInfo& info,
-                                               bool manual);
+    Return<void> getNetworkSelectionModeResponse(const RadioResponseInfo& info, bool manual);
 
-  Return<void> setNetworkSelectionModeAutomaticResponse(
-      const RadioResponseInfo& info);
+    Return<void> setNetworkSelectionModeAutomaticResponse(const RadioResponseInfo& info);
 
-  Return<void> setNetworkSelectionModeManualResponse(
-      const RadioResponseInfo& info);
+    Return<void> setNetworkSelectionModeManualResponse(const RadioResponseInfo& info);
 
-  Return<void> getAvailableNetworksResponse(
-      const RadioResponseInfo& info,
-      const ::android::hardware::hidl_vec<OperatorInfo>& networkInfos);
+    Return<void> getAvailableNetworksResponse(
+        const RadioResponseInfo& info,
+        const ::android::hardware::hidl_vec<OperatorInfo>& networkInfos);
 
-  Return<void> startDtmfResponse(const RadioResponseInfo& info);
+    Return<void> startDtmfResponse(const RadioResponseInfo& info);
 
-  Return<void> stopDtmfResponse(const RadioResponseInfo& info);
+    Return<void> stopDtmfResponse(const RadioResponseInfo& info);
 
-  Return<void> getBasebandVersionResponse(
-      const RadioResponseInfo& info,
-      const ::android::hardware::hidl_string& version);
+    Return<void> getBasebandVersionResponse(const RadioResponseInfo& info,
+                                            const ::android::hardware::hidl_string& version);
 
-  Return<void> separateConnectionResponse(const RadioResponseInfo& info);
+    Return<void> separateConnectionResponse(const RadioResponseInfo& info);
 
-  Return<void> setMuteResponse(const RadioResponseInfo& info);
+    Return<void> setMuteResponse(const RadioResponseInfo& info);
 
-  Return<void> getMuteResponse(const RadioResponseInfo& info, bool enable);
+    Return<void> getMuteResponse(const RadioResponseInfo& info, bool enable);
 
-  Return<void> getClipResponse(const RadioResponseInfo& info,
-                               ClipStatus status);
+    Return<void> getClipResponse(const RadioResponseInfo& info, ClipStatus status);
 
-  Return<void> getDataCallListResponse(
-      const RadioResponseInfo& info,
-      const ::android::hardware::hidl_vec<SetupDataCallResult>& dcResponse);
+    Return<void> getDataCallListResponse(
+        const RadioResponseInfo& info,
+        const ::android::hardware::hidl_vec<SetupDataCallResult>& dcResponse);
 
-  Return<void> sendOemRilRequestRawResponse(
-      const RadioResponseInfo& info,
-      const ::android::hardware::hidl_vec<uint8_t>& data);
+    Return<void> sendOemRilRequestRawResponse(const RadioResponseInfo& info,
+                                              const ::android::hardware::hidl_vec<uint8_t>& data);
 
-  Return<void> sendOemRilRequestStringsResponse(
-      const RadioResponseInfo& info,
-      const ::android::hardware::hidl_vec<::android::hardware::hidl_string>&
-          data);
+    Return<void> sendOemRilRequestStringsResponse(
+        const RadioResponseInfo& info,
+        const ::android::hardware::hidl_vec<::android::hardware::hidl_string>& data);
 
-  Return<void> setSuppServiceNotificationsResponse(
-      const RadioResponseInfo& info);
+    Return<void> setSuppServiceNotificationsResponse(const RadioResponseInfo& info);
 
-  Return<void> writeSmsToSimResponse(const RadioResponseInfo& info,
-                                     int32_t index);
+    Return<void> writeSmsToSimResponse(const RadioResponseInfo& info, int32_t index);
 
-  Return<void> deleteSmsOnSimResponse(const RadioResponseInfo& info);
+    Return<void> deleteSmsOnSimResponse(const RadioResponseInfo& info);
 
-  Return<void> setBandModeResponse(const RadioResponseInfo& info);
+    Return<void> setBandModeResponse(const RadioResponseInfo& info);
 
-  Return<void> getAvailableBandModesResponse(
-      const RadioResponseInfo& info,
-      const ::android::hardware::hidl_vec<RadioBandMode>& bandModes);
+    Return<void> getAvailableBandModesResponse(
+        const RadioResponseInfo& info,
+        const ::android::hardware::hidl_vec<RadioBandMode>& bandModes);
 
-  Return<void> sendEnvelopeResponse(
-      const RadioResponseInfo& info,
-      const ::android::hardware::hidl_string& commandResponse);
+    Return<void> sendEnvelopeResponse(const RadioResponseInfo& info,
+                                      const ::android::hardware::hidl_string& commandResponse);
 
-  Return<void> sendTerminalResponseToSimResponse(const RadioResponseInfo& info);
+    Return<void> sendTerminalResponseToSimResponse(const RadioResponseInfo& info);
 
-  Return<void> handleStkCallSetupRequestFromSimResponse(
-      const RadioResponseInfo& info);
+    Return<void> handleStkCallSetupRequestFromSimResponse(const RadioResponseInfo& info);
 
-  Return<void> explicitCallTransferResponse(const RadioResponseInfo& info);
+    Return<void> explicitCallTransferResponse(const RadioResponseInfo& info);
 
-  Return<void> setPreferredNetworkTypeResponse(const RadioResponseInfo& info);
+    Return<void> setPreferredNetworkTypeResponse(const RadioResponseInfo& info);
 
-  Return<void> getPreferredNetworkTypeResponse(const RadioResponseInfo& info,
-                                               PreferredNetworkType nwType);
+    Return<void> getPreferredNetworkTypeResponse(const RadioResponseInfo& info,
+                                                 PreferredNetworkType nwType);
 
-  Return<void> getNeighboringCidsResponse(
-      const RadioResponseInfo& info,
-      const ::android::hardware::hidl_vec<NeighboringCell>& cells);
+    Return<void> getNeighboringCidsResponse(
+        const RadioResponseInfo& info, const ::android::hardware::hidl_vec<NeighboringCell>& cells);
 
-  Return<void> setLocationUpdatesResponse(const RadioResponseInfo& info);
+    Return<void> setLocationUpdatesResponse(const RadioResponseInfo& info);
 
-  Return<void> setCdmaSubscriptionSourceResponse(const RadioResponseInfo& info);
+    Return<void> setCdmaSubscriptionSourceResponse(const RadioResponseInfo& info);
 
-  Return<void> setCdmaRoamingPreferenceResponse(const RadioResponseInfo& info);
+    Return<void> setCdmaRoamingPreferenceResponse(const RadioResponseInfo& info);
 
-  Return<void> getCdmaRoamingPreferenceResponse(const RadioResponseInfo& info,
-                                                CdmaRoamingType type);
+    Return<void> getCdmaRoamingPreferenceResponse(const RadioResponseInfo& info,
+                                                  CdmaRoamingType type);
 
-  Return<void> setTTYModeResponse(const RadioResponseInfo& info);
+    Return<void> setTTYModeResponse(const RadioResponseInfo& info);
 
-  Return<void> getTTYModeResponse(const RadioResponseInfo& info, TtyMode mode);
+    Return<void> getTTYModeResponse(const RadioResponseInfo& info, TtyMode mode);
 
-  Return<void> setPreferredVoicePrivacyResponse(const RadioResponseInfo& info);
+    Return<void> setPreferredVoicePrivacyResponse(const RadioResponseInfo& info);
 
-  Return<void> getPreferredVoicePrivacyResponse(const RadioResponseInfo& info,
-                                                bool enable);
+    Return<void> getPreferredVoicePrivacyResponse(const RadioResponseInfo& info, bool enable);
 
-  Return<void> sendCDMAFeatureCodeResponse(const RadioResponseInfo& info);
+    Return<void> sendCDMAFeatureCodeResponse(const RadioResponseInfo& info);
 
-  Return<void> sendBurstDtmfResponse(const RadioResponseInfo& info);
+    Return<void> sendBurstDtmfResponse(const RadioResponseInfo& info);
 
-  Return<void> sendCdmaSmsResponse(const RadioResponseInfo& info,
-                                   const SendSmsResult& sms);
+    Return<void> sendCdmaSmsResponse(const RadioResponseInfo& info, const SendSmsResult& sms);
 
-  Return<void> acknowledgeLastIncomingCdmaSmsResponse(
-      const RadioResponseInfo& info);
+    Return<void> acknowledgeLastIncomingCdmaSmsResponse(const RadioResponseInfo& info);
 
-  Return<void> getGsmBroadcastConfigResponse(
-      const RadioResponseInfo& info,
-      const ::android::hardware::hidl_vec<GsmBroadcastSmsConfigInfo>& configs);
+    Return<void> getGsmBroadcastConfigResponse(
+        const RadioResponseInfo& info,
+        const ::android::hardware::hidl_vec<GsmBroadcastSmsConfigInfo>& configs);
 
-  Return<void> setGsmBroadcastConfigResponse(const RadioResponseInfo& info);
+    Return<void> setGsmBroadcastConfigResponse(const RadioResponseInfo& info);
 
-  Return<void> setGsmBroadcastActivationResponse(const RadioResponseInfo& info);
+    Return<void> setGsmBroadcastActivationResponse(const RadioResponseInfo& info);
 
-  Return<void> getCdmaBroadcastConfigResponse(
-      const RadioResponseInfo& info,
-      const ::android::hardware::hidl_vec<CdmaBroadcastSmsConfigInfo>& configs);
+    Return<void> getCdmaBroadcastConfigResponse(
+        const RadioResponseInfo& info,
+        const ::android::hardware::hidl_vec<CdmaBroadcastSmsConfigInfo>& configs);
 
-  Return<void> setCdmaBroadcastConfigResponse(const RadioResponseInfo& info);
+    Return<void> setCdmaBroadcastConfigResponse(const RadioResponseInfo& info);
 
-  Return<void> setCdmaBroadcastActivationResponse(
-      const RadioResponseInfo& info);
+    Return<void> setCdmaBroadcastActivationResponse(const RadioResponseInfo& info);
 
-  Return<void> getCDMASubscriptionResponse(
-      const RadioResponseInfo& info,
-      const ::android::hardware::hidl_string& mdn,
-      const ::android::hardware::hidl_string& hSid,
-      const ::android::hardware::hidl_string& hNid,
-      const ::android::hardware::hidl_string& min,
-      const ::android::hardware::hidl_string& prl);
+    Return<void> getCDMASubscriptionResponse(const RadioResponseInfo& info,
+                                             const ::android::hardware::hidl_string& mdn,
+                                             const ::android::hardware::hidl_string& hSid,
+                                             const ::android::hardware::hidl_string& hNid,
+                                             const ::android::hardware::hidl_string& min,
+                                             const ::android::hardware::hidl_string& prl);
 
-  Return<void> writeSmsToRuimResponse(const RadioResponseInfo& info,
-                                      uint32_t index);
+    Return<void> writeSmsToRuimResponse(const RadioResponseInfo& info, uint32_t index);
 
-  Return<void> deleteSmsOnRuimResponse(const RadioResponseInfo& info);
+    Return<void> deleteSmsOnRuimResponse(const RadioResponseInfo& info);
 
-  Return<void> getDeviceIdentityResponse(
-      const RadioResponseInfo& info,
-      const ::android::hardware::hidl_string& imei,
-      const ::android::hardware::hidl_string& imeisv,
-      const ::android::hardware::hidl_string& esn,
-      const ::android::hardware::hidl_string& meid);
+    Return<void> getDeviceIdentityResponse(const RadioResponseInfo& info,
+                                           const ::android::hardware::hidl_string& imei,
+                                           const ::android::hardware::hidl_string& imeisv,
+                                           const ::android::hardware::hidl_string& esn,
+                                           const ::android::hardware::hidl_string& meid);
 
-  Return<void> exitEmergencyCallbackModeResponse(const RadioResponseInfo& info);
+    Return<void> exitEmergencyCallbackModeResponse(const RadioResponseInfo& info);
 
-  Return<void> getSmscAddressResponse(
-      const RadioResponseInfo& info,
-      const ::android::hardware::hidl_string& smsc);
+    Return<void> getSmscAddressResponse(const RadioResponseInfo& info,
+                                        const ::android::hardware::hidl_string& smsc);
 
-  Return<void> setSmscAddressResponse(const RadioResponseInfo& info);
+    Return<void> setSmscAddressResponse(const RadioResponseInfo& info);
 
-  Return<void> reportSmsMemoryStatusResponse(const RadioResponseInfo& info);
+    Return<void> reportSmsMemoryStatusResponse(const RadioResponseInfo& info);
 
-  Return<void> reportStkServiceIsRunningResponse(const RadioResponseInfo& info);
+    Return<void> reportStkServiceIsRunningResponse(const RadioResponseInfo& info);
 
-  Return<void> getCdmaSubscriptionSourceResponse(const RadioResponseInfo& info,
-                                                 CdmaSubscriptionSource source);
+    Return<void> getCdmaSubscriptionSourceResponse(const RadioResponseInfo& info,
+                                                   CdmaSubscriptionSource source);
 
-  Return<void> requestIsimAuthenticationResponse(
-      const RadioResponseInfo& info,
-      const ::android::hardware::hidl_string& response);
+    Return<void> requestIsimAuthenticationResponse(
+        const RadioResponseInfo& info, const ::android::hardware::hidl_string& response);
 
-  Return<void> acknowledgeIncomingGsmSmsWithPduResponse(
-      const RadioResponseInfo& info);
+    Return<void> acknowledgeIncomingGsmSmsWithPduResponse(const RadioResponseInfo& info);
 
-  Return<void> sendEnvelopeWithStatusResponse(const RadioResponseInfo& info,
-                                              const IccIoResult& iccIo);
+    Return<void> sendEnvelopeWithStatusResponse(const RadioResponseInfo& info,
+                                                const IccIoResult& iccIo);
 
-  Return<void> getVoiceRadioTechnologyResponse(const RadioResponseInfo& info,
-                                               RadioTechnology rat);
+    Return<void> getVoiceRadioTechnologyResponse(const RadioResponseInfo& info,
+                                                 RadioTechnology rat);
 
-  Return<void> getCellInfoListResponse(
-      const RadioResponseInfo& info,
-      const ::android::hardware::hidl_vec<CellInfo>& cellInfo);
+    Return<void> getCellInfoListResponse(const RadioResponseInfo& info,
+                                         const ::android::hardware::hidl_vec<CellInfo>& cellInfo);
 
-  Return<void> setCellInfoListRateResponse(const RadioResponseInfo& info);
+    Return<void> setCellInfoListRateResponse(const RadioResponseInfo& info);
 
-  Return<void> setInitialAttachApnResponse(const RadioResponseInfo& info);
+    Return<void> setInitialAttachApnResponse(const RadioResponseInfo& info);
 
-  Return<void> getImsRegistrationStateResponse(const RadioResponseInfo& info,
-                                               bool isRegistered,
-                                               RadioTechnologyFamily ratFamily);
+    Return<void> getImsRegistrationStateResponse(const RadioResponseInfo& info, bool isRegistered,
+                                                 RadioTechnologyFamily ratFamily);
 
-  Return<void> sendImsSmsResponse(const RadioResponseInfo& info,
-                                  const SendSmsResult& sms);
+    Return<void> sendImsSmsResponse(const RadioResponseInfo& info, const SendSmsResult& sms);
 
-  Return<void> iccTransmitApduBasicChannelResponse(
-      const RadioResponseInfo& info, const IccIoResult& result);
+    Return<void> iccTransmitApduBasicChannelResponse(const RadioResponseInfo& info,
+                                                     const IccIoResult& result);
 
-  Return<void> iccOpenLogicalChannelResponse(
-      const RadioResponseInfo& info, int32_t channelId,
-      const ::android::hardware::hidl_vec<int8_t>& selectResponse);
+    Return<void> iccOpenLogicalChannelResponse(
+        const RadioResponseInfo& info, int32_t channelId,
+        const ::android::hardware::hidl_vec<int8_t>& selectResponse);
 
-  Return<void> iccCloseLogicalChannelResponse(const RadioResponseInfo& info);
+    Return<void> iccCloseLogicalChannelResponse(const RadioResponseInfo& info);
 
-  Return<void> iccTransmitApduLogicalChannelResponse(
-      const RadioResponseInfo& info, const IccIoResult& result);
+    Return<void> iccTransmitApduLogicalChannelResponse(const RadioResponseInfo& info,
+                                                       const IccIoResult& result);
 
-  Return<void> nvReadItemResponse(
-      const RadioResponseInfo& info,
-      const ::android::hardware::hidl_string& result);
+    Return<void> nvReadItemResponse(const RadioResponseInfo& info,
+                                    const ::android::hardware::hidl_string& result);
 
-  Return<void> nvWriteItemResponse(const RadioResponseInfo& info);
+    Return<void> nvWriteItemResponse(const RadioResponseInfo& info);
 
-  Return<void> nvWriteCdmaPrlResponse(const RadioResponseInfo& info);
+    Return<void> nvWriteCdmaPrlResponse(const RadioResponseInfo& info);
 
-  Return<void> nvResetConfigResponse(const RadioResponseInfo& info);
+    Return<void> nvResetConfigResponse(const RadioResponseInfo& info);
 
-  Return<void> setUiccSubscriptionResponse(const RadioResponseInfo& info);
+    Return<void> setUiccSubscriptionResponse(const RadioResponseInfo& info);
 
-  Return<void> setDataAllowedResponse(const RadioResponseInfo& info);
+    Return<void> setDataAllowedResponse(const RadioResponseInfo& info);
 
-  Return<void> getHardwareConfigResponse(
-      const RadioResponseInfo& info,
-      const ::android::hardware::hidl_vec<HardwareConfig>& config);
+    Return<void> getHardwareConfigResponse(
+        const RadioResponseInfo& info, const ::android::hardware::hidl_vec<HardwareConfig>& config);
 
-  Return<void> requestIccSimAuthenticationResponse(
-      const RadioResponseInfo& info, const IccIoResult& result);
+    Return<void> requestIccSimAuthenticationResponse(const RadioResponseInfo& info,
+                                                     const IccIoResult& result);
 
-  Return<void> setDataProfileResponse(const RadioResponseInfo& info);
+    Return<void> setDataProfileResponse(const RadioResponseInfo& info);
 
-  Return<void> requestShutdownResponse(const RadioResponseInfo& info);
+    Return<void> requestShutdownResponse(const RadioResponseInfo& info);
 
-  Return<void> getRadioCapabilityResponse(const RadioResponseInfo& info,
-                                          const RadioCapability& rc);
+    Return<void> getRadioCapabilityResponse(const RadioResponseInfo& info,
+                                            const RadioCapability& rc);
 
-  Return<void> setRadioCapabilityResponse(const RadioResponseInfo& info,
-                                          const RadioCapability& rc);
+    Return<void> setRadioCapabilityResponse(const RadioResponseInfo& info,
+                                            const RadioCapability& rc);
 
-  Return<void> startLceServiceResponse(const RadioResponseInfo& info,
-                                       const LceStatusInfo& statusInfo);
+    Return<void> startLceServiceResponse(const RadioResponseInfo& info,
+                                         const LceStatusInfo& statusInfo);
 
-  Return<void> stopLceServiceResponse(const RadioResponseInfo& info,
-                                      const LceStatusInfo& statusInfo);
+    Return<void> stopLceServiceResponse(const RadioResponseInfo& info,
+                                        const LceStatusInfo& statusInfo);
 
-  Return<void> pullLceDataResponse(const RadioResponseInfo& info,
-                                   const LceDataInfo& lceInfo);
+    Return<void> pullLceDataResponse(const RadioResponseInfo& info, const LceDataInfo& lceInfo);
 
-  Return<void> getModemActivityInfoResponse(
-      const RadioResponseInfo& info, const ActivityStatsInfo& activityInfo);
+    Return<void> getModemActivityInfoResponse(const RadioResponseInfo& info,
+                                              const ActivityStatsInfo& activityInfo);
 
-  Return<void> setAllowedCarriersResponse(const RadioResponseInfo& info,
-                                          int32_t numAllowed);
+    Return<void> setAllowedCarriersResponse(const RadioResponseInfo& info, int32_t numAllowed);
 
-  Return<void> getAllowedCarriersResponse(const RadioResponseInfo& info,
-                                          bool allAllowed,
-                                          const CarrierRestrictions& carriers);
+    Return<void> getAllowedCarriersResponse(const RadioResponseInfo& info, bool allAllowed,
+                                            const CarrierRestrictions& carriers);
 
-  Return<void> sendDeviceStateResponse(const RadioResponseInfo& info);
+    Return<void> sendDeviceStateResponse(const RadioResponseInfo& info);
 
-  Return<void> setIndicationFilterResponse(const RadioResponseInfo& info);
+    Return<void> setIndicationFilterResponse(const RadioResponseInfo& info);
 
-  Return<void> setSimCardPowerResponse(const RadioResponseInfo& info);
+    Return<void> setSimCardPowerResponse(const RadioResponseInfo& info);
 
-  Return<void> acknowledgeRequest(int32_t serial);
+    Return<void> acknowledgeRequest(int32_t serial);
 };
 
 // The main test class for Radio HIDL.
 class RadioHidlTest : public ::testing::VtsHalHidlTargetTestBase {
- private:
-  std::mutex mtx;
-  std::condition_variable cv;
-  int count;
+   private:
+    std::mutex mtx;
+    std::condition_variable cv;
+    int count;
 
- public:
-  virtual void SetUp() override;
+   public:
+    virtual void SetUp() override;
 
-  virtual void TearDown() override;
+    virtual void TearDown() override;
 
-  /* Used as a mechanism to inform the test about data/event callback */
-  void notify();
+    /* Used as a mechanism to inform the test about data/event callback */
+    void notify();
 
-  /* Test code calls this function to wait for response */
-  std::cv_status wait();
+    /* Test code calls this function to wait for response */
+    std::cv_status wait();
 
-  /* Used for checking General Errors */
-  bool CheckGeneralError();
+    /* Used for checking General Errors */
+    bool CheckGeneralError();
 
-  /* Used for checking OEM Errors */
-  bool CheckOEMError();
+    /* Used for checking OEM Errors */
+    bool CheckOEMError();
 
-  sp<IRadio> radio;
-  sp<RadioResponse> radioRsp;
-  sp<IRadioIndication> radioInd;
+    sp<IRadio> radio;
+    sp<RadioResponse> radioRsp;
+    sp<IRadioIndication> radioInd;
 };
 
 // A class for test environment setup
 class RadioHidlEnvironment : public ::testing::Environment {
- public:
-  virtual void SetUp() {}
-  virtual void TearDown() {}
+   public:
+    virtual void SetUp() {}
+    virtual void TearDown() {}
 };
\ No newline at end of file
diff --git a/radio/1.0/vts/functional/radio_hidl_hal_voice.cpp b/radio/1.0/vts/functional/radio_hidl_hal_voice.cpp
index b96269a..95d00e3 100644
--- a/radio/1.0/vts/functional/radio_hidl_hal_voice.cpp
+++ b/radio/1.0/vts/functional/radio_hidl_hal_voice.cpp
@@ -20,477 +20,467 @@
  * Test IRadio.getCurrentCalls() for the response returned.
  */
 TEST_F(RadioHidlTest, getCurrentCalls) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->getCurrentCalls(serial);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->getCurrentCalls(serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
+    }
 }
 
 /*
  * Test IRadio.dial() for the response returned.
  */
 TEST_F(RadioHidlTest, dial) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  Dial dialInfo;
-  memset(&dialInfo, 0, sizeof(dialInfo));
-  dialInfo.address = hidl_string("123456789");
+    Dial dialInfo;
+    memset(&dialInfo, 0, sizeof(dialInfo));
+    dialInfo.address = hidl_string("123456789");
 
-  radio->dial(serial, dialInfo);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->dial(serial, dialInfo);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_STATE ||
-                  radioRsp->rspInfo.error == RadioError::MODEM_ERR ||
-                  radioRsp->rspInfo.error == RadioError::FDN_CHECK_FAILURE ||
-                  radioRsp->rspInfo.error == RadioError::NO_SUBSCRIPTION ||
-                  radioRsp->rspInfo.error == RadioError::NO_NETWORK_FOUND ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_CALL_ID ||
-                  radioRsp->rspInfo.error == RadioError::DEVICE_IN_USE ||
-                  radioRsp->rspInfo.error == RadioError::MODE_NOT_SUPPORTED ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_MODEM_STATE ||
-                  radioRsp->rspInfo.error == RadioError::CANCELLED);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_STATE ||
+                    radioRsp->rspInfo.error == RadioError::MODEM_ERR ||
+                    radioRsp->rspInfo.error == RadioError::FDN_CHECK_FAILURE ||
+                    radioRsp->rspInfo.error == RadioError::NO_SUBSCRIPTION ||
+                    radioRsp->rspInfo.error == RadioError::NO_NETWORK_FOUND ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_CALL_ID ||
+                    radioRsp->rspInfo.error == RadioError::DEVICE_IN_USE ||
+                    radioRsp->rspInfo.error == RadioError::MODE_NOT_SUPPORTED ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_MODEM_STATE ||
+                    radioRsp->rspInfo.error == RadioError::CANCELLED);
+    }
 }
 
 /*
  * Test IRadio.hangup() for the response returned.
  */
 TEST_F(RadioHidlTest, hangup) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->hangup(serial, 1);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->hangup(serial, 1);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_STATE ||
-                  radioRsp->rspInfo.error == RadioError::MODEM_ERR);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_STATE ||
+                    radioRsp->rspInfo.error == RadioError::MODEM_ERR);
+    }
 }
 
 /*
  * Test IRadio.hangupWaitingOrBackground() for the response returned.
  */
 TEST_F(RadioHidlTest, hangupWaitingOrBackground) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->hangupWaitingOrBackground(serial);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->hangupWaitingOrBackground(serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_STATE ||
-                  radioRsp->rspInfo.error == RadioError::MODEM_ERR);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() || radioRsp->rspInfo.error == RadioError::INVALID_STATE ||
+                    radioRsp->rspInfo.error == RadioError::MODEM_ERR);
+    }
 }
 
 /*
  * Test IRadio.hangupForegroundResumeBackground() for the response returned.
  */
 TEST_F(RadioHidlTest, hangupForegroundResumeBackground) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->hangupForegroundResumeBackground(serial);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->hangupForegroundResumeBackground(serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_STATE ||
-                  radioRsp->rspInfo.error == RadioError::MODEM_ERR);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() || radioRsp->rspInfo.error == RadioError::INVALID_STATE ||
+                    radioRsp->rspInfo.error == RadioError::MODEM_ERR);
+    }
 }
 
 /*
  * Test IRadio.switchWaitingOrHoldingAndActive() for the response returned.
  */
 TEST_F(RadioHidlTest, switchWaitingOrHoldingAndActive) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->switchWaitingOrHoldingAndActive(serial);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->switchWaitingOrHoldingAndActive(serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_STATE ||
-                  radioRsp->rspInfo.error == RadioError::MODEM_ERR);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() || radioRsp->rspInfo.error == RadioError::INVALID_STATE ||
+                    radioRsp->rspInfo.error == RadioError::MODEM_ERR);
+    }
 }
 
 /*
  * Test IRadio.conference() for the response returned.
  */
 TEST_F(RadioHidlTest, conference) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->conference(serial);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->conference(serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_STATE ||
-                  radioRsp->rspInfo.error == RadioError::MODEM_ERR);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() || radioRsp->rspInfo.error == RadioError::INVALID_STATE ||
+                    radioRsp->rspInfo.error == RadioError::MODEM_ERR);
+    }
 }
 
 /*
  * Test IRadio.rejectCall() for the response returned.
  */
 TEST_F(RadioHidlTest, rejectCall) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->rejectCall(serial);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->rejectCall(serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_STATE ||
-                  radioRsp->rspInfo.error == RadioError::MODEM_ERR);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() || radioRsp->rspInfo.error == RadioError::INVALID_STATE ||
+                    radioRsp->rspInfo.error == RadioError::MODEM_ERR);
+    }
 }
 
 /*
  * Test IRadio.getLastCallFailCause() for the response returned.
  */
 TEST_F(RadioHidlTest, getLastCallFailCause) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->getLastCallFailCause(serial);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->getLastCallFailCause(serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::NONE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() || radioRsp->rspInfo.error == RadioError::NONE);
+    }
 }
 
 /*
  * Test IRadio.sendUssd() for the response returned.
  */
 TEST_F(RadioHidlTest, sendUssd) {
-  int serial = 1;
-  radio->sendUssd(serial, hidl_string("test"));
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    int serial = GetRandomSerialNumber();
+    radio->sendUssd(serial, hidl_string("test"));
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_STATE ||
-                  radioRsp->rspInfo.error == RadioError::MODEM_ERR);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_STATE ||
+                    radioRsp->rspInfo.error == RadioError::MODEM_ERR);
+    }
 }
 
 /*
  * Test IRadio.cancelPendingUssd() for the response returned.
  */
 TEST_F(RadioHidlTest, cancelPendingUssd) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->cancelPendingUssd(serial);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->cancelPendingUssd(serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_STATE ||
-                  radioRsp->rspInfo.error == RadioError::MODEM_ERR);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() || radioRsp->rspInfo.error == RadioError::INVALID_STATE ||
+                    radioRsp->rspInfo.error == RadioError::MODEM_ERR);
+    }
 }
 
 /*
  * Test IRadio.getCallForwardStatus() for the response returned.
  */
 TEST_F(RadioHidlTest, getCallForwardStatus) {
-  int serial = 1;
-  CallForwardInfo callInfo;
-  memset(&callInfo, 0, sizeof(callInfo));
-  callInfo.number = hidl_string();
+    int serial = GetRandomSerialNumber();
+    CallForwardInfo callInfo;
+    memset(&callInfo, 0, sizeof(callInfo));
+    callInfo.number = hidl_string();
 
-  radio->getCallForwardStatus(serial, callInfo);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->getCallForwardStatus(serial, callInfo);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_STATE ||
-                  radioRsp->rspInfo.error == RadioError::MODEM_ERR);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_STATE ||
+                    radioRsp->rspInfo.error == RadioError::MODEM_ERR);
+    }
 }
 
 /*
  * Test IRadio.setCallForward() for the response returned.
  */
 TEST_F(RadioHidlTest, setCallForward) {
-  int serial = 1;
-  CallForwardInfo callInfo;
-  memset(&callInfo, 0, sizeof(callInfo));
-  callInfo.number = hidl_string();
+    int serial = GetRandomSerialNumber();
+    CallForwardInfo callInfo;
+    memset(&callInfo, 0, sizeof(callInfo));
+    callInfo.number = hidl_string();
 
-  radio->setCallForward(serial, callInfo);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->setCallForward(serial, callInfo);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_STATE ||
-                  radioRsp->rspInfo.error == RadioError::MODEM_ERR);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_STATE ||
+                    radioRsp->rspInfo.error == RadioError::MODEM_ERR);
+    }
 }
 
 /*
  * Test IRadio.getCallWaiting() for the response returned.
  */
 TEST_F(RadioHidlTest, getCallWaiting) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->getCallWaiting(serial, 1);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->getCallWaiting(serial, 1);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
-                  radioRsp->rspInfo.error == RadioError::NONE ||
-                  radioRsp->rspInfo.error == RadioError::MODEM_ERR);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
+                    radioRsp->rspInfo.error == RadioError::NONE ||
+                    radioRsp->rspInfo.error == RadioError::MODEM_ERR);
+    }
 }
 
 /*
  * Test IRadio.setCallWaiting() for the response returned.
  */
 TEST_F(RadioHidlTest, setCallWaiting) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->setCallWaiting(serial, true, 1);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->setCallWaiting(serial, true, 1);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_STATE ||
-                  radioRsp->rspInfo.error == RadioError::MODEM_ERR);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_STATE ||
+                    radioRsp->rspInfo.error == RadioError::MODEM_ERR);
+    }
 }
 
 /*
  * Test IRadio.acceptCall() for the response returned.
  */
 TEST_F(RadioHidlTest, acceptCall) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->acceptCall(serial);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->acceptCall(serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_STATE ||
-                  radioRsp->rspInfo.error == RadioError::MODEM_ERR);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() || radioRsp->rspInfo.error == RadioError::INVALID_STATE ||
+                    radioRsp->rspInfo.error == RadioError::MODEM_ERR);
+    }
 }
 
 /*
  * Test IRadio.separateConnection() for the response returned.
  */
 TEST_F(RadioHidlTest, separateConnection) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->separateConnection(serial, 1);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->separateConnection(serial, 1);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_STATE ||
-                  radioRsp->rspInfo.error == RadioError::MODEM_ERR);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_STATE ||
+                    radioRsp->rspInfo.error == RadioError::MODEM_ERR);
+    }
 }
 
 /*
  * Test IRadio.explicitCallTransfer() for the response returned.
  */
 TEST_F(RadioHidlTest, explicitCallTransfer) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->explicitCallTransfer(serial);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->explicitCallTransfer(serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_STATE ||
-                  radioRsp->rspInfo.error == RadioError::MODEM_ERR);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() || radioRsp->rspInfo.error == RadioError::INVALID_STATE ||
+                    radioRsp->rspInfo.error == RadioError::MODEM_ERR);
+    }
 }
 
 /*
  * Test IRadio.sendCDMAFeatureCode() for the response returned.
  */
 TEST_F(RadioHidlTest, sendCDMAFeatureCode) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->sendCDMAFeatureCode(serial, hidl_string());
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->sendCDMAFeatureCode(serial, hidl_string());
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
-                  radioRsp->rspInfo.error == RadioError::NONE ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_CALL_ID ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_MODEM_STATE ||
-                  radioRsp->rspInfo.error == RadioError::MODEM_ERR);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
+                    radioRsp->rspInfo.error == RadioError::NONE ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_CALL_ID ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_MODEM_STATE ||
+                    radioRsp->rspInfo.error == RadioError::MODEM_ERR);
+    }
 }
 
 /*
  * Test IRadio.sendDtmf() for the response returned.
  */
 TEST_F(RadioHidlTest, sendDtmf) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->sendDtmf(serial, "1");
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->sendDtmf(serial, "1");
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
-                  radioRsp->rspInfo.error == RadioError::NONE ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_CALL_ID ||
-                  radioRsp->rspInfo.error == RadioError::MODEM_ERR);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
+                    radioRsp->rspInfo.error == RadioError::NONE ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_CALL_ID ||
+                    radioRsp->rspInfo.error == RadioError::MODEM_ERR);
+    }
 }
 
 /*
  * Test IRadio.startDtmf() for the response returned.
  */
 TEST_F(RadioHidlTest, startDtmf) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->startDtmf(serial, "1");
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->startDtmf(serial, "1");
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
-                  radioRsp->rspInfo.error == RadioError::NONE ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_CALL_ID ||
-                  radioRsp->rspInfo.error == RadioError::MODEM_ERR);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
+                    radioRsp->rspInfo.error == RadioError::NONE ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_CALL_ID ||
+                    radioRsp->rspInfo.error == RadioError::MODEM_ERR);
+    }
 }
 
 /*
  * Test IRadio.stopDtmf() for the response returned.
  */
 TEST_F(RadioHidlTest, stopDtmf) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->stopDtmf(serial);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->stopDtmf(serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::NONE ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_CALL_ID ||
-                  radioRsp->rspInfo.error == RadioError::MODEM_ERR);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() || radioRsp->rspInfo.error == RadioError::NONE ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_CALL_ID ||
+                    radioRsp->rspInfo.error == RadioError::MODEM_ERR);
+    }
 }
 
 /*
  * Test IRadio.setMute() for the response returned.
  */
 TEST_F(RadioHidlTest, setMute) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->setMute(serial, true);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->setMute(serial, true);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
-                  radioRsp->rspInfo.error == RadioError::NONE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
+                    radioRsp->rspInfo.error == RadioError::NONE);
+    }
 }
 
 /*
  * Test IRadio.getMute() for the response returned.
  */
 TEST_F(RadioHidlTest, getMute) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->getMute(serial);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->getMute(serial);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-    ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(radioRsp->rspInfo.error == RadioError::NONE);
+    }
 }
 
 /*
  * Test IRadio.sendBurstDtmf() for the response returned.
  */
 TEST_F(RadioHidlTest, sendBurstDtmf) {
-  int serial = 1;
+    int serial = GetRandomSerialNumber();
 
-  radio->sendBurstDtmf(serial, "1", 0, 0);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
-  EXPECT_EQ(serial, radioRsp->rspInfo.serial);
+    radio->sendBurstDtmf(serial, "1", 0, 0);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp->rspInfo.type);
+    EXPECT_EQ(serial, radioRsp->rspInfo.serial);
 
-  if (cardStatus.cardState == CardState::ABSENT) {
-      ASSERT_TRUE(CheckGeneralError() ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
-                  radioRsp->rspInfo.error == RadioError::INVALID_STATE ||
-                  radioRsp->rspInfo.error == RadioError::MODEM_ERR);
-  }
+    if (cardStatus.cardState == CardState::ABSENT) {
+        ASSERT_TRUE(CheckGeneralError() ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_ARGUMENTS ||
+                    radioRsp->rspInfo.error == RadioError::INVALID_STATE ||
+                    radioRsp->rspInfo.error == RadioError::MODEM_ERR);
+    }
 }
\ No newline at end of file
diff --git a/radio/1.0/vts/functional/radio_response.cpp b/radio/1.0/vts/functional/radio_response.cpp
index 22c20a5..ef887eb 100644
--- a/radio/1.0/vts/functional/radio_response.cpp
+++ b/radio/1.0/vts/functional/radio_response.cpp
@@ -20,953 +20,884 @@
 
 RadioResponse::RadioResponse(RadioHidlTest& parent) : parent(parent) {}
 
-Return<void> RadioResponse::getIccCardStatusResponse(
-    const RadioResponseInfo& info, const CardStatus& card_status) {
-  rspInfo = info;
-  cardStatus = card_status;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::getIccCardStatusResponse(const RadioResponseInfo& info,
+                                                     const CardStatus& card_status) {
+    rspInfo = info;
+    cardStatus = card_status;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::supplyIccPinForAppResponse(
-    const RadioResponseInfo& info, int32_t /*remainingRetries*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::supplyIccPinForAppResponse(const RadioResponseInfo& info,
+                                                       int32_t /*remainingRetries*/) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::supplyIccPukForAppResponse(
-    const RadioResponseInfo& info, int32_t /*remainingRetries*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::supplyIccPukForAppResponse(const RadioResponseInfo& info,
+                                                       int32_t /*remainingRetries*/) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::supplyIccPin2ForAppResponse(
-    const RadioResponseInfo& info, int32_t /*remainingRetries*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::supplyIccPin2ForAppResponse(const RadioResponseInfo& info,
+                                                        int32_t /*remainingRetries*/) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::supplyIccPuk2ForAppResponse(
-    const RadioResponseInfo& info, int32_t /*remainingRetries*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::supplyIccPuk2ForAppResponse(const RadioResponseInfo& info,
+                                                        int32_t /*remainingRetries*/) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::changeIccPinForAppResponse(
-    const RadioResponseInfo& info, int32_t /*remainingRetries*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::changeIccPinForAppResponse(const RadioResponseInfo& info,
+                                                       int32_t /*remainingRetries*/) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::changeIccPin2ForAppResponse(
-    const RadioResponseInfo& info, int32_t /*remainingRetries*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::changeIccPin2ForAppResponse(const RadioResponseInfo& info,
+                                                        int32_t /*remainingRetries*/) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::supplyNetworkDepersonalizationResponse(
-    const RadioResponseInfo& info, int32_t /*remainingRetries*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::supplyNetworkDepersonalizationResponse(const RadioResponseInfo& info,
+                                                                   int32_t /*remainingRetries*/) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
 Return<void> RadioResponse::getCurrentCallsResponse(
-    const RadioResponseInfo& info,
-    const ::android::hardware::hidl_vec<Call>& /*calls*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+    const RadioResponseInfo& info, const ::android::hardware::hidl_vec<Call>& /*calls*/) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
 Return<void> RadioResponse::dialResponse(const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::getIMSIForAppResponse(
-    const RadioResponseInfo& info,
-    const ::android::hardware::hidl_string& imsi) {
-  rspInfo = info;
-  this->imsi = imsi;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::getIMSIForAppResponse(const RadioResponseInfo& info,
+                                                  const ::android::hardware::hidl_string& imsi) {
+    rspInfo = info;
+    this->imsi = imsi;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::hangupConnectionResponse(
-    const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::hangupConnectionResponse(const RadioResponseInfo& info) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::hangupWaitingOrBackgroundResponse(
-    const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::hangupWaitingOrBackgroundResponse(const RadioResponseInfo& info) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
 Return<void> RadioResponse::hangupForegroundResumeBackgroundResponse(
     const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::switchWaitingOrHoldingAndActiveResponse(
-    const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::switchWaitingOrHoldingAndActiveResponse(const RadioResponseInfo& info) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
 Return<void> RadioResponse::conferenceResponse(const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
 Return<void> RadioResponse::rejectCallResponse(const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
 Return<void> RadioResponse::getLastCallFailCauseResponse(
-    const RadioResponseInfo& info,
-    const LastCallFailCauseInfo& /*failCauseInfo*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+    const RadioResponseInfo& info, const LastCallFailCauseInfo& /*failCauseInfo*/) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::getSignalStrengthResponse(
-    const RadioResponseInfo& info, const SignalStrength& /*sig_strength*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::getSignalStrengthResponse(const RadioResponseInfo& info,
+                                                      const SignalStrength& /*sig_strength*/) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
 Return<void> RadioResponse::getVoiceRegistrationStateResponse(
-    const RadioResponseInfo& info,
-    const VoiceRegStateResult& /*voiceRegResponse*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+    const RadioResponseInfo& info, const VoiceRegStateResult& /*voiceRegResponse*/) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
 Return<void> RadioResponse::getDataRegistrationStateResponse(
-    const RadioResponseInfo& info,
-    const DataRegStateResult& /*dataRegResponse*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+    const RadioResponseInfo& info, const DataRegStateResult& /*dataRegResponse*/) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
 Return<void> RadioResponse::getOperatorResponse(
-    const RadioResponseInfo& info,
-    const ::android::hardware::hidl_string& /*longName*/,
+    const RadioResponseInfo& info, const ::android::hardware::hidl_string& /*longName*/,
     const ::android::hardware::hidl_string& /*shortName*/,
     const ::android::hardware::hidl_string& /*numeric*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::setRadioPowerResponse(
-    const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::setRadioPowerResponse(const RadioResponseInfo& info) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
 Return<void> RadioResponse::sendDtmfResponse(const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
 Return<void> RadioResponse::sendSmsResponse(const RadioResponseInfo& info,
                                             const SendSmsResult& sms) {
-  rspInfo = info;
-  sendSmsResult = sms;
-  parent.notify();
-  return Void();
+    rspInfo = info;
+    sendSmsResult = sms;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::sendSMSExpectMoreResponse(
-    const RadioResponseInfo& info, const SendSmsResult& sms) {
-  rspInfo = info;
-  sendSmsResult = sms;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::sendSMSExpectMoreResponse(const RadioResponseInfo& info,
+                                                      const SendSmsResult& sms) {
+    rspInfo = info;
+    sendSmsResult = sms;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::setupDataCallResponse(
-    const RadioResponseInfo& info, const SetupDataCallResult& /*dcResponse*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::setupDataCallResponse(const RadioResponseInfo& info,
+                                                  const SetupDataCallResult& /*dcResponse*/) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
 Return<void> RadioResponse::iccIOForAppResponse(const RadioResponseInfo& info,
                                                 const IccIoResult& iccIo) {
-  rspInfo = info;
-  this->iccIoResult = iccIo;
-  parent.notify();
-  return Void();
+    rspInfo = info;
+    this->iccIoResult = iccIo;
+    parent.notify();
+    return Void();
 }
 
 Return<void> RadioResponse::sendUssdResponse(const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::cancelPendingUssdResponse(
-    const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::cancelPendingUssdResponse(const RadioResponseInfo& info) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::getClirResponse(const RadioResponseInfo& info,
-                                            int32_t /*n*/, int32_t /*m*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::getClirResponse(const RadioResponseInfo& info, int32_t /*n*/,
+                                            int32_t /*m*/) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
 Return<void> RadioResponse::setClirResponse(const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
 Return<void> RadioResponse::getCallForwardStatusResponse(
-    const RadioResponseInfo& info,
-    const ::android::hardware::hidl_vec<CallForwardInfo>&
+    const RadioResponseInfo& info, const ::android::hardware::hidl_vec<CallForwardInfo>&
     /*callForwardInfos*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::setCallForwardResponse(
-    const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::setCallForwardResponse(const RadioResponseInfo& info) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::getCallWaitingResponse(
-    const RadioResponseInfo& info, bool /*enable*/, int32_t /*serviceClass*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::getCallWaitingResponse(const RadioResponseInfo& info, bool /*enable*/,
+                                                   int32_t /*serviceClass*/) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::setCallWaitingResponse(
-    const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::setCallWaitingResponse(const RadioResponseInfo& info) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::acknowledgeLastIncomingGsmSmsResponse(
-    const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::acknowledgeLastIncomingGsmSmsResponse(const RadioResponseInfo& info) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
 Return<void> RadioResponse::acceptCallResponse(const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::deactivateDataCallResponse(
-    const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::deactivateDataCallResponse(const RadioResponseInfo& info) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::getFacilityLockForAppResponse(
-    const RadioResponseInfo& info, int32_t /*response*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::getFacilityLockForAppResponse(const RadioResponseInfo& info,
+                                                          int32_t /*response*/) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::setFacilityLockForAppResponse(
-    const RadioResponseInfo& info, int32_t /*retry*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::setFacilityLockForAppResponse(const RadioResponseInfo& info,
+                                                          int32_t /*retry*/) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::setBarringPasswordResponse(
-    const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::setBarringPasswordResponse(const RadioResponseInfo& info) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::getNetworkSelectionModeResponse(
-    const RadioResponseInfo& info, bool /*manual*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::getNetworkSelectionModeResponse(const RadioResponseInfo& info,
+                                                            bool /*manual*/) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
 Return<void> RadioResponse::setNetworkSelectionModeAutomaticResponse(
     const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::setNetworkSelectionModeManualResponse(
-    const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::setNetworkSelectionModeManualResponse(const RadioResponseInfo& info) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
 Return<void> RadioResponse::getAvailableNetworksResponse(
     const RadioResponseInfo& info,
     const ::android::hardware::hidl_vec<OperatorInfo>& /*networkInfos*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
 Return<void> RadioResponse::startDtmfResponse(const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
 Return<void> RadioResponse::stopDtmfResponse(const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
 Return<void> RadioResponse::getBasebandVersionResponse(
-    const RadioResponseInfo& info,
-    const ::android::hardware::hidl_string& /*version*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+    const RadioResponseInfo& info, const ::android::hardware::hidl_string& /*version*/) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::separateConnectionResponse(
-    const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::separateConnectionResponse(const RadioResponseInfo& info) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
 Return<void> RadioResponse::setMuteResponse(const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::getMuteResponse(const RadioResponseInfo& info,
-                                            bool /*enable*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::getMuteResponse(const RadioResponseInfo& info, bool /*enable*/) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::getClipResponse(const RadioResponseInfo& info,
-                                            ClipStatus /*status*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::getClipResponse(const RadioResponseInfo& info, ClipStatus /*status*/) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
 Return<void> RadioResponse::getDataCallListResponse(
     const RadioResponseInfo& info,
     const ::android::hardware::hidl_vec<SetupDataCallResult>& /*dcResponse*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
 Return<void> RadioResponse::sendOemRilRequestRawResponse(
-    const RadioResponseInfo& /*info*/,
-    const ::android::hardware::hidl_vec<uint8_t>& /*data*/) {
-  return Void();
+    const RadioResponseInfo& /*info*/, const ::android::hardware::hidl_vec<uint8_t>& /*data*/) {
+    return Void();
 }
 
 Return<void> RadioResponse::sendOemRilRequestStringsResponse(
     const RadioResponseInfo& /*info*/,
-    const ::android::hardware::hidl_vec<
-        ::android::hardware::hidl_string>& /*data*/) {
-  return Void();
+    const ::android::hardware::hidl_vec< ::android::hardware::hidl_string>& /*data*/) {
+    return Void();
 }
 
-Return<void> RadioResponse::setSuppServiceNotificationsResponse(
-    const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::setSuppServiceNotificationsResponse(const RadioResponseInfo& info) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::writeSmsToSimResponse(const RadioResponseInfo& info,
-                                                  int32_t index) {
-  rspInfo = info;
-  writeSmsToSimIndex = index;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::writeSmsToSimResponse(const RadioResponseInfo& info, int32_t index) {
+    rspInfo = info;
+    writeSmsToSimIndex = index;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::deleteSmsOnSimResponse(
-    const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::deleteSmsOnSimResponse(const RadioResponseInfo& info) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
 Return<void> RadioResponse::setBandModeResponse(const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
 Return<void> RadioResponse::getAvailableBandModesResponse(
     const RadioResponseInfo& info,
     const ::android::hardware::hidl_vec<RadioBandMode>& /*bandModes*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
 Return<void> RadioResponse::sendEnvelopeResponse(
-    const RadioResponseInfo& info,
-    const ::android::hardware::hidl_string& /*commandResponse*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+    const RadioResponseInfo& info, const ::android::hardware::hidl_string& /*commandResponse*/) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::sendTerminalResponseToSimResponse(
-    const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::sendTerminalResponseToSimResponse(const RadioResponseInfo& info) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
 Return<void> RadioResponse::handleStkCallSetupRequestFromSimResponse(
     const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::explicitCallTransferResponse(
-    const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::explicitCallTransferResponse(const RadioResponseInfo& info) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::setPreferredNetworkTypeResponse(
-    const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::setPreferredNetworkTypeResponse(const RadioResponseInfo& info) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::getPreferredNetworkTypeResponse(
-    const RadioResponseInfo& info, PreferredNetworkType /*nw_type*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::getPreferredNetworkTypeResponse(const RadioResponseInfo& info,
+                                                            PreferredNetworkType /*nw_type*/) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
 Return<void> RadioResponse::getNeighboringCidsResponse(
     const RadioResponseInfo& info,
     const ::android::hardware::hidl_vec<NeighboringCell>& /*cells*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::setLocationUpdatesResponse(
-    const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::setLocationUpdatesResponse(const RadioResponseInfo& info) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::setCdmaSubscriptionSourceResponse(
-    const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::setCdmaSubscriptionSourceResponse(const RadioResponseInfo& info) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::setCdmaRoamingPreferenceResponse(
-    const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::setCdmaRoamingPreferenceResponse(const RadioResponseInfo& info) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::getCdmaRoamingPreferenceResponse(
-    const RadioResponseInfo& info, CdmaRoamingType /*type*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::getCdmaRoamingPreferenceResponse(const RadioResponseInfo& info,
+                                                             CdmaRoamingType /*type*/) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
 Return<void> RadioResponse::setTTYModeResponse(const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::getTTYModeResponse(const RadioResponseInfo& info,
-                                               TtyMode /*mode*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::getTTYModeResponse(const RadioResponseInfo& info, TtyMode /*mode*/) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::setPreferredVoicePrivacyResponse(
-    const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::setPreferredVoicePrivacyResponse(const RadioResponseInfo& info) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::getPreferredVoicePrivacyResponse(
-    const RadioResponseInfo& info, bool /*enable*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::getPreferredVoicePrivacyResponse(const RadioResponseInfo& info,
+                                                             bool /*enable*/) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::sendCDMAFeatureCodeResponse(
-    const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::sendCDMAFeatureCodeResponse(const RadioResponseInfo& info) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::sendBurstDtmfResponse(
-    const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::sendBurstDtmfResponse(const RadioResponseInfo& info) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
 Return<void> RadioResponse::sendCdmaSmsResponse(const RadioResponseInfo& info,
                                                 const SendSmsResult& sms) {
-  rspInfo = info;
-  sendSmsResult = sms;
-  parent.notify();
-  return Void();
+    rspInfo = info;
+    sendSmsResult = sms;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::acknowledgeLastIncomingCdmaSmsResponse(
-    const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::acknowledgeLastIncomingCdmaSmsResponse(const RadioResponseInfo& info) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
 Return<void> RadioResponse::getGsmBroadcastConfigResponse(
     const RadioResponseInfo& info,
-    const ::android::hardware::hidl_vec<
-        GsmBroadcastSmsConfigInfo>& /*configs*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+    const ::android::hardware::hidl_vec<GsmBroadcastSmsConfigInfo>& /*configs*/) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::setGsmBroadcastConfigResponse(
-    const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::setGsmBroadcastConfigResponse(const RadioResponseInfo& info) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::setGsmBroadcastActivationResponse(
-    const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::setGsmBroadcastActivationResponse(const RadioResponseInfo& info) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
 Return<void> RadioResponse::getCdmaBroadcastConfigResponse(
     const RadioResponseInfo& info,
-    const ::android::hardware::hidl_vec<
-        CdmaBroadcastSmsConfigInfo>& /*configs*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+    const ::android::hardware::hidl_vec<CdmaBroadcastSmsConfigInfo>& /*configs*/) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::setCdmaBroadcastConfigResponse(
-    const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::setCdmaBroadcastConfigResponse(const RadioResponseInfo& info) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::setCdmaBroadcastActivationResponse(
-    const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::setCdmaBroadcastActivationResponse(const RadioResponseInfo& info) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
 Return<void> RadioResponse::getCDMASubscriptionResponse(
-    const RadioResponseInfo& info,
-    const ::android::hardware::hidl_string& /*mdn*/,
+    const RadioResponseInfo& info, const ::android::hardware::hidl_string& /*mdn*/,
     const ::android::hardware::hidl_string& /*hSid*/,
     const ::android::hardware::hidl_string& /*hNid*/,
     const ::android::hardware::hidl_string& /*min*/,
     const ::android::hardware::hidl_string& /*prl*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::writeSmsToRuimResponse(
-    const RadioResponseInfo& info, uint32_t index) {
-  rspInfo = info;
-  writeSmsToRuimIndex = index;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::writeSmsToRuimResponse(const RadioResponseInfo& info, uint32_t index) {
+    rspInfo = info;
+    writeSmsToRuimIndex = index;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::deleteSmsOnRuimResponse(
-    const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::deleteSmsOnRuimResponse(const RadioResponseInfo& info) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
 Return<void> RadioResponse::getDeviceIdentityResponse(
-    const RadioResponseInfo& info,
-    const ::android::hardware::hidl_string& /*imei*/,
+    const RadioResponseInfo& info, const ::android::hardware::hidl_string& /*imei*/,
     const ::android::hardware::hidl_string& /*imeisv*/,
     const ::android::hardware::hidl_string& /*esn*/,
     const ::android::hardware::hidl_string& /*meid*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::exitEmergencyCallbackModeResponse(
-    const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::exitEmergencyCallbackModeResponse(const RadioResponseInfo& info) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::getSmscAddressResponse(
-    const RadioResponseInfo& info,
-    const ::android::hardware::hidl_string& smsc) {
-  rspInfo = info;
-  smscAddress = smsc;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::getSmscAddressResponse(const RadioResponseInfo& info,
+                                                   const ::android::hardware::hidl_string& smsc) {
+    rspInfo = info;
+    smscAddress = smsc;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::setSmscAddressResponse(
-    const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::setSmscAddressResponse(const RadioResponseInfo& info) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::reportSmsMemoryStatusResponse(
-    const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::reportSmsMemoryStatusResponse(const RadioResponseInfo& info) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::reportStkServiceIsRunningResponse(
-    const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::reportStkServiceIsRunningResponse(const RadioResponseInfo& info) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::getCdmaSubscriptionSourceResponse(
-    const RadioResponseInfo& info, CdmaSubscriptionSource /*source*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::getCdmaSubscriptionSourceResponse(const RadioResponseInfo& info,
+                                                              CdmaSubscriptionSource /*source*/) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
 Return<void> RadioResponse::requestIsimAuthenticationResponse(
-    const RadioResponseInfo& info,
-    const ::android::hardware::hidl_string& /*response*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+    const RadioResponseInfo& info, const ::android::hardware::hidl_string& /*response*/) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
 Return<void> RadioResponse::acknowledgeIncomingGsmSmsWithPduResponse(
     const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::sendEnvelopeWithStatusResponse(
-    const RadioResponseInfo& info, const IccIoResult& /*iccIo*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::sendEnvelopeWithStatusResponse(const RadioResponseInfo& info,
+                                                           const IccIoResult& /*iccIo*/) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::getVoiceRadioTechnologyResponse(
-    const RadioResponseInfo& info, RadioTechnology /*rat*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::getVoiceRadioTechnologyResponse(const RadioResponseInfo& info,
+                                                            RadioTechnology /*rat*/) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
 Return<void> RadioResponse::getCellInfoListResponse(
-    const RadioResponseInfo& info,
-    const ::android::hardware::hidl_vec<CellInfo>& /*cellInfo*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+    const RadioResponseInfo& info, const ::android::hardware::hidl_vec<CellInfo>& /*cellInfo*/) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::setCellInfoListRateResponse(
-    const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::setCellInfoListRateResponse(const RadioResponseInfo& info) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::setInitialAttachApnResponse(
-    const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::setInitialAttachApnResponse(const RadioResponseInfo& info) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::getImsRegistrationStateResponse(
-    const RadioResponseInfo& info, bool /*isRegistered*/,
-    RadioTechnologyFamily /*ratFamily*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::getImsRegistrationStateResponse(const RadioResponseInfo& info,
+                                                            bool /*isRegistered*/,
+                                                            RadioTechnologyFamily /*ratFamily*/) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
 Return<void> RadioResponse::sendImsSmsResponse(const RadioResponseInfo& info,
                                                const SendSmsResult& sms) {
-  rspInfo = info;
-  sendSmsResult = sms;
-  parent.notify();
-  return Void();
+    rspInfo = info;
+    sendSmsResult = sms;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::iccTransmitApduBasicChannelResponse(
-    const RadioResponseInfo& info, const IccIoResult& result) {
-  rspInfo = info;
-  this->iccIoResult = result;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::iccTransmitApduBasicChannelResponse(const RadioResponseInfo& info,
+                                                                const IccIoResult& result) {
+    rspInfo = info;
+    this->iccIoResult = result;
+    parent.notify();
+    return Void();
 }
 
 Return<void> RadioResponse::iccOpenLogicalChannelResponse(
     const RadioResponseInfo& info, int32_t channelId,
     const ::android::hardware::hidl_vec<int8_t>& /*selectResponse*/) {
-  rspInfo = info;
-  this->channelId = channelId;
-  parent.notify();
-  return Void();
+    rspInfo = info;
+    this->channelId = channelId;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::iccCloseLogicalChannelResponse(
-    const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::iccCloseLogicalChannelResponse(const RadioResponseInfo& info) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::iccTransmitApduLogicalChannelResponse(
-    const RadioResponseInfo& info, const IccIoResult& result) {
-  rspInfo = info;
-  this->iccIoResult = result;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::iccTransmitApduLogicalChannelResponse(const RadioResponseInfo& info,
+                                                                  const IccIoResult& result) {
+    rspInfo = info;
+    this->iccIoResult = result;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::nvReadItemResponse(
-    const RadioResponseInfo& info,
-    const ::android::hardware::hidl_string& /*result*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::nvReadItemResponse(const RadioResponseInfo& info,
+                                               const ::android::hardware::hidl_string& /*result*/) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
 Return<void> RadioResponse::nvWriteItemResponse(const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::nvWriteCdmaPrlResponse(
-    const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::nvWriteCdmaPrlResponse(const RadioResponseInfo& info) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::nvResetConfigResponse(
-    const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::nvResetConfigResponse(const RadioResponseInfo& info) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::setUiccSubscriptionResponse(
-    const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::setUiccSubscriptionResponse(const RadioResponseInfo& info) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::setDataAllowedResponse(
-    const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::setDataAllowedResponse(const RadioResponseInfo& info) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
 Return<void> RadioResponse::getHardwareConfigResponse(
     const RadioResponseInfo& info,
     const ::android::hardware::hidl_vec<HardwareConfig>& /*config*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::requestIccSimAuthenticationResponse(
-    const RadioResponseInfo& info, const IccIoResult& result) {
-  rspInfo = info;
-  this->iccIoResult = result;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::requestIccSimAuthenticationResponse(const RadioResponseInfo& info,
+                                                                const IccIoResult& result) {
+    rspInfo = info;
+    this->iccIoResult = result;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::setDataProfileResponse(
-    const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::setDataProfileResponse(const RadioResponseInfo& info) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::requestShutdownResponse(
-    const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::requestShutdownResponse(const RadioResponseInfo& info) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::getRadioCapabilityResponse(
-    const RadioResponseInfo& info, const RadioCapability& /*rc*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::getRadioCapabilityResponse(const RadioResponseInfo& info,
+                                                       const RadioCapability& /*rc*/) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::setRadioCapabilityResponse(
-    const RadioResponseInfo& info, const RadioCapability& /*rc*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::setRadioCapabilityResponse(const RadioResponseInfo& info,
+                                                       const RadioCapability& /*rc*/) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::startLceServiceResponse(
-    const RadioResponseInfo& info, const LceStatusInfo& /*statusInfo*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::startLceServiceResponse(const RadioResponseInfo& info,
+                                                    const LceStatusInfo& /*statusInfo*/) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::stopLceServiceResponse(
-    const RadioResponseInfo& info, const LceStatusInfo& /*statusInfo*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::stopLceServiceResponse(const RadioResponseInfo& info,
+                                                   const LceStatusInfo& /*statusInfo*/) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::pullLceDataResponse(
-    const RadioResponseInfo& info, const LceDataInfo& /*lceInfo*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::pullLceDataResponse(const RadioResponseInfo& info,
+                                                const LceDataInfo& /*lceInfo*/) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
 Return<void> RadioResponse::getModemActivityInfoResponse(
     const RadioResponseInfo& info, const ActivityStatsInfo& /*activityInfo*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::setAllowedCarriersResponse(
-    const RadioResponseInfo& info, int32_t /*numAllowed*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::setAllowedCarriersResponse(const RadioResponseInfo& info,
+                                                       int32_t /*numAllowed*/) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::getAllowedCarriersResponse(
-    const RadioResponseInfo& info, bool /*allAllowed*/,
-    const CarrierRestrictions& /*carriers*/) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::getAllowedCarriersResponse(const RadioResponseInfo& info,
+                                                       bool /*allAllowed*/,
+                                                       const CarrierRestrictions& /*carriers*/) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::sendDeviceStateResponse(
-    const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::sendDeviceStateResponse(const RadioResponseInfo& info) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::setIndicationFilterResponse(
-    const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::setIndicationFilterResponse(const RadioResponseInfo& info) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
-Return<void> RadioResponse::setSimCardPowerResponse(
-    const RadioResponseInfo& info) {
-  rspInfo = info;
-  parent.notify();
-  return Void();
+Return<void> RadioResponse::setSimCardPowerResponse(const RadioResponseInfo& info) {
+    rspInfo = info;
+    parent.notify();
+    return Void();
 }
 
 Return<void> RadioResponse::acknowledgeRequest(int32_t /*serial*/) {
-  return Void();
+    return Void();
 }
diff --git a/radio/1.0/vts/functional/sap_callback.cpp b/radio/1.0/vts/functional/sap_callback.cpp
index 3a06ecd..fdcc15c 100644
--- a/radio/1.0/vts/functional/sap_callback.cpp
+++ b/radio/1.0/vts/functional/sap_callback.cpp
@@ -18,78 +18,74 @@
 
 SapCallback::SapCallback(SapHidlTest& parent) : parent(parent) {}
 
-Return<void> SapCallback::connectResponse(int32_t token,
-                                          SapConnectRsp /*sapConnectRsp*/,
+Return<void> SapCallback::connectResponse(int32_t token, SapConnectRsp /*sapConnectRsp*/,
                                           int32_t /*maxMsgSize*/) {
-  sapResponseToken = token;
-  parent.notify();
-  return Void();
+    sapResponseToken = token;
+    parent.notify();
+    return Void();
 }
 
 Return<void> SapCallback::disconnectResponse(int32_t token) {
-  sapResponseToken = token;
-  parent.notify();
-  return Void();
+    sapResponseToken = token;
+    parent.notify();
+    return Void();
 }
 
-Return<void> SapCallback::disconnectIndication(
-    int32_t /*token*/, SapDisconnectType /*disconnectType*/) {
-  return Void();
+Return<void> SapCallback::disconnectIndication(int32_t /*token*/,
+                                               SapDisconnectType /*disconnectType*/) {
+    return Void();
 }
 
-Return<void> SapCallback::apduResponse(
-    int32_t token, SapResultCode resultCode,
-    const ::android::hardware::hidl_vec<uint8_t>& /*apduRsp*/) {
-  sapResponseToken = token;
-  sapResultCode = resultCode;
-  parent.notify();
-  return Void();
+Return<void> SapCallback::apduResponse(int32_t token, SapResultCode resultCode,
+                                       const ::android::hardware::hidl_vec<uint8_t>& /*apduRsp*/) {
+    sapResponseToken = token;
+    sapResultCode = resultCode;
+    parent.notify();
+    return Void();
 }
 
 Return<void> SapCallback::transferAtrResponse(
     int32_t token, SapResultCode resultCode,
     const ::android::hardware::hidl_vec<uint8_t>& /*atr*/) {
-  sapResponseToken = token;
-  sapResultCode = resultCode;
-  parent.notify();
-  return Void();
+    sapResponseToken = token;
+    sapResultCode = resultCode;
+    parent.notify();
+    return Void();
 }
 
-Return<void> SapCallback::powerResponse(int32_t token,
-                                        SapResultCode resultCode) {
-  sapResponseToken = token;
-  sapResultCode = resultCode;
-  parent.notify();
-  return Void();
+Return<void> SapCallback::powerResponse(int32_t token, SapResultCode resultCode) {
+    sapResponseToken = token;
+    sapResultCode = resultCode;
+    parent.notify();
+    return Void();
 }
 
-Return<void> SapCallback::resetSimResponse(int32_t token,
-                                           SapResultCode resultCode) {
-  sapResponseToken = token;
-  sapResultCode = resultCode;
-  parent.notify();
-  return Void();
+Return<void> SapCallback::resetSimResponse(int32_t token, SapResultCode resultCode) {
+    sapResponseToken = token;
+    sapResultCode = resultCode;
+    parent.notify();
+    return Void();
 }
 
-Return<void> SapCallback::statusIndication(int32_t /*token*/,
-                                           SapStatus /*status*/) {
-  return Void();
+Return<void> SapCallback::statusIndication(int32_t /*token*/, SapStatus /*status*/) {
+    return Void();
 }
 
-Return<void> SapCallback::transferCardReaderStatusResponse(
-    int32_t token, SapResultCode resultCode, int32_t /*cardReaderStatus*/) {
-  sapResponseToken = token;
-  sapResultCode = resultCode;
-  parent.notify();
-  return Void();
+Return<void> SapCallback::transferCardReaderStatusResponse(int32_t token, SapResultCode resultCode,
+                                                           int32_t /*cardReaderStatus*/) {
+    sapResponseToken = token;
+    sapResultCode = resultCode;
+    parent.notify();
+    return Void();
 }
 
-Return<void> SapCallback::errorResponse(int32_t /*token*/) { return Void(); }
+Return<void> SapCallback::errorResponse(int32_t /*token*/) {
+    return Void();
+}
 
-Return<void> SapCallback::transferProtocolResponse(int32_t token,
-                                                   SapResultCode resultCode) {
-  sapResponseToken = token;
-  sapResultCode = resultCode;
-  parent.notify();
-  return Void();
+Return<void> SapCallback::transferProtocolResponse(int32_t token, SapResultCode resultCode) {
+    sapResponseToken = token;
+    sapResultCode = resultCode;
+    parent.notify();
+    return Void();
 }
diff --git a/radio/1.0/vts/functional/sap_hidl_hal_api.cpp b/radio/1.0/vts/functional/sap_hidl_hal_api.cpp
index 682230c..bb61487 100644
--- a/radio/1.0/vts/functional/sap_hidl_hal_api.cpp
+++ b/radio/1.0/vts/functional/sap_hidl_hal_api.cpp
@@ -20,112 +20,117 @@
  * Test ISap.connectReq() for the response returned.
  */
 TEST_F(SapHidlTest, connectReq) {
-  int32_t token = 0;
-  int32_t maxMsgSize = 100;
+    int32_t token = GetRandomSerialNumber();
+    int32_t maxMsgSize = 100;
 
-  sap->connectReq(++token, maxMsgSize);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(sapCb->sapResponseToken, token);
+    sap->connectReq(token, maxMsgSize);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(sapCb->sapResponseToken, token);
 }
 
 /*
  * Test IRadio.disconnectReq() for the response returned
  */
 TEST_F(SapHidlTest, disconnectReq) {
-  int32_t token = 0;
+    int32_t token = GetRandomSerialNumber();
 
-  sap->disconnectReq(++token);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(sapCb->sapResponseToken, token);
+    sap->disconnectReq(token);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(sapCb->sapResponseToken, token);
 }
 
 /*
  * Test IRadio.apduReq() for the response returned.
  */
 TEST_F(SapHidlTest, apduReq) {
-  int32_t token = 0;
-  SapApduType sapApduType = SapApduType::APDU;
-  android::hardware::hidl_vec<uint8_t> command = {};
+    int32_t token = GetRandomSerialNumber();
+    SapApduType sapApduType = SapApduType::APDU;
+    android::hardware::hidl_vec<uint8_t> command = {};
 
-  sap->apduReq(++token, sapApduType, command);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(sapCb->sapResponseToken, token);
+    sap->apduReq(token, sapApduType, command);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(sapCb->sapResponseToken, token);
 
-  ASSERT_TRUE(SapResultCode::CARD_NOT_ACCESSSIBLE == sapCb->sapResultCode ||
-              SapResultCode::CARD_ALREADY_POWERED_OFF == sapCb->sapResultCode ||
-              SapResultCode::CARD_REMOVED == sapCb->sapResultCode);
+    ASSERT_TRUE(SapResultCode::GENERIC_FAILURE == sapCb->sapResultCode ||
+                SapResultCode::CARD_NOT_ACCESSSIBLE == sapCb->sapResultCode ||
+                SapResultCode::CARD_ALREADY_POWERED_OFF == sapCb->sapResultCode ||
+                SapResultCode::CARD_REMOVED == sapCb->sapResultCode);
 }
 
 /*
  * Test IRadio.transferAtrReq() for the response returned.
  */
 TEST_F(SapHidlTest, transferAtrReq) {
-  int32_t token = 0;
+    int32_t token = GetRandomSerialNumber();
 
-  sap->transferAtrReq(++token);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(sapCb->sapResponseToken, token);
+    sap->transferAtrReq(token);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(sapCb->sapResponseToken, token);
 
-  ASSERT_TRUE(SapResultCode::DATA_NOT_AVAILABLE == sapCb->sapResultCode ||
-              SapResultCode::CARD_ALREADY_POWERED_OFF == sapCb->sapResultCode ||
-              SapResultCode::CARD_REMOVED == sapCb->sapResultCode);
+    ASSERT_TRUE(SapResultCode::GENERIC_FAILURE == sapCb->sapResultCode ||
+                SapResultCode::DATA_NOT_AVAILABLE == sapCb->sapResultCode ||
+                SapResultCode::CARD_ALREADY_POWERED_OFF == sapCb->sapResultCode ||
+                SapResultCode::CARD_REMOVED == sapCb->sapResultCode);
 }
 
 /*
  * Test IRadio.powerReq() for the response returned.
  */
 TEST_F(SapHidlTest, powerReq) {
-  int32_t token = 0;
-  bool state = true;
+    int32_t token = GetRandomSerialNumber();
+    bool state = true;
 
-  sap->powerReq(++token, state);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(sapCb->sapResponseToken, token);
+    sap->powerReq(token, state);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(sapCb->sapResponseToken, token);
 
-  ASSERT_TRUE(SapResultCode::CARD_NOT_ACCESSSIBLE == sapCb->sapResultCode ||
-              SapResultCode::CARD_ALREADY_POWERED_OFF == sapCb->sapResultCode ||
-              SapResultCode::CARD_REMOVED == sapCb->sapResultCode ||
-              SapResultCode::CARD_ALREADY_POWERED_ON == sapCb->sapResultCode);
+    ASSERT_TRUE(SapResultCode::GENERIC_FAILURE == sapCb->sapResultCode ||
+                SapResultCode::CARD_NOT_ACCESSSIBLE == sapCb->sapResultCode ||
+                SapResultCode::CARD_ALREADY_POWERED_OFF == sapCb->sapResultCode ||
+                SapResultCode::CARD_REMOVED == sapCb->sapResultCode ||
+                SapResultCode::CARD_ALREADY_POWERED_ON == sapCb->sapResultCode);
 }
 
 /*
  * Test IRadio.resetSimReq() for the response returned.
  */
 TEST_F(SapHidlTest, resetSimReq) {
-  int32_t token = 0;
+    int32_t token = GetRandomSerialNumber();
 
-  sap->resetSimReq(++token);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(sapCb->sapResponseToken, token);
+    sap->resetSimReq(token);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(sapCb->sapResponseToken, token);
 
-  ASSERT_TRUE(SapResultCode::CARD_NOT_ACCESSSIBLE == sapCb->sapResultCode ||
-              SapResultCode::CARD_ALREADY_POWERED_OFF == sapCb->sapResultCode ||
-              SapResultCode::CARD_REMOVED == sapCb->sapResultCode);
+    ASSERT_TRUE(SapResultCode::GENERIC_FAILURE == sapCb->sapResultCode ||
+                SapResultCode::CARD_NOT_ACCESSSIBLE == sapCb->sapResultCode ||
+                SapResultCode::CARD_ALREADY_POWERED_OFF == sapCb->sapResultCode ||
+                SapResultCode::CARD_REMOVED == sapCb->sapResultCode);
 }
 
 /*
  * Test IRadio.transferCardReaderStatusReq() for the response returned.
  */
 TEST_F(SapHidlTest, transferCardReaderStatusReq) {
-  int32_t token = 0;
+    int32_t token = GetRandomSerialNumber();
 
-  sap->transferCardReaderStatusReq(++token);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(sapCb->sapResponseToken, token);
+    sap->transferCardReaderStatusReq(token);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(sapCb->sapResponseToken, token);
 
-  EXPECT_EQ(SapResultCode::DATA_NOT_AVAILABLE, sapCb->sapResultCode);
+    ASSERT_TRUE(SapResultCode::GENERIC_FAILURE == sapCb->sapResultCode ||
+                SapResultCode::DATA_NOT_AVAILABLE == sapCb->sapResultCode);
 }
 
 /*
  * Test IRadio.setTransferProtocolReq() for the response returned.
  */
 TEST_F(SapHidlTest, setTransferProtocolReq) {
-  int32_t token = 0;
-  SapTransferProtocol sapTransferProtocol = SapTransferProtocol::T0;
+    int32_t token = GetRandomSerialNumber();
+    SapTransferProtocol sapTransferProtocol = SapTransferProtocol::T0;
 
-  sap->setTransferProtocolReq(++token, sapTransferProtocol);
-  EXPECT_EQ(std::cv_status::no_timeout, wait());
-  EXPECT_EQ(sapCb->sapResponseToken, token);
+    sap->setTransferProtocolReq(token, sapTransferProtocol);
+    EXPECT_EQ(std::cv_status::no_timeout, wait());
+    EXPECT_EQ(sapCb->sapResponseToken, token);
 
-  EXPECT_EQ(SapResultCode::NOT_SUPPORTED, sapCb->sapResultCode);
+    EXPECT_EQ(SapResultCode::NOT_SUPPORTED, sapCb->sapResultCode);
 }
diff --git a/radio/1.0/vts/functional/sap_hidl_hal_test.cpp b/radio/1.0/vts/functional/sap_hidl_hal_test.cpp
index 02accef..fc8cb2a 100644
--- a/radio/1.0/vts/functional/sap_hidl_hal_test.cpp
+++ b/radio/1.0/vts/functional/sap_hidl_hal_test.cpp
@@ -17,37 +17,36 @@
 #include <sap_hidl_hal_utils.h>
 
 void SapHidlTest::SetUp() {
-  sap = ::testing::VtsHalHidlTargetTestBase::getService<ISap>(
-      hidl_string(SAP_SERVICE_NAME));
-  ASSERT_NE(sap, nullptr);
+    sap = ::testing::VtsHalHidlTargetTestBase::getService<ISap>(hidl_string(SAP_SERVICE_NAME));
+    ASSERT_NE(sap, nullptr);
 
-  sapCb = new SapCallback(*this);
-  ASSERT_NE(sapCb, nullptr);
+    sapCb = new SapCallback(*this);
+    ASSERT_NE(sapCb, nullptr);
 
-  count = 0;
+    count = 0;
 
-  sap->setCallback(sapCb);
+    sap->setCallback(sapCb);
 }
 
 void SapHidlTest::TearDown() {}
 
 void SapHidlTest::notify() {
-  std::unique_lock<std::mutex> lock(mtx);
-  count++;
-  cv.notify_one();
+    std::unique_lock<std::mutex> lock(mtx);
+    count++;
+    cv.notify_one();
 }
 
 std::cv_status SapHidlTest::wait() {
-  std::unique_lock<std::mutex> lock(mtx);
+    std::unique_lock<std::mutex> lock(mtx);
 
-  std::cv_status status = std::cv_status::no_timeout;
-  auto now = std::chrono::system_clock::now();
-  while (count == 0) {
-    status = cv.wait_until(lock, now + std::chrono::seconds(TIMEOUT_PERIOD));
-    if (status == std::cv_status::timeout) {
-      return status;
+    std::cv_status status = std::cv_status::no_timeout;
+    auto now = std::chrono::system_clock::now();
+    while (count == 0) {
+        status = cv.wait_until(lock, now + std::chrono::seconds(TIMEOUT_PERIOD));
+        if (status == std::cv_status::timeout) {
+            return status;
+        }
     }
-  }
-  count--;
-  return status;
-}
+    count--;
+    return status;
+}
\ No newline at end of file
diff --git a/radio/1.0/vts/functional/sap_hidl_hal_utils.h b/radio/1.0/vts/functional/sap_hidl_hal_utils.h
index 38fb003..fe93a4d 100644
--- a/radio/1.0/vts/functional/sap_hidl_hal_utils.h
+++ b/radio/1.0/vts/functional/sap_hidl_hal_utils.h
@@ -25,6 +25,8 @@
 #include <android/hardware/radio/1.0/ISapCallback.h>
 #include <android/hardware/radio/1.0/types.h>
 
+#include <vts_test_util.h>
+
 using namespace ::android::hardware::radio::V1_0;
 
 using ::android::hardware::hidl_string;
@@ -40,77 +42,71 @@
 
 /* Callback class for sap response */
 class SapCallback : public ISapCallback {
- private:
-  SapHidlTest& parent;
+   private:
+    SapHidlTest& parent;
 
- public:
-  SapResultCode sapResultCode;
-  int32_t sapResponseToken;
+   public:
+    SapResultCode sapResultCode;
+    int32_t sapResponseToken;
 
-  SapCallback(SapHidlTest& parent);
+    SapCallback(SapHidlTest& parent);
 
-  virtual ~SapCallback() = default;
+    virtual ~SapCallback() = default;
 
-  Return<void> connectResponse(int32_t token, SapConnectRsp sapConnectRsp,
-                               int32_t maxMsgSize);
+    Return<void> connectResponse(int32_t token, SapConnectRsp sapConnectRsp, int32_t maxMsgSize);
 
-  Return<void> disconnectResponse(int32_t token);
+    Return<void> disconnectResponse(int32_t token);
 
-  Return<void> disconnectIndication(int32_t token,
-                                    SapDisconnectType disconnectType);
+    Return<void> disconnectIndication(int32_t token, SapDisconnectType disconnectType);
 
-  Return<void> apduResponse(
-      int32_t token, SapResultCode resultCode,
-      const ::android::hardware::hidl_vec<uint8_t>& apduRsp);
+    Return<void> apduResponse(int32_t token, SapResultCode resultCode,
+                              const ::android::hardware::hidl_vec<uint8_t>& apduRsp);
 
-  Return<void> transferAtrResponse(
-      int32_t token, SapResultCode resultCode,
-      const ::android::hardware::hidl_vec<uint8_t>& atr);
+    Return<void> transferAtrResponse(int32_t token, SapResultCode resultCode,
+                                     const ::android::hardware::hidl_vec<uint8_t>& atr);
 
-  Return<void> powerResponse(int32_t token, SapResultCode resultCode);
+    Return<void> powerResponse(int32_t token, SapResultCode resultCode);
 
-  Return<void> resetSimResponse(int32_t token, SapResultCode resultCode);
+    Return<void> resetSimResponse(int32_t token, SapResultCode resultCode);
 
-  Return<void> statusIndication(int32_t token, SapStatus status);
+    Return<void> statusIndication(int32_t token, SapStatus status);
 
-  Return<void> transferCardReaderStatusResponse(int32_t token,
-                                                SapResultCode resultCode,
-                                                int32_t cardReaderStatus);
+    Return<void> transferCardReaderStatusResponse(int32_t token, SapResultCode resultCode,
+                                                  int32_t cardReaderStatus);
 
-  Return<void> errorResponse(int32_t token);
+    Return<void> errorResponse(int32_t token);
 
-  Return<void> transferProtocolResponse(int32_t token,
-                                        SapResultCode resultCode);
+    Return<void> transferProtocolResponse(int32_t token, SapResultCode resultCode);
 };
 
 // The main test class for Sap HIDL.
 class SapHidlTest : public ::testing::VtsHalHidlTargetTestBase {
- private:
-  std::mutex mtx;
-  std::condition_variable cv;
-  int count;
+   private:
+    std::mutex mtx;
+    std::condition_variable cv;
+    int count;
 
- public:
-  virtual void SetUp() override;
+   public:
+    virtual void SetUp() override;
 
-  virtual void TearDown() override;
+    virtual void TearDown() override;
 
-  /* Used as a mechanism to inform the test about data/event callback */
-  void notify();
+    /* Used as a mechanism to inform the test about data/event callback */
+    void notify();
 
-  /* Test code calls this function to wait for response */
-  std::cv_status wait();
+    /* Test code calls this function to wait for response */
+    std::cv_status wait();
 
-  /* Sap service */
-  sp<ISap> sap;
+    /* Sap service */
+    sp<ISap> sap;
 
-  /* Sap Callback object */
-  sp<SapCallback> sapCb;
+    /* Sap Callback object */
+    sp<SapCallback> sapCb;
 };
 
 // A class for test environment setup
 class SapHidlEnvironment : public ::testing::Environment {
- public:
-  virtual void SetUp() {}
-  virtual void TearDown() {}
+   public:
+    virtual void SetUp() {}
+    virtual void TearDown() {}
 };
diff --git a/tests/versioning/2.4/IFoo.hal b/radio/1.0/vts/functional/vts_test_util.cpp
similarity index 81%
rename from tests/versioning/2.4/IFoo.hal
rename to radio/1.0/vts/functional/vts_test_util.cpp
index 358b56f..c6d1f9f 100644
--- a/tests/versioning/2.4/IFoo.hal
+++ b/radio/1.0/vts/functional/vts_test_util.cpp
@@ -13,12 +13,10 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+#include <vts_test_util.h>
+#include <iostream>
+using namespace std;
 
-package android.hardware.tests.versioning@2.4;
-
-import @2.3::IFoo;
-
-// Must extend @2.3::IFoo.
-interface IFoo extends @2.3::IFoo {
-
-};
+int GetRandomSerialNumber() {
+    return rand();
+}
\ No newline at end of file
diff --git a/tests/versioning/1.0/IFoo.hal b/radio/1.0/vts/functional/vts_test_util.h
similarity index 81%
rename from tests/versioning/1.0/IFoo.hal
rename to radio/1.0/vts/functional/vts_test_util.h
index 0571eff..939013f 100644
--- a/tests/versioning/1.0/IFoo.hal
+++ b/radio/1.0/vts/functional/vts_test_util.h
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 The Android Open Source Project
+ * Copyright (C) 2017 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.
@@ -14,7 +14,4 @@
  * limitations under the License.
  */
 
-package android.hardware.tests.versioning@1.0;
-
-interface IFoo {
-};
+int GetRandomSerialNumber();
\ No newline at end of file
diff --git a/radio/1.1/Android.bp b/radio/1.1/Android.bp
index c352b6d..3583159 100644
--- a/radio/1.1/Android.bp
+++ b/radio/1.1/Android.bp
@@ -55,6 +55,7 @@
 
 cc_library_shared {
     name: "android.hardware.radio@1.1",
+    defaults: ["hidl-module-defaults"],
     generated_sources: ["android.hardware.radio@1.1_genc++"],
     generated_headers: ["android.hardware.radio@1.1_genc++_headers"],
     export_generated_headers: ["android.hardware.radio@1.1_genc++_headers"],
diff --git a/radio/1.1/Android.mk b/radio/1.1/Android.mk
index 0421daa..305b661 100644
--- a/radio/1.1/Android.mk
+++ b/radio/1.1/Android.mk
@@ -18,12 +18,204 @@
 
 
 #
+# Build types.hal (CardPowerState)
+#
+GEN := $(intermediates)/android/hardware/radio/V1_1/CardPowerState.java
+$(GEN): $(HIDL)
+$(GEN): PRIVATE_HIDL := $(HIDL)
+$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
+$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
+$(GEN): PRIVATE_CUSTOM_TOOL = \
+        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
+        -Ljava \
+        -randroid.hardware:hardware/interfaces \
+        -randroid.hidl:system/libhidl/transport \
+        android.hardware.radio@1.1::types.CardPowerState
+
+$(GEN): $(LOCAL_PATH)/types.hal
+	$(transform-generated-source)
+LOCAL_GENERATED_SOURCES += $(GEN)
+
+#
+# Build types.hal (EutranBands)
+#
+GEN := $(intermediates)/android/hardware/radio/V1_1/EutranBands.java
+$(GEN): $(HIDL)
+$(GEN): PRIVATE_HIDL := $(HIDL)
+$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
+$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
+$(GEN): PRIVATE_CUSTOM_TOOL = \
+        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
+        -Ljava \
+        -randroid.hardware:hardware/interfaces \
+        -randroid.hidl:system/libhidl/transport \
+        android.hardware.radio@1.1::types.EutranBands
+
+$(GEN): $(LOCAL_PATH)/types.hal
+	$(transform-generated-source)
+LOCAL_GENERATED_SOURCES += $(GEN)
+
+#
+# Build types.hal (GeranBands)
+#
+GEN := $(intermediates)/android/hardware/radio/V1_1/GeranBands.java
+$(GEN): $(HIDL)
+$(GEN): PRIVATE_HIDL := $(HIDL)
+$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
+$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
+$(GEN): PRIVATE_CUSTOM_TOOL = \
+        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
+        -Ljava \
+        -randroid.hardware:hardware/interfaces \
+        -randroid.hidl:system/libhidl/transport \
+        android.hardware.radio@1.1::types.GeranBands
+
+$(GEN): $(LOCAL_PATH)/types.hal
+	$(transform-generated-source)
+LOCAL_GENERATED_SOURCES += $(GEN)
+
+#
+# Build types.hal (NetworkScanRequest)
+#
+GEN := $(intermediates)/android/hardware/radio/V1_1/NetworkScanRequest.java
+$(GEN): $(HIDL)
+$(GEN): PRIVATE_HIDL := $(HIDL)
+$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
+$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
+$(GEN): PRIVATE_CUSTOM_TOOL = \
+        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
+        -Ljava \
+        -randroid.hardware:hardware/interfaces \
+        -randroid.hidl:system/libhidl/transport \
+        android.hardware.radio@1.1::types.NetworkScanRequest
+
+$(GEN): $(LOCAL_PATH)/types.hal
+	$(transform-generated-source)
+LOCAL_GENERATED_SOURCES += $(GEN)
+
+#
+# Build types.hal (NetworkScanResult)
+#
+GEN := $(intermediates)/android/hardware/radio/V1_1/NetworkScanResult.java
+$(GEN): $(HIDL)
+$(GEN): PRIVATE_HIDL := $(HIDL)
+$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
+$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
+$(GEN): PRIVATE_CUSTOM_TOOL = \
+        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
+        -Ljava \
+        -randroid.hardware:hardware/interfaces \
+        -randroid.hidl:system/libhidl/transport \
+        android.hardware.radio@1.1::types.NetworkScanResult
+
+$(GEN): $(LOCAL_PATH)/types.hal
+	$(transform-generated-source)
+LOCAL_GENERATED_SOURCES += $(GEN)
+
+#
+# Build types.hal (RadioAccessNetworks)
+#
+GEN := $(intermediates)/android/hardware/radio/V1_1/RadioAccessNetworks.java
+$(GEN): $(HIDL)
+$(GEN): PRIVATE_HIDL := $(HIDL)
+$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
+$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
+$(GEN): PRIVATE_CUSTOM_TOOL = \
+        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
+        -Ljava \
+        -randroid.hardware:hardware/interfaces \
+        -randroid.hidl:system/libhidl/transport \
+        android.hardware.radio@1.1::types.RadioAccessNetworks
+
+$(GEN): $(LOCAL_PATH)/types.hal
+	$(transform-generated-source)
+LOCAL_GENERATED_SOURCES += $(GEN)
+
+#
+# Build types.hal (RadioAccessSpecifier)
+#
+GEN := $(intermediates)/android/hardware/radio/V1_1/RadioAccessSpecifier.java
+$(GEN): $(HIDL)
+$(GEN): PRIVATE_HIDL := $(HIDL)
+$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
+$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
+$(GEN): PRIVATE_CUSTOM_TOOL = \
+        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
+        -Ljava \
+        -randroid.hardware:hardware/interfaces \
+        -randroid.hidl:system/libhidl/transport \
+        android.hardware.radio@1.1::types.RadioAccessSpecifier
+
+$(GEN): $(LOCAL_PATH)/types.hal
+	$(transform-generated-source)
+LOCAL_GENERATED_SOURCES += $(GEN)
+
+#
+# Build types.hal (ScanStatus)
+#
+GEN := $(intermediates)/android/hardware/radio/V1_1/ScanStatus.java
+$(GEN): $(HIDL)
+$(GEN): PRIVATE_HIDL := $(HIDL)
+$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
+$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
+$(GEN): PRIVATE_CUSTOM_TOOL = \
+        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
+        -Ljava \
+        -randroid.hardware:hardware/interfaces \
+        -randroid.hidl:system/libhidl/transport \
+        android.hardware.radio@1.1::types.ScanStatus
+
+$(GEN): $(LOCAL_PATH)/types.hal
+	$(transform-generated-source)
+LOCAL_GENERATED_SOURCES += $(GEN)
+
+#
+# Build types.hal (ScanType)
+#
+GEN := $(intermediates)/android/hardware/radio/V1_1/ScanType.java
+$(GEN): $(HIDL)
+$(GEN): PRIVATE_HIDL := $(HIDL)
+$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
+$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
+$(GEN): PRIVATE_CUSTOM_TOOL = \
+        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
+        -Ljava \
+        -randroid.hardware:hardware/interfaces \
+        -randroid.hidl:system/libhidl/transport \
+        android.hardware.radio@1.1::types.ScanType
+
+$(GEN): $(LOCAL_PATH)/types.hal
+	$(transform-generated-source)
+LOCAL_GENERATED_SOURCES += $(GEN)
+
+#
+# Build types.hal (UtranBands)
+#
+GEN := $(intermediates)/android/hardware/radio/V1_1/UtranBands.java
+$(GEN): $(HIDL)
+$(GEN): PRIVATE_HIDL := $(HIDL)
+$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
+$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
+$(GEN): PRIVATE_CUSTOM_TOOL = \
+        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
+        -Ljava \
+        -randroid.hardware:hardware/interfaces \
+        -randroid.hidl:system/libhidl/transport \
+        android.hardware.radio@1.1::types.UtranBands
+
+$(GEN): $(LOCAL_PATH)/types.hal
+	$(transform-generated-source)
+LOCAL_GENERATED_SOURCES += $(GEN)
+
+#
 # Build IRadio.hal
 #
 GEN := $(intermediates)/android/hardware/radio/V1_1/IRadio.java
 $(GEN): $(HIDL)
 $(GEN): PRIVATE_HIDL := $(HIDL)
 $(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IRadio.hal
+$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/types.hal
+$(GEN): $(LOCAL_PATH)/types.hal
 $(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
 $(GEN): PRIVATE_CUSTOM_TOOL = \
         $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
@@ -43,6 +235,8 @@
 $(GEN): $(HIDL)
 $(GEN): PRIVATE_HIDL := $(HIDL)
 $(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IRadioIndication.hal
+$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/types.hal
+$(GEN): $(LOCAL_PATH)/types.hal
 $(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
 $(GEN): PRIVATE_CUSTOM_TOOL = \
         $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
@@ -92,12 +286,204 @@
 
 
 #
+# Build types.hal (CardPowerState)
+#
+GEN := $(intermediates)/android/hardware/radio/V1_1/CardPowerState.java
+$(GEN): $(HIDL)
+$(GEN): PRIVATE_HIDL := $(HIDL)
+$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
+$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
+$(GEN): PRIVATE_CUSTOM_TOOL = \
+        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
+        -Ljava \
+        -randroid.hardware:hardware/interfaces \
+        -randroid.hidl:system/libhidl/transport \
+        android.hardware.radio@1.1::types.CardPowerState
+
+$(GEN): $(LOCAL_PATH)/types.hal
+	$(transform-generated-source)
+LOCAL_GENERATED_SOURCES += $(GEN)
+
+#
+# Build types.hal (EutranBands)
+#
+GEN := $(intermediates)/android/hardware/radio/V1_1/EutranBands.java
+$(GEN): $(HIDL)
+$(GEN): PRIVATE_HIDL := $(HIDL)
+$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
+$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
+$(GEN): PRIVATE_CUSTOM_TOOL = \
+        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
+        -Ljava \
+        -randroid.hardware:hardware/interfaces \
+        -randroid.hidl:system/libhidl/transport \
+        android.hardware.radio@1.1::types.EutranBands
+
+$(GEN): $(LOCAL_PATH)/types.hal
+	$(transform-generated-source)
+LOCAL_GENERATED_SOURCES += $(GEN)
+
+#
+# Build types.hal (GeranBands)
+#
+GEN := $(intermediates)/android/hardware/radio/V1_1/GeranBands.java
+$(GEN): $(HIDL)
+$(GEN): PRIVATE_HIDL := $(HIDL)
+$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
+$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
+$(GEN): PRIVATE_CUSTOM_TOOL = \
+        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
+        -Ljava \
+        -randroid.hardware:hardware/interfaces \
+        -randroid.hidl:system/libhidl/transport \
+        android.hardware.radio@1.1::types.GeranBands
+
+$(GEN): $(LOCAL_PATH)/types.hal
+	$(transform-generated-source)
+LOCAL_GENERATED_SOURCES += $(GEN)
+
+#
+# Build types.hal (NetworkScanRequest)
+#
+GEN := $(intermediates)/android/hardware/radio/V1_1/NetworkScanRequest.java
+$(GEN): $(HIDL)
+$(GEN): PRIVATE_HIDL := $(HIDL)
+$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
+$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
+$(GEN): PRIVATE_CUSTOM_TOOL = \
+        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
+        -Ljava \
+        -randroid.hardware:hardware/interfaces \
+        -randroid.hidl:system/libhidl/transport \
+        android.hardware.radio@1.1::types.NetworkScanRequest
+
+$(GEN): $(LOCAL_PATH)/types.hal
+	$(transform-generated-source)
+LOCAL_GENERATED_SOURCES += $(GEN)
+
+#
+# Build types.hal (NetworkScanResult)
+#
+GEN := $(intermediates)/android/hardware/radio/V1_1/NetworkScanResult.java
+$(GEN): $(HIDL)
+$(GEN): PRIVATE_HIDL := $(HIDL)
+$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
+$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
+$(GEN): PRIVATE_CUSTOM_TOOL = \
+        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
+        -Ljava \
+        -randroid.hardware:hardware/interfaces \
+        -randroid.hidl:system/libhidl/transport \
+        android.hardware.radio@1.1::types.NetworkScanResult
+
+$(GEN): $(LOCAL_PATH)/types.hal
+	$(transform-generated-source)
+LOCAL_GENERATED_SOURCES += $(GEN)
+
+#
+# Build types.hal (RadioAccessNetworks)
+#
+GEN := $(intermediates)/android/hardware/radio/V1_1/RadioAccessNetworks.java
+$(GEN): $(HIDL)
+$(GEN): PRIVATE_HIDL := $(HIDL)
+$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
+$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
+$(GEN): PRIVATE_CUSTOM_TOOL = \
+        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
+        -Ljava \
+        -randroid.hardware:hardware/interfaces \
+        -randroid.hidl:system/libhidl/transport \
+        android.hardware.radio@1.1::types.RadioAccessNetworks
+
+$(GEN): $(LOCAL_PATH)/types.hal
+	$(transform-generated-source)
+LOCAL_GENERATED_SOURCES += $(GEN)
+
+#
+# Build types.hal (RadioAccessSpecifier)
+#
+GEN := $(intermediates)/android/hardware/radio/V1_1/RadioAccessSpecifier.java
+$(GEN): $(HIDL)
+$(GEN): PRIVATE_HIDL := $(HIDL)
+$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
+$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
+$(GEN): PRIVATE_CUSTOM_TOOL = \
+        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
+        -Ljava \
+        -randroid.hardware:hardware/interfaces \
+        -randroid.hidl:system/libhidl/transport \
+        android.hardware.radio@1.1::types.RadioAccessSpecifier
+
+$(GEN): $(LOCAL_PATH)/types.hal
+	$(transform-generated-source)
+LOCAL_GENERATED_SOURCES += $(GEN)
+
+#
+# Build types.hal (ScanStatus)
+#
+GEN := $(intermediates)/android/hardware/radio/V1_1/ScanStatus.java
+$(GEN): $(HIDL)
+$(GEN): PRIVATE_HIDL := $(HIDL)
+$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
+$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
+$(GEN): PRIVATE_CUSTOM_TOOL = \
+        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
+        -Ljava \
+        -randroid.hardware:hardware/interfaces \
+        -randroid.hidl:system/libhidl/transport \
+        android.hardware.radio@1.1::types.ScanStatus
+
+$(GEN): $(LOCAL_PATH)/types.hal
+	$(transform-generated-source)
+LOCAL_GENERATED_SOURCES += $(GEN)
+
+#
+# Build types.hal (ScanType)
+#
+GEN := $(intermediates)/android/hardware/radio/V1_1/ScanType.java
+$(GEN): $(HIDL)
+$(GEN): PRIVATE_HIDL := $(HIDL)
+$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
+$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
+$(GEN): PRIVATE_CUSTOM_TOOL = \
+        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
+        -Ljava \
+        -randroid.hardware:hardware/interfaces \
+        -randroid.hidl:system/libhidl/transport \
+        android.hardware.radio@1.1::types.ScanType
+
+$(GEN): $(LOCAL_PATH)/types.hal
+	$(transform-generated-source)
+LOCAL_GENERATED_SOURCES += $(GEN)
+
+#
+# Build types.hal (UtranBands)
+#
+GEN := $(intermediates)/android/hardware/radio/V1_1/UtranBands.java
+$(GEN): $(HIDL)
+$(GEN): PRIVATE_HIDL := $(HIDL)
+$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
+$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
+$(GEN): PRIVATE_CUSTOM_TOOL = \
+        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
+        -Ljava \
+        -randroid.hardware:hardware/interfaces \
+        -randroid.hidl:system/libhidl/transport \
+        android.hardware.radio@1.1::types.UtranBands
+
+$(GEN): $(LOCAL_PATH)/types.hal
+	$(transform-generated-source)
+LOCAL_GENERATED_SOURCES += $(GEN)
+
+#
 # Build IRadio.hal
 #
 GEN := $(intermediates)/android/hardware/radio/V1_1/IRadio.java
 $(GEN): $(HIDL)
 $(GEN): PRIVATE_HIDL := $(HIDL)
 $(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IRadio.hal
+$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/types.hal
+$(GEN): $(LOCAL_PATH)/types.hal
 $(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
 $(GEN): PRIVATE_CUSTOM_TOOL = \
         $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
@@ -117,6 +503,8 @@
 $(GEN): $(HIDL)
 $(GEN): PRIVATE_HIDL := $(HIDL)
 $(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IRadioIndication.hal
+$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/types.hal
+$(GEN): $(LOCAL_PATH)/types.hal
 $(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
 $(GEN): PRIVATE_CUSTOM_TOOL = \
         $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
diff --git a/radio/1.1/IRadio.hal b/radio/1.1/IRadio.hal
index 44b08fe..b3e21e7 100644
--- a/radio/1.1/IRadio.hal
+++ b/radio/1.1/IRadio.hal
@@ -81,4 +81,22 @@
      */
     oneway setSimCardPower_1_1(int32_t serial, CardPowerState powerUp);
 
+    /**
+     * Starts a network scan
+     *
+     * @param serial Serial number of request.
+     * @param request Defines the radio networks/bands/channels which need to be scanned.
+     *
+     * Response function is IRadioResponse.startNetworkScanResponse()
+     */
+    oneway startNetworkScan(int32_t serial, NetworkScanRequest request);
+
+    /**
+     * Stops ongoing network scan
+     *
+     * @param serial Serial number of request.
+     *
+     * Response function is IRadioResponse.stopNetworkScanResponse()
+     */
+    oneway stopNetworkScan(int32_t serial);
 };
diff --git a/radio/1.1/IRadioIndication.hal b/radio/1.1/IRadioIndication.hal
index 8cba71b..27b6ec2 100644
--- a/radio/1.1/IRadioIndication.hal
+++ b/radio/1.1/IRadioIndication.hal
@@ -31,4 +31,12 @@
     * @param type Type of radio indication
     */
    oneway carrierInfoForImsiEncryption(RadioIndicationType info);
-};
+
+    /**
+     * Incremental network scan results
+     *
+     * @param type Type of radio indication
+     * @param result Network scan result as NetworkScanResult defined in types.hal
+     */
+    oneway networkScanResult(RadioIndicationType type, NetworkScanResult result);
+};
\ No newline at end of file
diff --git a/radio/1.1/IRadioResponse.hal b/radio/1.1/IRadioResponse.hal
index 7727ef1..7415252 100644
--- a/radio/1.1/IRadioResponse.hal
+++ b/radio/1.1/IRadioResponse.hal
@@ -46,4 +46,29 @@
      */
     oneway setSimCardPowerResponse_1_1(RadioResponseInfo info);
 
+    /**
+     * @param info Response info struct containing response type, serial no. and error
+     *
+     * Valid errors returned:
+     *   RadioError:NONE
+     *   RadioError:RADIO_NOT_AVAILABLE
+     *   RadioError:OPERATION_NOT_ALLOWED
+     *   RadioError:DEVICE_IN_USE
+     *   RadioError:INTERNAL_ERR
+     *   RadioError:NO_MEMORY
+     *   RadioError:MODEM_ERR
+     *   RadioError:INVALID_ARGUMENTS
+     *   RadioError:REQUEST_NOT_SUPPORTED
+     */
+    oneway startNetworkScanResponse(RadioResponseInfo info);
+
+    /**
+     * @param info Response info struct containing response type, serial no. and error
+     *
+     * Valid errors returned:
+     *   RadioError:NONE
+     *   RadioError:INTERNAL_ERR
+     *   RadioError:MODEM_ERR
+     */
+    oneway stopNetworkScanResponse(RadioResponseInfo info);
 };
diff --git a/radio/1.1/types.hal b/radio/1.1/types.hal
index 266f64f..245d96c 100644
--- a/radio/1.1/types.hal
+++ b/radio/1.1/types.hal
@@ -16,8 +16,149 @@
 
 package android.hardware.radio@1.1;
 
+import @1.0::CellInfo;
+import @1.0::RadioError;
+
 enum CardPowerState : int32_t {
     POWER_DOWN,
     POWER_UP,
     POWER_UP_PASS_THROUGH,
 };
+
+enum RadioAccessNetworks : int32_t {
+    GERAN = 1,                              // GSM EDGE Radio Access Network
+    UTRAN = 2,                              // Universal Terrestrial Radio Access Network
+    EUTRAN = 3,                             // Evolved Universal Terrestrial Radio Access Network
+};
+
+enum GeranBands : int32_t {
+    BAND_T380 = 1,
+    BAND_T410 = 2,
+    BAND_450 = 3,
+    BAND_480 = 4,
+    BAND_710 = 5,
+    BAND_750 = 6,
+    BAND_T810 = 7,
+    BAND_850 = 8,
+    BAND_P900 = 9,
+    BAND_E900 = 10,
+    BAND_R900 = 11,
+    BAND_DCS1800 = 12,
+    BAND_PCS1900 = 13,
+    BAND_ER900 = 14,
+};
+
+enum UtranBands : int32_t {
+    BAND_1 = 1,
+    BAND_2 = 2,
+    BAND_3 = 3,
+    BAND_4 = 4,
+    BAND_5 = 5,
+    BAND_6 = 6,
+    BAND_7 = 7,
+    BAND_8 = 8,
+    BAND_9 = 9,
+    BAND_10 = 10,
+    BAND_11 = 11,
+    BAND_12 = 12,
+    BAND_13 = 13,
+    BAND_14 = 14,
+    BAND_19 = 19,
+    BAND_20 = 20,
+    BAND_21 = 21,
+    BAND_22 = 22,
+    BAND_25 = 25,
+    BAND_26 = 26,
+};
+
+enum EutranBands : int32_t {
+    BAND_1 = 1,
+    BAND_2 = 2,
+    BAND_3 = 3,
+    BAND_4 = 4,
+    BAND_5 = 5,
+    BAND_6 = 6,
+    BAND_7 = 7,
+    BAND_8 = 8,
+    BAND_9 = 9,
+    BAND_10 = 10,
+    BAND_11 = 11,
+    BAND_12 = 12,
+    BAND_13 = 13,
+    BAND_14 = 14,
+    BAND_17 = 17,
+    BAND_18 = 18,
+    BAND_19 = 19,
+    BAND_20 = 20,
+    BAND_21 = 21,
+    BAND_22 = 22,
+    BAND_23 = 23,
+    BAND_24 = 24,
+    BAND_25 = 25,
+    BAND_26 = 26,
+    BAND_27 = 27,
+    BAND_28 = 28,
+    BAND_30 = 30,
+    BAND_31 = 31,
+    BAND_33 = 33,
+    BAND_34 = 34,
+    BAND_35 = 35,
+    BAND_36 = 36,
+    BAND_37 = 37,
+    BAND_38 = 38,
+    BAND_39 = 39,
+    BAND_40 = 40,
+    BAND_41 = 41,
+    BAND_42 = 42,
+    BAND_43 = 43,
+    BAND_44 = 44,
+    BAND_45 = 45,
+    BAND_46 = 46,
+    BAND_47 = 47,
+    BAND_48 = 48,
+    BAND_65 = 65,
+    BAND_66 = 66,
+    BAND_68 = 68,
+    BAND_70 = 70,
+};
+
+enum ScanType : int32_t {
+    ONE_SHOT = 0,                           // Performs the scan only once
+    PERIODIC = 1,                           // Performs the scan periodically until cancelled
+};
+
+enum ScanStatus : int32_t {
+    PARTIAL = 1,                            // The result contains a part of the scan results
+    COMPLETE = 2,                           // The result contains the last part of the scan results
+};
+
+struct RadioAccessSpecifier {
+    RadioAccessNetworks radioAccessNetwork; // The type of network to scan
+    vec<GeranBands> geranBands;             // Valid only if radioAccessNetwork = GERAN
+                                            // otherwise must be empty
+                                            // Maximum length of the vector is 8
+    vec<UtranBands> utranBands;             // Valid only if radioAccessNetwork = UTRAN
+                                            // otherwise must be empty
+                                            // Maximum length of the vector is 8
+    vec<EutranBands> eutranBands;           // Valid only if radioAccessNetwork = EUTRAN
+                                            // otherwise must be empty
+                                            // Maximum length of the vector is 8
+    vec<int32_t> channels;                  // The radio channels to scan as defined in
+                                            // 3GPP TS 25.101 and 36.101
+                                            // Maximum length of the vector is 32
+};
+
+struct NetworkScanRequest {
+    ScanType type;                          // One shot scan or periodic
+    int32_t interval;                       // Time interval in seconds between periodic scans, only
+                                            // valid when type = PERIODIC
+                                            // Range: 5 to 600
+    vec<RadioAccessSpecifier> specifiers;   // networks with bands/channels to scan
+                                            // Maximum length of the vector is 8
+};
+
+struct NetworkScanResult {
+    ScanStatus status;                      // The status of the scan
+    RadioError error;                       // The error code of the incremental result
+    vec<CellInfo> networkInfos;             // List of network information as CellInfo
+};
diff --git a/radio/deprecated/1.0/Android.bp b/radio/deprecated/1.0/Android.bp
index a812a74..e45ecc3 100644
--- a/radio/deprecated/1.0/Android.bp
+++ b/radio/deprecated/1.0/Android.bp
@@ -51,6 +51,7 @@
 
 cc_library_shared {
     name: "android.hardware.radio.deprecated@1.0",
+    defaults: ["hidl-module-defaults"],
     generated_sources: ["android.hardware.radio.deprecated@1.0_genc++"],
     generated_headers: ["android.hardware.radio.deprecated@1.0_genc++_headers"],
     export_generated_headers: ["android.hardware.radio.deprecated@1.0_genc++_headers"],
diff --git a/renderscript/1.0/Android.bp b/renderscript/1.0/Android.bp
index a033b41..d599315 100644
--- a/renderscript/1.0/Android.bp
+++ b/renderscript/1.0/Android.bp
@@ -48,6 +48,7 @@
 
 cc_library_shared {
     name: "android.hardware.renderscript@1.0",
+    defaults: ["hidl-module-defaults"],
     generated_sources: ["android.hardware.renderscript@1.0_genc++"],
     generated_headers: ["android.hardware.renderscript@1.0_genc++_headers"],
     export_generated_headers: ["android.hardware.renderscript@1.0_genc++_headers"],
diff --git a/renderscript/1.0/vts/functional/VtsHalRenderscriptV1_0TargetTest.cpp b/renderscript/1.0/vts/functional/VtsHalRenderscriptV1_0TargetTest.cpp
index f505d01..2670b8d 100644
--- a/renderscript/1.0/vts/functional/VtsHalRenderscriptV1_0TargetTest.cpp
+++ b/renderscript/1.0/vts/functional/VtsHalRenderscriptV1_0TargetTest.cpp
@@ -28,6 +28,7 @@
 }
 
 void RenderscriptHidlTest::TearDown() {
+    context->contextFinish();
     context->contextDestroy();
 }
 
diff --git a/tests/Android.bp b/tests/Android.bp
index 7276a0b..7b2b2d3 100644
--- a/tests/Android.bp
+++ b/tests/Android.bp
@@ -14,6 +14,7 @@
     "inheritance/1.0/default",
     "libhwbinder/1.0",
     "libhwbinder/1.0/default",
+    "libhwbinder/aidl",
     "memory/1.0",
     "memory/1.0/default",
     "msgq/1.0",
@@ -21,8 +22,4 @@
     "pointer/1.0",
     "pointer/1.0/default",
     "pointer/1.0/default/lib",
-    "versioning/1.0",
-    "versioning/2.2",
-    "versioning/2.3",
-    "versioning/2.4",
 ]
diff --git a/tests/bar/1.0/Android.bp b/tests/bar/1.0/Android.bp
index e0dbe98..4c76014 100644
--- a/tests/bar/1.0/Android.bp
+++ b/tests/bar/1.0/Android.bp
@@ -69,6 +69,7 @@
 
 cc_library_shared {
     name: "android.hardware.tests.bar@1.0",
+    defaults: ["hidl-module-defaults"],
     generated_sources: ["android.hardware.tests.bar@1.0_genc++"],
     generated_headers: ["android.hardware.tests.bar@1.0_genc++_headers"],
     export_generated_headers: ["android.hardware.tests.bar@1.0_genc++_headers"],
diff --git a/tests/baz/1.0/Android.bp b/tests/baz/1.0/Android.bp
index cc9e2a4..1445b11 100644
--- a/tests/baz/1.0/Android.bp
+++ b/tests/baz/1.0/Android.bp
@@ -62,6 +62,7 @@
 
 cc_library_shared {
     name: "android.hardware.tests.baz@1.0",
+    defaults: ["hidl-module-defaults"],
     generated_sources: ["android.hardware.tests.baz@1.0_genc++"],
     generated_headers: ["android.hardware.tests.baz@1.0_genc++_headers"],
     export_generated_headers: ["android.hardware.tests.baz@1.0_genc++_headers"],
diff --git a/tests/expression/1.0/Android.bp b/tests/expression/1.0/Android.bp
index 8bdad0e..0cfe47d 100644
--- a/tests/expression/1.0/Android.bp
+++ b/tests/expression/1.0/Android.bp
@@ -44,6 +44,7 @@
 
 cc_library_shared {
     name: "android.hardware.tests.expression@1.0",
+    defaults: ["hidl-module-defaults"],
     generated_sources: ["android.hardware.tests.expression@1.0_genc++"],
     generated_headers: ["android.hardware.tests.expression@1.0_genc++_headers"],
     export_generated_headers: ["android.hardware.tests.expression@1.0_genc++_headers"],
diff --git a/tests/foo/1.0/Android.bp b/tests/foo/1.0/Android.bp
index 54260e9..b698847 100644
--- a/tests/foo/1.0/Android.bp
+++ b/tests/foo/1.0/Android.bp
@@ -69,6 +69,7 @@
 
 cc_library_shared {
     name: "android.hardware.tests.foo@1.0",
+    defaults: ["hidl-module-defaults"],
     generated_sources: ["android.hardware.tests.foo@1.0_genc++"],
     generated_headers: ["android.hardware.tests.foo@1.0_genc++_headers"],
     export_generated_headers: ["android.hardware.tests.foo@1.0_genc++_headers"],
diff --git a/tests/hash/1.0/Android.bp b/tests/hash/1.0/Android.bp
index c2aa804..617ddec 100644
--- a/tests/hash/1.0/Android.bp
+++ b/tests/hash/1.0/Android.bp
@@ -37,6 +37,7 @@
 
 cc_library_shared {
     name: "android.hardware.tests.hash@1.0",
+    defaults: ["hidl-module-defaults"],
     generated_sources: ["android.hardware.tests.hash@1.0_genc++"],
     generated_headers: ["android.hardware.tests.hash@1.0_genc++_headers"],
     export_generated_headers: ["android.hardware.tests.hash@1.0_genc++_headers"],
diff --git a/tests/inheritance/1.0/Android.bp b/tests/inheritance/1.0/Android.bp
index 6b99a55..4dbcf4b 100644
--- a/tests/inheritance/1.0/Android.bp
+++ b/tests/inheritance/1.0/Android.bp
@@ -58,6 +58,7 @@
 
 cc_library_shared {
     name: "android.hardware.tests.inheritance@1.0",
+    defaults: ["hidl-module-defaults"],
     generated_sources: ["android.hardware.tests.inheritance@1.0_genc++"],
     generated_headers: ["android.hardware.tests.inheritance@1.0_genc++_headers"],
     export_generated_headers: ["android.hardware.tests.inheritance@1.0_genc++_headers"],
diff --git a/tests/libhwbinder/1.0/Android.bp b/tests/libhwbinder/1.0/Android.bp
index cfebfbb..f254bad 100644
--- a/tests/libhwbinder/1.0/Android.bp
+++ b/tests/libhwbinder/1.0/Android.bp
@@ -44,6 +44,7 @@
 
 cc_library_shared {
     name: "android.hardware.tests.libhwbinder@1.0",
+    defaults: ["hidl-module-defaults"],
     generated_sources: ["android.hardware.tests.libhwbinder@1.0_genc++"],
     generated_headers: ["android.hardware.tests.libhwbinder@1.0_genc++_headers"],
     export_generated_headers: ["android.hardware.tests.libhwbinder@1.0_genc++_headers"],
diff --git a/tests/libhwbinder/aidl/Android.bp b/tests/libhwbinder/aidl/Android.bp
new file mode 100644
index 0000000..a662085
--- /dev/null
+++ b/tests/libhwbinder/aidl/Android.bp
@@ -0,0 +1,15 @@
+cc_library_shared {
+    name: "android.hardware.tests.libbinder",
+
+    srcs: ["android/tests/binder/IBenchmark.aidl"],
+
+    aidl: {
+        export_aidl_headers: true,
+    },
+
+    shared_libs: [
+        "libbinder",
+        "libutils",
+    ],
+
+}
diff --git a/tests/libhwbinder/aidl/Android.mk b/tests/libhwbinder/aidl/Android.mk
deleted file mode 100644
index 1c175d8..0000000
--- a/tests/libhwbinder/aidl/Android.mk
+++ /dev/null
@@ -1,13 +0,0 @@
-LOCAL_PATH := $(call my-dir)
-
-include $(CLEAR_VARS)
-LOCAL_MODULE := android.hardware.tests.libbinder
-LOCAL_MODULE_CLASS := SHARED_LIBRARIES
-
-LOCAL_SRC_FILES := android/tests/binder/IBenchmark.aidl
-
-LOCAL_SHARED_LIBRARIES := \
-  libbinder \
-  libutils \
-
-include $(BUILD_SHARED_LIBRARY)
diff --git a/tests/memory/1.0/Android.bp b/tests/memory/1.0/Android.bp
index ed64f5d..5a62896 100644
--- a/tests/memory/1.0/Android.bp
+++ b/tests/memory/1.0/Android.bp
@@ -37,6 +37,7 @@
 
 cc_library_shared {
     name: "android.hardware.tests.memory@1.0",
+    defaults: ["hidl-module-defaults"],
     generated_sources: ["android.hardware.tests.memory@1.0_genc++"],
     generated_headers: ["android.hardware.tests.memory@1.0_genc++_headers"],
     export_generated_headers: ["android.hardware.tests.memory@1.0_genc++_headers"],
diff --git a/tests/msgq/1.0/Android.bp b/tests/msgq/1.0/Android.bp
index 04a64f6..19ff89c 100644
--- a/tests/msgq/1.0/Android.bp
+++ b/tests/msgq/1.0/Android.bp
@@ -44,6 +44,7 @@
 
 cc_library_shared {
     name: "android.hardware.tests.msgq@1.0",
+    defaults: ["hidl-module-defaults"],
     generated_sources: ["android.hardware.tests.msgq@1.0_genc++"],
     generated_headers: ["android.hardware.tests.msgq@1.0_genc++_headers"],
     export_generated_headers: ["android.hardware.tests.msgq@1.0_genc++_headers"],
diff --git a/tests/pointer/1.0/Android.bp b/tests/pointer/1.0/Android.bp
index ae0d0c8..37fea94 100644
--- a/tests/pointer/1.0/Android.bp
+++ b/tests/pointer/1.0/Android.bp
@@ -44,6 +44,7 @@
 
 cc_library_shared {
     name: "android.hardware.tests.pointer@1.0",
+    defaults: ["hidl-module-defaults"],
     generated_sources: ["android.hardware.tests.pointer@1.0_genc++"],
     generated_headers: ["android.hardware.tests.pointer@1.0_genc++_headers"],
     export_generated_headers: ["android.hardware.tests.pointer@1.0_genc++_headers"],
diff --git a/tests/versioning/1.0/Android.bp b/tests/versioning/1.0/Android.bp
deleted file mode 100644
index c3e4b57..0000000
--- a/tests/versioning/1.0/Android.bp
+++ /dev/null
@@ -1,58 +0,0 @@
-// This file is autogenerated by hidl-gen. Do not edit manually.
-
-filegroup {
-    name: "android.hardware.tests.versioning@1.0_hal",
-    srcs: [
-        "IFoo.hal",
-    ],
-}
-
-genrule {
-    name: "android.hardware.tests.versioning@1.0_genc++",
-    tools: ["hidl-gen"],
-    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-sources -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.versioning@1.0",
-    srcs: [
-        ":android.hardware.tests.versioning@1.0_hal",
-    ],
-    out: [
-        "android/hardware/tests/versioning/1.0/FooAll.cpp",
-    ],
-}
-
-genrule {
-    name: "android.hardware.tests.versioning@1.0_genc++_headers",
-    tools: ["hidl-gen"],
-    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-headers -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.versioning@1.0",
-    srcs: [
-        ":android.hardware.tests.versioning@1.0_hal",
-    ],
-    out: [
-        "android/hardware/tests/versioning/1.0/IFoo.h",
-        "android/hardware/tests/versioning/1.0/IHwFoo.h",
-        "android/hardware/tests/versioning/1.0/BnHwFoo.h",
-        "android/hardware/tests/versioning/1.0/BpHwFoo.h",
-        "android/hardware/tests/versioning/1.0/BsFoo.h",
-    ],
-}
-
-cc_library_shared {
-    name: "android.hardware.tests.versioning@1.0",
-    generated_sources: ["android.hardware.tests.versioning@1.0_genc++"],
-    generated_headers: ["android.hardware.tests.versioning@1.0_genc++_headers"],
-    export_generated_headers: ["android.hardware.tests.versioning@1.0_genc++_headers"],
-    vendor_available: true,
-    shared_libs: [
-        "libhidlbase",
-        "libhidltransport",
-        "libhwbinder",
-        "liblog",
-        "libutils",
-        "libcutils",
-    ],
-    export_shared_lib_headers: [
-        "libhidlbase",
-        "libhidltransport",
-        "libhwbinder",
-        "libutils",
-    ],
-}
diff --git a/tests/versioning/1.0/Android.mk b/tests/versioning/1.0/Android.mk
deleted file mode 100644
index 81ffd08..0000000
--- a/tests/versioning/1.0/Android.mk
+++ /dev/null
@@ -1,76 +0,0 @@
-# This file is autogenerated by hidl-gen. Do not edit manually.
-
-LOCAL_PATH := $(call my-dir)
-
-################################################################################
-
-include $(CLEAR_VARS)
-LOCAL_MODULE := android.hardware.tests.versioning-V1.0-java
-LOCAL_MODULE_CLASS := JAVA_LIBRARIES
-
-intermediates := $(call local-generated-sources-dir, COMMON)
-
-HIDL := $(HOST_OUT_EXECUTABLES)/hidl-gen$(HOST_EXECUTABLE_SUFFIX)
-
-LOCAL_JAVA_LIBRARIES := \
-    android.hidl.base-V1.0-java \
-
-
-#
-# Build IFoo.hal
-#
-GEN := $(intermediates)/android/hardware/tests/versioning/V1_0/IFoo.java
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IFoo.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-        -Ljava \
-        -randroid.hardware:hardware/interfaces \
-        -randroid.hidl:system/libhidl/transport \
-        android.hardware.tests.versioning@1.0::IFoo
-
-$(GEN): $(LOCAL_PATH)/IFoo.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-include $(BUILD_JAVA_LIBRARY)
-
-
-################################################################################
-
-include $(CLEAR_VARS)
-LOCAL_MODULE := android.hardware.tests.versioning-V1.0-java-static
-LOCAL_MODULE_CLASS := JAVA_LIBRARIES
-
-intermediates := $(call local-generated-sources-dir, COMMON)
-
-HIDL := $(HOST_OUT_EXECUTABLES)/hidl-gen$(HOST_EXECUTABLE_SUFFIX)
-
-LOCAL_STATIC_JAVA_LIBRARIES := \
-    android.hidl.base-V1.0-java-static \
-
-
-#
-# Build IFoo.hal
-#
-GEN := $(intermediates)/android/hardware/tests/versioning/V1_0/IFoo.java
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IFoo.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-        -Ljava \
-        -randroid.hardware:hardware/interfaces \
-        -randroid.hidl:system/libhidl/transport \
-        android.hardware.tests.versioning@1.0::IFoo
-
-$(GEN): $(LOCAL_PATH)/IFoo.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-include $(BUILD_STATIC_JAVA_LIBRARY)
-
-
-
-include $(call all-makefiles-under,$(LOCAL_PATH))
diff --git a/tests/versioning/2.2/Android.bp b/tests/versioning/2.2/Android.bp
deleted file mode 100644
index 624a61e..0000000
--- a/tests/versioning/2.2/Android.bp
+++ /dev/null
@@ -1,65 +0,0 @@
-// This file is autogenerated by hidl-gen. Do not edit manually.
-
-filegroup {
-    name: "android.hardware.tests.versioning@2.2_hal",
-    srcs: [
-        "IBar.hal",
-        "IFoo.hal",
-    ],
-}
-
-genrule {
-    name: "android.hardware.tests.versioning@2.2_genc++",
-    tools: ["hidl-gen"],
-    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-sources -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.versioning@2.2",
-    srcs: [
-        ":android.hardware.tests.versioning@2.2_hal",
-    ],
-    out: [
-        "android/hardware/tests/versioning/2.2/BarAll.cpp",
-        "android/hardware/tests/versioning/2.2/FooAll.cpp",
-    ],
-}
-
-genrule {
-    name: "android.hardware.tests.versioning@2.2_genc++_headers",
-    tools: ["hidl-gen"],
-    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-headers -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.versioning@2.2",
-    srcs: [
-        ":android.hardware.tests.versioning@2.2_hal",
-    ],
-    out: [
-        "android/hardware/tests/versioning/2.2/IBar.h",
-        "android/hardware/tests/versioning/2.2/IHwBar.h",
-        "android/hardware/tests/versioning/2.2/BnHwBar.h",
-        "android/hardware/tests/versioning/2.2/BpHwBar.h",
-        "android/hardware/tests/versioning/2.2/BsBar.h",
-        "android/hardware/tests/versioning/2.2/IFoo.h",
-        "android/hardware/tests/versioning/2.2/IHwFoo.h",
-        "android/hardware/tests/versioning/2.2/BnHwFoo.h",
-        "android/hardware/tests/versioning/2.2/BpHwFoo.h",
-        "android/hardware/tests/versioning/2.2/BsFoo.h",
-    ],
-}
-
-cc_library_shared {
-    name: "android.hardware.tests.versioning@2.2",
-    generated_sources: ["android.hardware.tests.versioning@2.2_genc++"],
-    generated_headers: ["android.hardware.tests.versioning@2.2_genc++_headers"],
-    export_generated_headers: ["android.hardware.tests.versioning@2.2_genc++_headers"],
-    vendor_available: true,
-    shared_libs: [
-        "libhidlbase",
-        "libhidltransport",
-        "libhwbinder",
-        "liblog",
-        "libutils",
-        "libcutils",
-    ],
-    export_shared_lib_headers: [
-        "libhidlbase",
-        "libhidltransport",
-        "libhwbinder",
-        "libutils",
-    ],
-}
diff --git a/tests/versioning/2.2/Android.mk b/tests/versioning/2.2/Android.mk
deleted file mode 100644
index 4fccce6..0000000
--- a/tests/versioning/2.2/Android.mk
+++ /dev/null
@@ -1,114 +0,0 @@
-# This file is autogenerated by hidl-gen. Do not edit manually.
-
-LOCAL_PATH := $(call my-dir)
-
-################################################################################
-
-include $(CLEAR_VARS)
-LOCAL_MODULE := android.hardware.tests.versioning-V2.2-java
-LOCAL_MODULE_CLASS := JAVA_LIBRARIES
-
-intermediates := $(call local-generated-sources-dir, COMMON)
-
-HIDL := $(HOST_OUT_EXECUTABLES)/hidl-gen$(HOST_EXECUTABLE_SUFFIX)
-
-LOCAL_JAVA_LIBRARIES := \
-    android.hidl.base-V1.0-java \
-
-
-#
-# Build IBar.hal
-#
-GEN := $(intermediates)/android/hardware/tests/versioning/V2_2/IBar.java
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IBar.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-        -Ljava \
-        -randroid.hardware:hardware/interfaces \
-        -randroid.hidl:system/libhidl/transport \
-        android.hardware.tests.versioning@2.2::IBar
-
-$(GEN): $(LOCAL_PATH)/IBar.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-
-#
-# Build IFoo.hal
-#
-GEN := $(intermediates)/android/hardware/tests/versioning/V2_2/IFoo.java
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IFoo.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-        -Ljava \
-        -randroid.hardware:hardware/interfaces \
-        -randroid.hidl:system/libhidl/transport \
-        android.hardware.tests.versioning@2.2::IFoo
-
-$(GEN): $(LOCAL_PATH)/IFoo.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-include $(BUILD_JAVA_LIBRARY)
-
-
-################################################################################
-
-include $(CLEAR_VARS)
-LOCAL_MODULE := android.hardware.tests.versioning-V2.2-java-static
-LOCAL_MODULE_CLASS := JAVA_LIBRARIES
-
-intermediates := $(call local-generated-sources-dir, COMMON)
-
-HIDL := $(HOST_OUT_EXECUTABLES)/hidl-gen$(HOST_EXECUTABLE_SUFFIX)
-
-LOCAL_STATIC_JAVA_LIBRARIES := \
-    android.hidl.base-V1.0-java-static \
-
-
-#
-# Build IBar.hal
-#
-GEN := $(intermediates)/android/hardware/tests/versioning/V2_2/IBar.java
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IBar.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-        -Ljava \
-        -randroid.hardware:hardware/interfaces \
-        -randroid.hidl:system/libhidl/transport \
-        android.hardware.tests.versioning@2.2::IBar
-
-$(GEN): $(LOCAL_PATH)/IBar.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-
-#
-# Build IFoo.hal
-#
-GEN := $(intermediates)/android/hardware/tests/versioning/V2_2/IFoo.java
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IFoo.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-        -Ljava \
-        -randroid.hardware:hardware/interfaces \
-        -randroid.hidl:system/libhidl/transport \
-        android.hardware.tests.versioning@2.2::IFoo
-
-$(GEN): $(LOCAL_PATH)/IFoo.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-include $(BUILD_STATIC_JAVA_LIBRARY)
-
-
-
-include $(call all-makefiles-under,$(LOCAL_PATH))
diff --git a/tests/versioning/2.2/IBar.hal b/tests/versioning/2.2/IBar.hal
deleted file mode 100644
index e28ce19..0000000
--- a/tests/versioning/2.2/IBar.hal
+++ /dev/null
@@ -1,21 +0,0 @@
-/*
- * Copyright (C) 2016 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 android.hardware.tests.versioning@2.2;
-
-interface IBar {
-
-};
diff --git a/tests/versioning/2.2/IFoo.hal b/tests/versioning/2.2/IFoo.hal
deleted file mode 100644
index d6b8782..0000000
--- a/tests/versioning/2.2/IFoo.hal
+++ /dev/null
@@ -1,21 +0,0 @@
-/*
- * Copyright (C) 2016 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 android.hardware.tests.versioning@2.2;
-
-interface IFoo {
-
-};
diff --git a/tests/versioning/2.3/Android.bp b/tests/versioning/2.3/Android.bp
deleted file mode 100644
index 247b2ff..0000000
--- a/tests/versioning/2.3/Android.bp
+++ /dev/null
@@ -1,76 +0,0 @@
-// This file is autogenerated by hidl-gen. Do not edit manually.
-
-filegroup {
-    name: "android.hardware.tests.versioning@2.3_hal",
-    srcs: [
-        "IBar.hal",
-        "IBaz.hal",
-        "IFoo.hal",
-    ],
-}
-
-genrule {
-    name: "android.hardware.tests.versioning@2.3_genc++",
-    tools: ["hidl-gen"],
-    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-sources -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.versioning@2.3",
-    srcs: [
-        ":android.hardware.tests.versioning@2.3_hal",
-    ],
-    out: [
-        "android/hardware/tests/versioning/2.3/BarAll.cpp",
-        "android/hardware/tests/versioning/2.3/BazAll.cpp",
-        "android/hardware/tests/versioning/2.3/FooAll.cpp",
-    ],
-}
-
-genrule {
-    name: "android.hardware.tests.versioning@2.3_genc++_headers",
-    tools: ["hidl-gen"],
-    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-headers -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.versioning@2.3",
-    srcs: [
-        ":android.hardware.tests.versioning@2.3_hal",
-    ],
-    out: [
-        "android/hardware/tests/versioning/2.3/IBar.h",
-        "android/hardware/tests/versioning/2.3/IHwBar.h",
-        "android/hardware/tests/versioning/2.3/BnHwBar.h",
-        "android/hardware/tests/versioning/2.3/BpHwBar.h",
-        "android/hardware/tests/versioning/2.3/BsBar.h",
-        "android/hardware/tests/versioning/2.3/IBaz.h",
-        "android/hardware/tests/versioning/2.3/IHwBaz.h",
-        "android/hardware/tests/versioning/2.3/BnHwBaz.h",
-        "android/hardware/tests/versioning/2.3/BpHwBaz.h",
-        "android/hardware/tests/versioning/2.3/BsBaz.h",
-        "android/hardware/tests/versioning/2.3/IFoo.h",
-        "android/hardware/tests/versioning/2.3/IHwFoo.h",
-        "android/hardware/tests/versioning/2.3/BnHwFoo.h",
-        "android/hardware/tests/versioning/2.3/BpHwFoo.h",
-        "android/hardware/tests/versioning/2.3/BsFoo.h",
-    ],
-}
-
-cc_library_shared {
-    name: "android.hardware.tests.versioning@2.3",
-    generated_sources: ["android.hardware.tests.versioning@2.3_genc++"],
-    generated_headers: ["android.hardware.tests.versioning@2.3_genc++_headers"],
-    export_generated_headers: ["android.hardware.tests.versioning@2.3_genc++_headers"],
-    vendor_available: true,
-    shared_libs: [
-        "libhidlbase",
-        "libhidltransport",
-        "libhwbinder",
-        "liblog",
-        "libutils",
-        "libcutils",
-        "android.hardware.tests.versioning@1.0",
-        "android.hardware.tests.versioning@2.2",
-    ],
-    export_shared_lib_headers: [
-        "libhidlbase",
-        "libhidltransport",
-        "libhwbinder",
-        "libutils",
-        "android.hardware.tests.versioning@1.0",
-        "android.hardware.tests.versioning@2.2",
-    ],
-}
diff --git a/tests/versioning/2.3/Android.mk b/tests/versioning/2.3/Android.mk
deleted file mode 100644
index 36326d6..0000000
--- a/tests/versioning/2.3/Android.mk
+++ /dev/null
@@ -1,156 +0,0 @@
-# This file is autogenerated by hidl-gen. Do not edit manually.
-
-LOCAL_PATH := $(call my-dir)
-
-################################################################################
-
-include $(CLEAR_VARS)
-LOCAL_MODULE := android.hardware.tests.versioning-V2.3-java
-LOCAL_MODULE_CLASS := JAVA_LIBRARIES
-
-intermediates := $(call local-generated-sources-dir, COMMON)
-
-HIDL := $(HOST_OUT_EXECUTABLES)/hidl-gen$(HOST_EXECUTABLE_SUFFIX)
-
-LOCAL_JAVA_LIBRARIES := \
-    android.hardware.tests.versioning-V1.0-java \
-    android.hardware.tests.versioning-V2.2-java \
-    android.hidl.base-V1.0-java \
-
-
-#
-# Build IBar.hal
-#
-GEN := $(intermediates)/android/hardware/tests/versioning/V2_3/IBar.java
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IBar.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-        -Ljava \
-        -randroid.hardware:hardware/interfaces \
-        -randroid.hidl:system/libhidl/transport \
-        android.hardware.tests.versioning@2.3::IBar
-
-$(GEN): $(LOCAL_PATH)/IBar.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-
-#
-# Build IBaz.hal
-#
-GEN := $(intermediates)/android/hardware/tests/versioning/V2_3/IBaz.java
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IBaz.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-        -Ljava \
-        -randroid.hardware:hardware/interfaces \
-        -randroid.hidl:system/libhidl/transport \
-        android.hardware.tests.versioning@2.3::IBaz
-
-$(GEN): $(LOCAL_PATH)/IBaz.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-
-#
-# Build IFoo.hal
-#
-GEN := $(intermediates)/android/hardware/tests/versioning/V2_3/IFoo.java
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IFoo.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-        -Ljava \
-        -randroid.hardware:hardware/interfaces \
-        -randroid.hidl:system/libhidl/transport \
-        android.hardware.tests.versioning@2.3::IFoo
-
-$(GEN): $(LOCAL_PATH)/IFoo.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-include $(BUILD_JAVA_LIBRARY)
-
-
-################################################################################
-
-include $(CLEAR_VARS)
-LOCAL_MODULE := android.hardware.tests.versioning-V2.3-java-static
-LOCAL_MODULE_CLASS := JAVA_LIBRARIES
-
-intermediates := $(call local-generated-sources-dir, COMMON)
-
-HIDL := $(HOST_OUT_EXECUTABLES)/hidl-gen$(HOST_EXECUTABLE_SUFFIX)
-
-LOCAL_STATIC_JAVA_LIBRARIES := \
-    android.hardware.tests.versioning-V1.0-java-static \
-    android.hardware.tests.versioning-V2.2-java-static \
-    android.hidl.base-V1.0-java-static \
-
-
-#
-# Build IBar.hal
-#
-GEN := $(intermediates)/android/hardware/tests/versioning/V2_3/IBar.java
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IBar.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-        -Ljava \
-        -randroid.hardware:hardware/interfaces \
-        -randroid.hidl:system/libhidl/transport \
-        android.hardware.tests.versioning@2.3::IBar
-
-$(GEN): $(LOCAL_PATH)/IBar.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-
-#
-# Build IBaz.hal
-#
-GEN := $(intermediates)/android/hardware/tests/versioning/V2_3/IBaz.java
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IBaz.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-        -Ljava \
-        -randroid.hardware:hardware/interfaces \
-        -randroid.hidl:system/libhidl/transport \
-        android.hardware.tests.versioning@2.3::IBaz
-
-$(GEN): $(LOCAL_PATH)/IBaz.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-
-#
-# Build IFoo.hal
-#
-GEN := $(intermediates)/android/hardware/tests/versioning/V2_3/IFoo.java
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IFoo.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-        -Ljava \
-        -randroid.hardware:hardware/interfaces \
-        -randroid.hidl:system/libhidl/transport \
-        android.hardware.tests.versioning@2.3::IFoo
-
-$(GEN): $(LOCAL_PATH)/IFoo.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-include $(BUILD_STATIC_JAVA_LIBRARY)
-
-
-
-include $(call all-makefiles-under,$(LOCAL_PATH))
diff --git a/tests/versioning/2.3/IBar.hal b/tests/versioning/2.3/IBar.hal
deleted file mode 100644
index fe38e76..0000000
--- a/tests/versioning/2.3/IBar.hal
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
- * Copyright (C) 2016 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 android.hardware.tests.versioning@2.3;
-
-import @2.2::IBar;
-
-// Must extend @2.2::IBar.
-interface IBar extends @2.2::IBar {
-
-};
diff --git a/tests/versioning/2.3/IBaz.hal b/tests/versioning/2.3/IBaz.hal
deleted file mode 100644
index e28792c..0000000
--- a/tests/versioning/2.3/IBaz.hal
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
- * Copyright (C) 2016 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 android.hardware.tests.versioning@2.3;
-
-import @1.0::IFoo;
-
-interface IBaz extends @1.0::IFoo {
-
-};
diff --git a/tests/versioning/2.3/IFoo.hal b/tests/versioning/2.3/IFoo.hal
deleted file mode 100644
index 2c76500..0000000
--- a/tests/versioning/2.3/IFoo.hal
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
- * Copyright (C) 2016 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 android.hardware.tests.versioning@2.3;
-
-import @2.2::IFoo;
-
-// Must extend @2.2::IFoo.
-interface IFoo extends @2.2::IFoo {
-
-};
diff --git a/tests/versioning/2.4/Android.bp b/tests/versioning/2.4/Android.bp
deleted file mode 100644
index ff9ca1f..0000000
--- a/tests/versioning/2.4/Android.bp
+++ /dev/null
@@ -1,62 +0,0 @@
-// This file is autogenerated by hidl-gen. Do not edit manually.
-
-filegroup {
-    name: "android.hardware.tests.versioning@2.4_hal",
-    srcs: [
-        "IFoo.hal",
-    ],
-}
-
-genrule {
-    name: "android.hardware.tests.versioning@2.4_genc++",
-    tools: ["hidl-gen"],
-    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-sources -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.versioning@2.4",
-    srcs: [
-        ":android.hardware.tests.versioning@2.4_hal",
-    ],
-    out: [
-        "android/hardware/tests/versioning/2.4/FooAll.cpp",
-    ],
-}
-
-genrule {
-    name: "android.hardware.tests.versioning@2.4_genc++_headers",
-    tools: ["hidl-gen"],
-    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-headers -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.versioning@2.4",
-    srcs: [
-        ":android.hardware.tests.versioning@2.4_hal",
-    ],
-    out: [
-        "android/hardware/tests/versioning/2.4/IFoo.h",
-        "android/hardware/tests/versioning/2.4/IHwFoo.h",
-        "android/hardware/tests/versioning/2.4/BnHwFoo.h",
-        "android/hardware/tests/versioning/2.4/BpHwFoo.h",
-        "android/hardware/tests/versioning/2.4/BsFoo.h",
-    ],
-}
-
-cc_library_shared {
-    name: "android.hardware.tests.versioning@2.4",
-    generated_sources: ["android.hardware.tests.versioning@2.4_genc++"],
-    generated_headers: ["android.hardware.tests.versioning@2.4_genc++_headers"],
-    export_generated_headers: ["android.hardware.tests.versioning@2.4_genc++_headers"],
-    vendor_available: true,
-    shared_libs: [
-        "libhidlbase",
-        "libhidltransport",
-        "libhwbinder",
-        "liblog",
-        "libutils",
-        "libcutils",
-        "android.hardware.tests.versioning@2.2",
-        "android.hardware.tests.versioning@2.3",
-    ],
-    export_shared_lib_headers: [
-        "libhidlbase",
-        "libhidltransport",
-        "libhwbinder",
-        "libutils",
-        "android.hardware.tests.versioning@2.2",
-        "android.hardware.tests.versioning@2.3",
-    ],
-}
diff --git a/tests/versioning/2.4/Android.mk b/tests/versioning/2.4/Android.mk
deleted file mode 100644
index c716172..0000000
--- a/tests/versioning/2.4/Android.mk
+++ /dev/null
@@ -1,80 +0,0 @@
-# This file is autogenerated by hidl-gen. Do not edit manually.
-
-LOCAL_PATH := $(call my-dir)
-
-################################################################################
-
-include $(CLEAR_VARS)
-LOCAL_MODULE := android.hardware.tests.versioning-V2.4-java
-LOCAL_MODULE_CLASS := JAVA_LIBRARIES
-
-intermediates := $(call local-generated-sources-dir, COMMON)
-
-HIDL := $(HOST_OUT_EXECUTABLES)/hidl-gen$(HOST_EXECUTABLE_SUFFIX)
-
-LOCAL_JAVA_LIBRARIES := \
-    android.hardware.tests.versioning-V2.2-java \
-    android.hardware.tests.versioning-V2.3-java \
-    android.hidl.base-V1.0-java \
-
-
-#
-# Build IFoo.hal
-#
-GEN := $(intermediates)/android/hardware/tests/versioning/V2_4/IFoo.java
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IFoo.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-        -Ljava \
-        -randroid.hardware:hardware/interfaces \
-        -randroid.hidl:system/libhidl/transport \
-        android.hardware.tests.versioning@2.4::IFoo
-
-$(GEN): $(LOCAL_PATH)/IFoo.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-include $(BUILD_JAVA_LIBRARY)
-
-
-################################################################################
-
-include $(CLEAR_VARS)
-LOCAL_MODULE := android.hardware.tests.versioning-V2.4-java-static
-LOCAL_MODULE_CLASS := JAVA_LIBRARIES
-
-intermediates := $(call local-generated-sources-dir, COMMON)
-
-HIDL := $(HOST_OUT_EXECUTABLES)/hidl-gen$(HOST_EXECUTABLE_SUFFIX)
-
-LOCAL_STATIC_JAVA_LIBRARIES := \
-    android.hardware.tests.versioning-V2.2-java-static \
-    android.hardware.tests.versioning-V2.3-java-static \
-    android.hidl.base-V1.0-java-static \
-
-
-#
-# Build IFoo.hal
-#
-GEN := $(intermediates)/android/hardware/tests/versioning/V2_4/IFoo.java
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IFoo.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-        -Ljava \
-        -randroid.hardware:hardware/interfaces \
-        -randroid.hidl:system/libhidl/transport \
-        android.hardware.tests.versioning@2.4::IFoo
-
-$(GEN): $(LOCAL_PATH)/IFoo.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-include $(BUILD_STATIC_JAVA_LIBRARY)
-
-
-
-include $(call all-makefiles-under,$(LOCAL_PATH))
diff --git a/tetheroffload/config/1.0/Android.bp b/tetheroffload/config/1.0/Android.bp
index ddf7c22..7beefbf 100644
--- a/tetheroffload/config/1.0/Android.bp
+++ b/tetheroffload/config/1.0/Android.bp
@@ -37,6 +37,7 @@
 
 cc_library_shared {
     name: "android.hardware.tetheroffload.config@1.0",
+    defaults: ["hidl-module-defaults"],
     generated_sources: ["android.hardware.tetheroffload.config@1.0_genc++"],
     generated_headers: ["android.hardware.tetheroffload.config@1.0_genc++_headers"],
     export_generated_headers: ["android.hardware.tetheroffload.config@1.0_genc++_headers"],
diff --git a/tetheroffload/control/1.0/Android.bp b/tetheroffload/control/1.0/Android.bp
index 6f50446..d351edb 100644
--- a/tetheroffload/control/1.0/Android.bp
+++ b/tetheroffload/control/1.0/Android.bp
@@ -48,6 +48,7 @@
 
 cc_library_shared {
     name: "android.hardware.tetheroffload.control@1.0",
+    defaults: ["hidl-module-defaults"],
     generated_sources: ["android.hardware.tetheroffload.control@1.0_genc++"],
     generated_headers: ["android.hardware.tetheroffload.control@1.0_genc++_headers"],
     export_generated_headers: ["android.hardware.tetheroffload.control@1.0_genc++_headers"],
diff --git a/wifi/1.0/Android.bp b/wifi/1.0/Android.bp
index 3a44608..c8b694c 100644
--- a/wifi/1.0/Android.bp
+++ b/wifi/1.0/Android.bp
@@ -125,6 +125,7 @@
 
 cc_library_shared {
     name: "android.hardware.wifi@1.0",
+    defaults: ["hidl-module-defaults"],
     generated_sources: ["android.hardware.wifi@1.0_genc++"],
     generated_headers: ["android.hardware.wifi@1.0_genc++_headers"],
     export_generated_headers: ["android.hardware.wifi@1.0_genc++_headers"],
diff --git a/wifi/1.0/default/Android.mk b/wifi/1.0/default/Android.mk
index 13f6cc1..2564937 100644
--- a/wifi/1.0/default/Android.mk
+++ b/wifi/1.0/default/Android.mk
@@ -46,7 +46,6 @@
     libnl \
     libutils \
     libwifi-hal \
-    libwifi-system \
-    libcld80211
+    libwifi-system
 LOCAL_INIT_RC := android.hardware.wifi@1.0-service.rc
 include $(BUILD_EXECUTABLE)
diff --git a/wifi/supplicant/1.0/Android.bp b/wifi/supplicant/1.0/Android.bp
index c692f9a..9242fb6 100644
--- a/wifi/supplicant/1.0/Android.bp
+++ b/wifi/supplicant/1.0/Android.bp
@@ -118,6 +118,7 @@
 
 cc_library_shared {
     name: "android.hardware.wifi.supplicant@1.0",
+    defaults: ["hidl-module-defaults"],
     generated_sources: ["android.hardware.wifi.supplicant@1.0_genc++"],
     generated_headers: ["android.hardware.wifi.supplicant@1.0_genc++_headers"],
     export_generated_headers: ["android.hardware.wifi.supplicant@1.0_genc++_headers"],