summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTreehugger Robot <treehugger-gerrit@google.com>2017-04-04 22:01:37 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2017-04-04 22:01:37 +0000
commit25f66a9aa9f0556c0a98d2d11f709d807d601b2f (patch)
tree6b9f0a27b8d0f04195df720cb14f081ca75cb2cc
parent35a9183f59b1dc7c5d93acaa715b698207e783d9 (diff)
parent7955c43727b86f559ade21de682035b9f9c4cc4b (diff)
downloadandroid_hardware_ril-25f66a9aa9f0556c0a98d2d11f709d807d601b2f.tar.gz
android_hardware_ril-25f66a9aa9f0556c0a98d2d11f709d807d601b2f.tar.bz2
android_hardware_ril-25f66a9aa9f0556c0a98d2d11f709d807d601b2f.zip
Merge "Change radio related service names to slot1, slot2, slot3..."
-rw-r--r--include/telephony/ril.h2
-rw-r--r--libril/RilSapSocket.cpp60
-rw-r--r--libril/ril.cpp102
-rw-r--r--libril/ril_internal.h16
-rw-r--r--libril/ril_service.cpp23
-rw-r--r--libril/sap_service.cpp8
-rw-r--r--rild/rild.c10
7 files changed, 38 insertions, 183 deletions
diff --git a/include/telephony/ril.h b/include/telephony/ril.h
index 74ee99a..33f8df0 100644
--- a/include/telephony/ril.h
+++ b/include/telephony/ril.h
@@ -91,7 +91,7 @@ extern "C" {
#define CDMA_NUMBER_INFO_BUFFER_LENGTH 81
#define MAX_RILDS 3
-#define MAX_SOCKET_NAME_LENGTH 6
+#define MAX_SERVICE_NAME_LENGTH 6
#define MAX_CLIENT_ID_LENGTH 2
#define MAX_DEBUG_SOCKET_NAME_LENGTH 12
#define MAX_QEMU_PIPE_NAME_LENGTH 11
diff --git a/libril/RilSapSocket.cpp b/libril/RilSapSocket.cpp
index 20df3a2..02db4ad 100644
--- a/libril/RilSapSocket.cpp
+++ b/libril/RilSapSocket.cpp
@@ -30,15 +30,6 @@
static RilSapSocket::RilSapSocketList *head = NULL;
-void ril_sap_on_request_complete (
- RIL_Token t, RIL_Errno e,
- void *response, size_t responselen
-);
-
-void ril_sap_on_unsolicited_response (
- int unsolResponse, const void *data,
- size_t datalen
-);
extern "C" void
RIL_requestTimedCallback (RIL_TimedCallback callback, void *param,
const struct timeval *relativeTime);
@@ -121,14 +112,14 @@ RilSapSocket *RilSapSocket::getSocketById(RIL_SOCKET_ID socketId) {
void RilSapSocket::initSapSocket(const char *socketName,
RIL_RadioFunctions *uimFuncs) {
- if (strcmp(socketName, "sap_uim_socket1") == 0) {
+ if (strcmp(socketName, RIL1_SERVICE_NAME) == 0) {
if(!SocketExists(socketName)) {
addSocketToList(socketName, RIL_SOCKET_1, uimFuncs);
}
}
#if (SIM_COUNT >= 2)
- if (strcmp(socketName, "sap_uim_socket2") == 0) {
+ if (strcmp(socketName, RIL2_SERVICE_NAME) == 0) {
if(!SocketExists(socketName)) {
addSocketToList(socketName, RIL_SOCKET_2, uimFuncs);
}
@@ -136,7 +127,7 @@ void RilSapSocket::initSapSocket(const char *socketName,
#endif
#if (SIM_COUNT >= 3)
- if (strcmp(socketName, "sap_uim_socket3") == 0) {
+ if (strcmp(socketName, RIL3_SERVICE_NAME) == 0) {
if(!SocketExists(socketName)) {
addSocketToList(socketName, RIL_SOCKET_3, uimFuncs);
}
@@ -144,7 +135,7 @@ void RilSapSocket::initSapSocket(const char *socketName,
#endif
#if (SIM_COUNT >= 4)
- if (strcmp(socketName, "sap_uim_socket4") == 0) {
+ if (strcmp(socketName, RIL4_SERVICE_NAME) == 0) {
if(!SocketExists(socketName)) {
addSocketToList(socketName, RIL_SOCKET_4, uimFuncs);
}
@@ -205,49 +196,6 @@ RilSapSocket::RilSapSocket(const char *socketName,
}
}
-#define BYTES_PER_LINE 16
-
-#define NIBBLE_TO_HEX(n) ({ \
- uint8_t __n = (uint8_t) (n) & 0x0f; \
- __nibble >= 10 ? 'A' + __n - 10: '0' + __n; \
-})
-
-#define HEX_HIGH(b) ({ \
- uint8_t __b = (uint8_t) (b); \
- uint8_t __nibble = (__b >> 4) & 0x0f; \
- NIBBLE_TO_HEX(__nibble); \
-})
-
-#define HEX_LOW(b) ({ \
- uint8_t __b = (uint8_t) (b); \
- uint8_t __nibble = __b & 0x0f; \
- NIBBLE_TO_HEX(__nibble); \
-})
-
-void log_hex(const char *who, const uint8_t *buffer, int length) {
- char out[80];
- int source = 0;
- int dest = 0;
- int dest_len = sizeof(out);
- int per_line = 0;
-
- do {
- dest += sprintf(out, "%8.8s [%8.8x] ", who, source);
- for(; source < length && dest_len - dest > 3 && per_line < BYTES_PER_LINE; source++,
- per_line ++) {
- out[dest++] = HEX_HIGH(buffer[source]);
- out[dest++] = HEX_LOW(buffer[source]);
- out[dest++] = ' ';
- }
- if (dest < dest_len && (per_line == BYTES_PER_LINE || source >= length)) {
- out[dest++] = 0;
- per_line = 0;
- dest = 0;
- RLOGD("%s\n", out);
- }
- } while(source < length && dest < dest_len);
-}
-
void RilSapSocket::dispatchRequest(MsgHeader *req) {
// SapSocketRequest will be deallocated in onRequestComplete()
SapSocketRequest* currRequest=(SapSocketRequest*)malloc(sizeof(SapSocketRequest));
diff --git a/libril/ril.cpp b/libril/ril.cpp
index 3f5e597..7a28fa4 100644
--- a/libril/ril.cpp
+++ b/libril/ril.cpp
@@ -105,7 +105,9 @@ extern "C" const char * radioStateToString(RIL_RadioState);
extern "C" const char * rilSocketIdToString(RIL_SOCKET_ID socket_id);
extern "C"
-char rild[MAX_SOCKET_NAME_LENGTH] = SOCKET_NAME_RIL;
+char ril_service_name_base[MAX_SERVICE_NAME_LENGTH] = RIL_SERVICE_NAME_BASE;
+extern "C"
+char ril_service_name[MAX_SERVICE_NAME_LENGTH] = RIL1_SERVICE_NAME;
/*******************************************************************/
RIL_RadioFunctions s_callbacks = {0, NULL, NULL, NULL, NULL, NULL};
@@ -211,13 +213,13 @@ static UnsolResponseInfo s_unsolResponses[] = {
#include "ril_unsol_commands.h"
};
-char * RIL_getRilSocketName() {
- return rild;
+char * RIL_getServiceName() {
+ return ril_service_name;
}
extern "C"
-void RIL_setRilSocketName(const char * s) {
- strncpy(rild, s, MAX_SOCKET_NAME_LENGTH);
+void RIL_setServiceName(const char * s) {
+ strncpy(ril_service_name, s, MAX_SERVICE_NAME_LENGTH);
}
RequestInfo *
@@ -272,34 +274,6 @@ addRequestToList(int serial, int slotId, int request) {
return pRI;
}
-static int
-blockingWrite(int fd, const void *buffer, size_t len) {
- size_t writeOffset = 0;
- const uint8_t *toWrite;
-
- toWrite = (const uint8_t *)buffer;
-
- while (writeOffset < len) {
- ssize_t written;
- do {
- written = write (fd, toWrite + writeOffset,
- len - writeOffset);
- } while (written < 0 && ((errno == EINTR) || (errno == EAGAIN)));
-
- if (written >= 0) {
- writeOffset += written;
- } else { // written < 0
- RLOGE ("RIL Response: unexpected error on write errno:%d", errno);
- close(fd);
- return -1;
- }
- }
-#if VDBG
- RLOGE("RIL Response bytes written:%d", writeOffset);
-#endif
- return 0;
-}
-
static void triggerEvLoop() {
int ret;
if (!pthread_equal(pthread_self(), s_tid_dispatch)) {
@@ -333,50 +307,6 @@ static void processWakeupCallback(int fd, short flags, void *param) {
} while (ret > 0 || (ret < 0 && errno == EINTR));
}
-static void onCommandsSocketClosed(RIL_SOCKET_ID socket_id) {
- int ret;
- RequestInfo *p_cur;
- /* Hook for current context
- pendingRequestsMutextHook refer to &s_pendingRequestsMutex */
- pthread_mutex_t * pendingRequestsMutexHook = &s_pendingRequestsMutex;
- /* pendingRequestsHook refer to &s_pendingRequests */
- RequestInfo ** pendingRequestsHook = &s_pendingRequests;
-
-#if (SIM_COUNT >= 2)
- if (socket_id == RIL_SOCKET_2) {
- pendingRequestsMutexHook = &s_pendingRequestsMutex_socket2;
- pendingRequestsHook = &s_pendingRequests_socket2;
- }
-#if (SIM_COUNT >= 3)
- else if (socket_id == RIL_SOCKET_3) {
- pendingRequestsMutexHook = &s_pendingRequestsMutex_socket3;
- pendingRequestsHook = &s_pendingRequests_socket3;
- }
-#endif
-#if (SIM_COUNT >= 4)
- else if (socket_id == RIL_SOCKET_4) {
- pendingRequestsMutexHook = &s_pendingRequestsMutex_socket4;
- pendingRequestsHook = &s_pendingRequests_socket4;
- }
-#endif
-#endif
- /* mark pending requests as "cancelled" so we dont report responses */
- ret = pthread_mutex_lock(pendingRequestsMutexHook);
- assert (ret == 0);
-
- p_cur = *pendingRequestsHook;
-
- for (p_cur = *pendingRequestsHook
- ; p_cur != NULL
- ; p_cur = p_cur->p_next
- ) {
- p_cur->cancelled = 1;
- }
-
- ret = pthread_mutex_unlock(pendingRequestsMutexHook);
- assert (ret == 0);
-}
-
static void resendLastNITZTimeData(RIL_SOCKET_ID socket_id) {
if (s_lastNITZTimeData != NULL) {
int responseType = (s_callbacks.version >= 13)
@@ -564,18 +494,18 @@ RIL_register_socket (RIL_RadioFunctions *(*Init)(const struct RIL_Env *, int, ch
switch(socketType) {
case RIL_SAP_SOCKET:
- RilSapSocket::initSapSocket("sap_uim_socket1", UimFuncs);
+ RilSapSocket::initSapSocket(RIL1_SERVICE_NAME, UimFuncs);
#if (SIM_COUNT >= 2)
- RilSapSocket::initSapSocket("sap_uim_socket2", UimFuncs);
+ RilSapSocket::initSapSocket(RIL2_SERVICE_NAME, UimFuncs);
#endif
#if (SIM_COUNT >= 3)
- RilSapSocket::initSapSocket("sap_uim_socket3", UimFuncs);
+ RilSapSocket::initSapSocket(RIL3_SERVICE_NAME, UimFuncs);
#endif
#if (SIM_COUNT >= 4)
- RilSapSocket::initSapSocket("sap_uim_socket4", UimFuncs);
+ RilSapSocket::initSapSocket(RIL4_SERVICE_NAME, UimFuncs);
#endif
break;
default:;
@@ -1319,12 +1249,4 @@ rilSocketIdToString(RIL_SOCKET_ID socket_id)
}
}
-} /* namespace android */
-
-void rilEventAddWakeup_helper(struct ril_event *ev) {
- android::rilEventAddWakeup(ev);
-}
-
-int blockingWrite_helper(int fd, void *buffer, size_t len) {
- return android::blockingWrite(fd, buffer, len);
-}
+} /* namespace android */ \ No newline at end of file
diff --git a/libril/ril_internal.h b/libril/ril_internal.h
index 68d3863..646d9b7 100644
--- a/libril/ril_internal.h
+++ b/libril/ril_internal.h
@@ -21,15 +21,11 @@
namespace android {
-#define SOCKET_NAME_RIL "rild"
-#define SOCKET2_NAME_RIL "rild2"
-#define SOCKET3_NAME_RIL "rild3"
-#define SOCKET4_NAME_RIL "rild4"
-
-#define OEM_HOOK_SERVICE_NAME "oemhook"
-#define OEM_HOOK2_SERVICE_NAME "oemhook2"
-#define OEM_HOOK3_SERVICE_NAME "oemhook3"
-#define OEM_HOOK4_SERVICE_NAME "oemhook4"
+#define RIL_SERVICE_NAME_BASE "slot"
+#define RIL1_SERVICE_NAME "slot1"
+#define RIL2_SERVICE_NAME "slot2"
+#define RIL3_SERVICE_NAME "slot3"
+#define RIL4_SERVICE_NAME "slot4"
/* Constants for response types */
#define RESPONSE_SOLICITED 0
@@ -93,7 +89,7 @@ typedef struct CommandInfo {
RequestInfo * addRequestToList(int serial, int slotId, int request);
-char * RIL_getRilSocketName();
+char * RIL_getServiceName();
void releaseWakeLock();
diff --git a/libril/ril_service.cpp b/libril/ril_service.cpp
index 306d7cb..6618ddb 100644
--- a/libril/ril_service.cpp
+++ b/libril/ril_service.cpp
@@ -7931,26 +7931,13 @@ void radio::registerService(RIL_RadioFunctions *callbacks, CommandInfo *commands
using namespace android::hardware;
int simCount = 1;
const char *serviceNames[] = {
- android::RIL_getRilSocketName()
+ android::RIL_getServiceName()
#if (SIM_COUNT >= 2)
- , SOCKET2_NAME_RIL
+ , RIL2_SERVICE_NAME
#if (SIM_COUNT >= 3)
- , SOCKET3_NAME_RIL
+ , RIL3_SERVICE_NAME
#if (SIM_COUNT >= 4)
- , SOCKET4_NAME_RIL
- #endif
- #endif
- #endif
- };
-
- const char *oemHookServiceNames[] = {
- OEM_HOOK_SERVICE_NAME
- #if (SIM_COUNT >= 2)
- , OEM_HOOK2_SERVICE_NAME
- #if (SIM_COUNT >= 3)
- , OEM_HOOK3_SERVICE_NAME
- #if (SIM_COUNT >= 4)
- , OEM_HOOK4_SERVICE_NAME
+ , RIL4_SERVICE_NAME
#endif
#endif
#endif
@@ -7972,7 +7959,7 @@ void radio::registerService(RIL_RadioFunctions *callbacks, CommandInfo *commands
oemHookService[i]->mSlotId = i;
RLOGD("registerService: starting IRadio %s", serviceNames[i]);
android::status_t status = radioService[i]->registerAsService(serviceNames[i]);
- status = oemHookService[i]->registerAsService(oemHookServiceNames[i]);
+ status = oemHookService[i]->registerAsService(serviceNames[i]);
ret = pthread_rwlock_unlock(radioServiceRwlockPtr);
assert(ret == 0);
diff --git a/libril/sap_service.cpp b/libril/sap_service.cpp
index 29c2f38..7bed05a 100644
--- a/libril/sap_service.cpp
+++ b/libril/sap_service.cpp
@@ -919,13 +919,13 @@ void sap::registerService(RIL_RadioFunctions *callbacks) {
using namespace android::hardware;
int simCount = 1;
const char *serviceNames[] = {
- "sap_uim_socket1"
+ android::RIL_getServiceName()
#if (SIM_COUNT >= 2)
- , "sap_uim_socket2"
+ , RIL2_SERVICE_NAME
#if (SIM_COUNT >= 3)
- , "sap_uim_socket3"
+ , RIL3_SERVICE_NAME
#if (SIM_COUNT >= 4)
- , "sap_uim_socket4"
+ , RIL4_SERVICE_NAME
#endif
#endif
#endif
diff --git a/rild/rild.c b/rild/rild.c
index 58bd273..ce04040 100644
--- a/rild/rild.c
+++ b/rild/rild.c
@@ -47,7 +47,8 @@ static void usage(const char *argv0) {
exit(EXIT_FAILURE);
}
-extern char rild[MAX_SOCKET_NAME_LENGTH];
+extern char ril_service_name_base[MAX_SERVICE_NAME_LENGTH];
+extern char ril_service_name[MAX_SERVICE_NAME_LENGTH];
extern void RIL_register (const RIL_RadioFunctions *callbacks);
extern void rilc_thread_pool ();
@@ -60,7 +61,7 @@ extern void RIL_onRequestComplete(RIL_Token t, RIL_Errno e,
extern void RIL_onRequestAck(RIL_Token t);
-extern void RIL_setRilSocketName(char *);
+extern void RIL_setServiceName(char *);
#if defined(ANDROID_MULTI_SIM)
extern void RIL_onUnsolicitedResponse(int unsolResponse, const void *data,
@@ -193,8 +194,9 @@ int main(int argc, char **argv) {
exit(0);
}
if (strncmp(clientId, "0", MAX_CLIENT_ID_LENGTH)) {
- strlcat(rild, clientId, MAX_SOCKET_NAME_LENGTH);
- RIL_setRilSocketName(rild);
+ strncpy(ril_service_name, ril_service_name_base, MAX_SERVICE_NAME_LENGTH);
+ strncat(ril_service_name, clientId, MAX_SERVICE_NAME_LENGTH);
+ RIL_setServiceName(ril_service_name);
}
if (rilLibPath == NULL) {