Emulator: support querying device identity

Current reference-ril only support CDMA type;
Changed it to support Non-CDMS type (such as GSM) as well.

BUG: 72886046
Test: run cts -m CtsTelephonyTestCases  -t
android.telephony.cts.TelephonyManagerTest#testGetImei

Change-Id: I8a5f61d96568b22f990da2004248436fcef7a51a
Signed-off-by: Roman Kiryanov <rkir@google.com>
diff --git a/reference-ril/reference-ril.c b/reference-ril/reference-ril.c
index b04db97..4697f90 100644
--- a/reference-ril/reference-ril.c
+++ b/reference-ril/reference-ril.c
@@ -1200,7 +1200,7 @@
     free(responseStr);
 }
 
-static void requestCdmaDeviceIdentity(int request __unused, void *data __unused,
+static void requestDeviceIdentity(int request __unused, void *data __unused,
                                         size_t datalen __unused, RIL_Token t)
 {
     int err;
@@ -1224,7 +1224,11 @@
         RIL_onRequestComplete(t, RIL_E_GENERIC_FAILURE, NULL, 0);
         return;
     } else {
-        responseStr[3] = p_response->p_intermediates->line;
+        if (TECH_BIT(sMdmInfo) == MDM_CDMA) {
+            responseStr[3] = p_response->p_intermediates->line;
+        } else {
+            responseStr[0] = p_response->p_intermediates->line;
+        }
     }
 
     RIL_onRequestComplete(t, RIL_E_SUCCESS, responseStr, count*sizeof(char*));
@@ -2723,7 +2727,7 @@
             break;
 
         case RIL_REQUEST_DEVICE_IDENTITY:
-            requestCdmaDeviceIdentity(request, data, datalen, t);
+            requestDeviceIdentity(request, data, datalen, t);
             break;
 
         case RIL_REQUEST_CDMA_SUBSCRIPTION: