summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDenis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>2020-10-15 08:24:47 +0200
committerDenis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>2021-01-01 23:54:56 +0100
commite593f410d7c3f0924033e71c84dcb1ace32fd6a0 (patch)
treedbc1fe7366b4c13189e10f74d78ae1d7683c2149
parent1f4962b5d11e5e3567e6a78ecce7207ed3ef438e (diff)
downloadhardware_replicant_libsamsung-ril-master.tar.gz
hardware_replicant_libsamsung-ril-master.tar.bz2
hardware_replicant_libsamsung-ril-master.zip
Convert to use separate SIM statusHEADreplicant-6.0-0004-rc4master
In 2001, in the RIL repository[1], the SIM states were separated from the radio states by the following commit: 2bc78d614e349574426d198c37e51ccb7455b5bb 2bc78d61 Separate SIM states from Radio States Then in 2016 the SIM states were removed from the RADIO_STATES by the following commit: 2baf72329c43d9e3f7850973f087176f535e31e8 2baf7232 Remove deprecated RADIO_STATES So to be compatible with recent rild, we need to convert the code to use separate SIM states. This was tested on Replicant 4.2 with a Galaxy SIII (GT-I9300) and a Nexus S (GT-I9023) and in both cases: - It compiled fine - Calling worked fine too: I called an invalid number I got an automatic voice reply telling me that this number was invalid. Similarly that was also tested on Replicant 6.0 0004 RC3 both by compiling it and calling an invalid number, as this commit was part of the Replicant 6.0 0004 RC3 release. Since then only the commit message was modified to add information about the tests as it didn't have them but had the following text instead: TODO: - Test this code with Replicant 4.2!!!! [1]https://android.googlesource.com/platform/hardware/ril Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
-rw-r--r--call.c14
-rw-r--r--data.c10
-rw-r--r--misc.c10
-rw-r--r--network.c32
-rw-r--r--power.c2
-rw-r--r--samsung-ril.c47
-rw-r--r--samsung-ril.h14
-rw-r--r--sim.c52
-rw-r--r--sms.c6
-rw-r--r--ss.c4
-rw-r--r--tools/srs-test.c5
11 files changed, 120 insertions, 76 deletions
diff --git a/call.c b/call.c
index 7daed67..ef4814f 100644
--- a/call.c
+++ b/call.c
@@ -82,7 +82,7 @@ int ril_request_dial(void *data, size_t size, RIL_Token token)
if (data == NULL || size < sizeof(RIL_Dial))
goto error;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_NOT_READY);
+ rc = ril_radio_has_reached_state(RADIO_STATE_ON);
if (rc < 0)
return RIL_REQUEST_UNHANDLED;
@@ -139,7 +139,7 @@ int ril_request_hangup(__attribute__((unused)) void *data,
int hangup;
int rc;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_NOT_READY);
+ rc = ril_radio_has_reached_state(RADIO_STATE_ON);
if (rc < 0)
return RIL_REQUEST_UNHANDLED;
@@ -176,7 +176,7 @@ int ril_request_answer(__attribute__((unused)) void *data,
{
int rc;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_NOT_READY);
+ rc = ril_radio_has_reached_state(RADIO_STATE_ON);
if (rc < 0)
return RIL_REQUEST_UNHANDLED;
@@ -240,7 +240,7 @@ int ril_request_last_call_fail_cause(__attribute__((unused)) void *data,
int fail_cause;
int rc;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_NOT_READY);
+ rc = ril_radio_has_reached_state(RADIO_STATE_ON);
if (rc < 0)
return RIL_REQUEST_UNHANDLED;
@@ -350,7 +350,7 @@ int ril_request_get_current_calls(__attribute__((unused)) void *data,
{
int rc;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_NOT_READY);
+ rc = ril_radio_has_reached_state(RADIO_STATE_ON);
if (rc < 0) {
ril_request_complete(token, RIL_E_SUCCESS, NULL, 0);
return RIL_REQUEST_COMPLETED;
@@ -486,7 +486,7 @@ int ril_request_dtmf(void *data, size_t size, RIL_Token token)
if (data == NULL || size < sizeof(char))
goto error;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_NOT_READY);
+ rc = ril_radio_has_reached_state(RADIO_STATE_ON);
if (rc < 0)
return RIL_REQUEST_UNHANDLED;
@@ -571,7 +571,7 @@ int ril_request_dtmf_start(void *data, size_t size, RIL_Token token)
if (data == NULL || size < sizeof(char))
goto error;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_NOT_READY);
+ rc = ril_radio_has_reached_state(RADIO_STATE_ON);
if (rc < 0)
return RIL_REQUEST_UNHANDLED;
diff --git a/data.c b/data.c
index 93fda8c..ff6df5e 100644
--- a/data.c
+++ b/data.c
@@ -467,7 +467,7 @@ int ril_request_setup_data_call(void *data, size_t size, RIL_Token token)
if (data == NULL || size < 6 * sizeof(char *))
goto error;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_READY);
+ rc = ril_sim_has_reached_state(SIM_STATE_READY);
if (rc < 0) {
ril_request_complete(token, RIL_E_OP_NOT_ALLOWED_BEFORE_REG_TO_NW, NULL, 0);
return RIL_REQUEST_COMPLETED;
@@ -663,7 +663,7 @@ int ril_request_data_call_list(__attribute__((unused)) void *data,
{
int rc;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_NOT_READY);
+ rc = ril_radio_has_reached_state(RADIO_STATE_ON);
if (rc < 0) {
ril_request_complete(token, RIL_E_SUCCESS, NULL, 0);
return RIL_REQUEST_COMPLETED;
@@ -729,7 +729,7 @@ int ril_request_deactivate_data_call(void *data, size_t size, RIL_Token token)
if (data == NULL || size < 2 * sizeof(char *))
goto error;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_READY);
+ rc = ril_sim_has_reached_state(SIM_STATE_READY);
if (rc < 0)
return RIL_REQUEST_UNHANDLED;
@@ -876,7 +876,7 @@ int ipc_gprs_call_status(struct ipc_message *message)
if (message == NULL || message->data == NULL || message->size < sizeof(struct ipc_gprs_call_status_data))
return -1;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_READY);
+ rc = ril_sim_has_reached_state(SIM_STATE_READY);
if (rc < 0)
return 0;
@@ -1021,7 +1021,7 @@ int ril_request_last_data_call_fail_cause(__attribute__((unused)) void *data,
int fail_cause;
int rc;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_NOT_READY);
+ rc = ril_radio_has_reached_state(RADIO_STATE_ON);
if (rc < 0)
return RIL_REQUEST_UNHANDLED;
diff --git a/misc.c b/misc.c
index 3628e96..08eab50 100644
--- a/misc.c
+++ b/misc.c
@@ -57,7 +57,7 @@ int ril_request_baseband_version(__attribute__((unused)) void *data,
struct ril_request *request;
int rc;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_NOT_READY);
+ rc = ril_radio_has_reached_state(RADIO_STATE_ON);
if (rc < 0)
return RIL_REQUEST_UNHANDLED;
@@ -115,7 +115,7 @@ int ril_request_get_imsi(__attribute__((unused)) void *data,
struct ril_request *request;
int rc;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_READY);
+ rc = ril_sim_has_reached_state(SIM_STATE_READY);
if (rc < 0)
return RIL_REQUEST_UNHANDLED;
@@ -191,7 +191,7 @@ int ril_request_get_imei(__attribute__((unused)) void *data,
struct ril_request *request;
int rc;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_NOT_READY);
+ rc = ril_radio_has_reached_state(RADIO_STATE_ON);
if (rc < 0)
return RIL_REQUEST_UNHANDLED;
@@ -223,7 +223,7 @@ int ril_request_get_imeisv(__attribute__((unused)) void *data,
struct ril_request *request;
int rc;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_NOT_READY);
+ rc = ril_radio_has_reached_state(RADIO_STATE_ON);
if (rc < 0)
return RIL_REQUEST_UNHANDLED;
@@ -277,7 +277,7 @@ int ril_request_screen_state(void *data, size_t size, RIL_Token token)
return RIL_REQUEST_COMPLETED;
}
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_NOT_READY);
+ rc = ril_radio_has_reached_state(RADIO_STATE_ON);
if (rc < 0)
return RIL_REQUEST_UNHANDLED;
diff --git a/network.c b/network.c
index e4dd035..6f2e168 100644
--- a/network.c
+++ b/network.c
@@ -399,7 +399,7 @@ int ipc_disp_icon_info(struct ipc_message *message)
if (message == NULL || message->data == NULL || message->size < sizeof(struct ipc_disp_icon_info_response_data))
return -1;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_NOT_READY);
+ rc = ril_radio_has_reached_state(RADIO_STATE_ON);
if (rc < 0)
return 0;
@@ -428,7 +428,7 @@ int ril_request_signal_strength(__attribute__((unused)) void *data,
struct ipc_disp_icon_info_request_data request_data;
int rc;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_NOT_READY);
+ rc = ril_radio_has_reached_state(RADIO_STATE_ON);
if (rc < 0)
return RIL_REQUEST_UNHANDLED;
@@ -453,7 +453,7 @@ int ipc_disp_rssi_info(struct ipc_message *message)
if (message == NULL || message->data == NULL || message->size < sizeof(struct ipc_disp_rssi_info_data))
return -1;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_NOT_READY);
+ rc = ril_radio_has_reached_state(RADIO_STATE_ON);
if (rc < 0)
return 0;
@@ -477,7 +477,7 @@ int ipc_net_plmn_sel(struct ipc_message *message)
if (message == NULL || message->data == NULL || message->size < sizeof(struct ipc_net_plmn_sel_response_data))
return -1;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_NOT_READY);
+ rc = ril_radio_has_reached_state(RADIO_STATE_ON);
if (rc < 0)
return 0;
@@ -499,7 +499,7 @@ int ril_request_query_network_selection_mode(__attribute__((unused)) void *data,
{
int rc;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_NOT_READY);
+ rc = ril_radio_has_reached_state(RADIO_STATE_ON);
if (rc < 0)
return RIL_REQUEST_UNHANDLED;
@@ -545,7 +545,7 @@ int ril_request_set_network_selection_automatic(__attribute__((unused)) void *da
struct ipc_net_plmn_sel_request_data request_data;
int rc;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_NOT_READY);
+ rc = ril_radio_has_reached_state(RADIO_STATE_ON);
if (rc < 0)
return RIL_REQUEST_UNHANDLED;
@@ -584,7 +584,7 @@ int ril_request_set_network_selection_manual(void *data, size_t size,
return RIL_REQUEST_COMPLETED;
}
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_NOT_READY);
+ rc = ril_radio_has_reached_state(RADIO_STATE_ON);
if (rc < 0)
return RIL_REQUEST_UNHANDLED;
@@ -623,7 +623,7 @@ int ipc_net_serving_network(struct ipc_message *message)
if (message == NULL || message->data == NULL || message->size < sizeof(struct ipc_net_regist_response_data))
return -1;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_NOT_READY);
+ rc = ril_radio_has_reached_state(RADIO_STATE_ON);
if (rc < 0)
return 0;
@@ -670,7 +670,7 @@ int ril_request_operator(__attribute__((unused)) void *data,
unsigned int i;
int rc;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_NOT_READY);
+ rc = ril_radio_has_reached_state(RADIO_STATE_ON);
if (rc < 0)
return RIL_REQUEST_UNHANDLED;
@@ -720,7 +720,7 @@ int ipc_net_plmn_list(struct ipc_message *message)
if (message == NULL || message->data == NULL || message->size < sizeof(struct ipc_net_plmn_list_header))
return -1;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_NOT_READY);
+ rc = ril_radio_has_reached_state(RADIO_STATE_ON);
if (rc < 0)
return 0;
@@ -796,7 +796,7 @@ int ril_request_query_available_networks(__attribute__((unused)) void *data,
struct ril_request *request;
int rc;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_NOT_READY);
+ rc = ril_radio_has_reached_state(RADIO_STATE_ON);
if (rc < 0)
return RIL_REQUEST_UNHANDLED;
@@ -835,7 +835,7 @@ int ipc_net_regist(struct ipc_message *message)
if (client == NULL || client->data == NULL)
return 0;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_NOT_READY);
+ rc = ril_radio_has_reached_state(RADIO_STATE_ON);
if (rc < 0)
return 0;
@@ -936,7 +936,7 @@ int ril_request_registration_state(__attribute__((unused)) void *data,
unsigned int i;
int rc;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_NOT_READY);
+ rc = ril_radio_has_reached_state(RADIO_STATE_ON);
if (rc < 0)
return RIL_REQUEST_UNHANDLED;
@@ -1011,7 +1011,7 @@ int ril_request_gprs_registration_state(__attribute__((unused)) void *data,
unsigned int i;
int rc;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_NOT_READY);
+ rc = ril_radio_has_reached_state(RADIO_STATE_ON);
if (rc < 0)
return RIL_REQUEST_UNHANDLED;
@@ -1076,7 +1076,7 @@ int ipc_net_mode_sel(struct ipc_message *message)
if (message == NULL || message->data == NULL || message->size < sizeof(struct ipc_net_mode_sel_data))
return -1;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_NOT_READY);
+ rc = ril_radio_has_reached_state(RADIO_STATE_ON);
if (rc < 0)
return 0;
@@ -1098,7 +1098,7 @@ int ril_request_get_preferred_network_type(__attribute__((unused)) void *data,
{
int rc;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_NOT_READY);
+ rc = ril_radio_has_reached_state(RADIO_STATE_ON);
if (rc < 0)
return RIL_REQUEST_UNHANDLED;
diff --git a/power.c b/power.c
index 011570f..9b68c4d 100644
--- a/power.c
+++ b/power.c
@@ -63,7 +63,7 @@ int ipc_pwr_phone_state(struct ipc_message *message)
RIL_LOGD("Power state is normal");
ril_request_complete(ipc_fmt_request_token(message->aseq), RIL_E_SUCCESS, NULL, 0);
- ril_radio_state_update(RADIO_STATE_SIM_NOT_READY);
+ ril_radio_state_update(RADIO_STATE_ON);
break;
}
diff --git a/samsung-ril.c b/samsung-ril.c
index 31d0244..6378c23 100644
--- a/samsung-ril.c
+++ b/samsung-ril.c
@@ -1197,20 +1197,36 @@ int ril_radio_state_update(RIL_RadioState radio_state)
}
/*
+ * RIL SIM state
+ */
+
+int ril_sim_state_update(enum sim_state sim_state)
+{
+ if (ril_data == NULL)
+ return -1;
+
+ if (ril_data->sim_state == sim_state)
+ return 0;
+
+ RIL_LOGD("Updating RIL SIM state to %d", sim_state);
+
+ ril_data->sim_state = sim_state;
+
+ ril_request_unsolicited(RIL_UNSOL_RESPONSE_SIM_STATUS_CHANGED, NULL, 0);
+
+ return 0;
+}
+
+/*
* Returns 0 if the RIL has reached the given radio_state
* Returns -1 otherwise
*/
int ril_radio_has_reached_state(RIL_RadioState given_state)
{
RIL_RadioState radio_states[] = {
- RADIO_STATE_UNAVAILABLE,
RADIO_STATE_OFF,
+ RADIO_STATE_UNAVAILABLE,
RADIO_STATE_ON,
- RADIO_STATE_NV_NOT_READY,
- RADIO_STATE_NV_READY,
- RADIO_STATE_SIM_NOT_READY,
- RADIO_STATE_SIM_LOCKED_OR_ABSENT,
- RADIO_STATE_SIM_READY,
};
RIL_RadioState curr_state;
@@ -1243,6 +1259,25 @@ int ril_radio_has_reached_state(RIL_RadioState given_state)
}
/*
+ * Returns 0 if the RIL has reached the given sim_state
+ * Returns -1 otherwise
+ */
+int ril_sim_has_reached_state(enum sim_state given_state)
+{
+ enum sim_state curr_state;
+
+ if (ril_data == NULL)
+ return -1;
+
+ curr_state = ril_data->sim_state;
+
+ if (curr_state < given_state)
+ return -1;
+
+ return 0;
+}
+
+/*
* RIL data
*/
diff --git a/samsung-ril.h b/samsung-ril.h
index 0f936e3..3d4d9fc 100644
--- a/samsung-ril.h
+++ b/samsung-ril.h
@@ -199,12 +199,23 @@ size_t ril_request_data_size_get(int request);
void *ril_request_data_get(int request);
/*
- * RIL radio state
+ * RIL state
*/
+enum sim_state {
+ SIM_STATE_ERROR,
+ SIM_STATE_NOT_READY,
+ SIM_STATE_LOCKED_OR_ABSENT,
+ SIM_STATE_READY,
+ SIM_STATE_MAX,
+};
+
int ril_radio_state_update(RIL_RadioState radio_state);
int ril_radio_has_reached_state(RIL_RadioState radio_state);
+int ril_sim_state_update(enum sim_state sim_state);
+int ril_sim_has_reached_state(enum sim_state sim_state);
+
/*
* RIL data
*/
@@ -213,6 +224,7 @@ struct ril_data {
const struct RIL_Env *env;
RIL_RadioState radio_state;
+ enum sim_state sim_state;
char *sim_pin;
struct list_head *requests;
diff --git a/sim.c b/sim.c
index e8c3373..6bb0f4c 100644
--- a/sim.c
+++ b/sim.c
@@ -28,8 +28,8 @@
#include <utils.h>
#include <sim.h>
-RIL_RadioState ipc2ril_sec_pin_status_response(struct ipc_sec_pin_status_response_data *data,
- RIL_CardStatus_compat *card_status)
+enum sim_state ipc2ril_sec_pin_status_response(struct ipc_sec_pin_status_response_data *data,
+ RIL_CardStatus_compat *card_status)
{
RIL_AppStatus app_statuses[] = {
// Absent
@@ -53,12 +53,12 @@ RIL_RadioState ipc2ril_sec_pin_status_response(struct ipc_sec_pin_status_respons
// Perso service provider
{ RIL_APPTYPE_SIM, RIL_APPSTATE_SUBSCRIPTION_PERSO, RIL_PERSOSUBSTATE_SIM_SERVICE_PROVIDER, NULL, NULL, 0, RIL_PINSTATE_ENABLED_NOT_VERIFIED, RIL_PINSTATE_UNKNOWN },
};
- RIL_RadioState radio_state;
+ enum sim_state sim_state;
unsigned int index;
unsigned int count;
if (data == NULL || card_status == NULL)
- return 0;
+ return SIM_STATE_ERROR;
count = sizeof(app_statuses) / sizeof(RIL_AppStatus);
@@ -113,14 +113,14 @@ RIL_RadioState ipc2ril_sec_pin_status_response(struct ipc_sec_pin_status_respons
switch (index) {
case 1:
- radio_state = RADIO_STATE_SIM_NOT_READY;
+ sim_state = SIM_STATE_NOT_READY;
break;
case 2:
- radio_state = RADIO_STATE_SIM_READY;
+ sim_state = SIM_STATE_READY;
break;
default:
- radio_state = RADIO_STATE_SIM_LOCKED_OR_ABSENT;
- }
+ sim_state = SIM_STATE_LOCKED_OR_ABSENT;
+ }
memset(card_status, 0, sizeof(RIL_CardStatus_compat));
@@ -143,7 +143,7 @@ RIL_RadioState ipc2ril_sec_pin_status_response(struct ipc_sec_pin_status_respons
RIL_LOGD("%s: Selecting status application %d on %d", __func__, index, count);
- return radio_state;
+ return sim_state;
}
unsigned char ril2ipc_sec_facility_type(char *facility)
@@ -194,20 +194,20 @@ int ipc_sec_pin_status(struct ipc_message *message)
struct ipc_sec_pin_status_response_data *data;
struct ipc_sec_pin_status_request_data request_data;
RIL_CardStatus_compat card_status;
- RIL_RadioState radio_state;
+ enum sim_state sim_state;
int rc;
if (message == NULL || message->data == NULL || message->size < sizeof(struct ipc_sec_pin_status_response_data))
return -1;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_NOT_READY);
+ rc = ril_radio_has_reached_state(RADIO_STATE_ON);
if (rc < 0)
return 0;
data = (struct ipc_sec_pin_status_response_data *) message->data;
- radio_state = ipc2ril_sec_pin_status_response(data, &card_status);
- if (radio_state == 0)
+ sim_state = ipc2ril_sec_pin_status_response(data, &card_status);
+ if (sim_state == SIM_STATE_ERROR)
return 0;
if (card_status.applications[0].app_type == RIL_APPTYPE_SIM && card_status.applications[0].app_state == RIL_APPSTATE_PIN && ril_data->sim_pin != NULL) {
@@ -233,7 +233,7 @@ int ipc_sec_pin_status(struct ipc_message *message)
}
- ril_radio_state_update(radio_state);
+ ril_sim_state_update(sim_state);
if (message->type == IPC_TYPE_RESP && ipc_seq_valid(message->aseq)) {
ril_request_complete(ipc_fmt_request_token(message->aseq), RIL_E_SUCCESS, (void *) &card_status, sizeof(card_status));
@@ -254,7 +254,7 @@ int ril_request_get_sim_status(__attribute__((unused)) void *data,
struct ril_request *request;
int rc;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_NOT_READY);
+ rc = ril_radio_has_reached_state(RADIO_STATE_ON);
if (rc < 0)
return RIL_REQUEST_UNHANDLED;
@@ -311,7 +311,7 @@ int ril_request_query_facility_lock(void *data, size_t size, RIL_Token token)
if (data == NULL || size < 4 * sizeof(char *))
goto error;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_READY);
+ rc = ril_sim_has_reached_state(SIM_STATE_READY);
if (rc < 0)
return RIL_REQUEST_UNHANDLED;
@@ -510,7 +510,7 @@ int ril_request_set_facility_lock(void *data, size_t size, RIL_Token token)
if (data == NULL || size < 4 * sizeof(char *))
goto error;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_READY);
+ rc = ril_sim_has_reached_state(SIM_STATE_READY);
if (rc < 0)
return RIL_REQUEST_UNHANDLED;
@@ -588,7 +588,7 @@ int ril_request_enter_sim_pin(void *data, size_t size, RIL_Token token)
if (data == NULL || size < 2 * sizeof(char *) || ril_data == NULL)
goto error;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_NOT_READY);
+ rc = ril_radio_has_reached_state(RADIO_STATE_ON);
if (rc < 0)
return RIL_REQUEST_UNHANDLED;
@@ -645,7 +645,7 @@ int ril_request_enter_sim_puk(void *data, size_t size, RIL_Token token)
if (data == NULL || size < 2 * sizeof(char *))
goto error;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_NOT_READY);
+ rc = ril_radio_has_reached_state(RADIO_STATE_ON);
if (rc < 0)
return RIL_REQUEST_UNHANDLED;
@@ -695,7 +695,7 @@ int ril_request_enter_sim_pin2(void *data, size_t size, RIL_Token token)
if (data == NULL || size < 2 * sizeof(char *))
goto error;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_NOT_READY);
+ rc = ril_radio_has_reached_state(RADIO_STATE_ON);
if (rc < 0)
return RIL_REQUEST_UNHANDLED;
@@ -745,7 +745,7 @@ int ril_request_enter_sim_puk2(void *data, size_t size, RIL_Token token)
if (data == NULL || size < 2 * sizeof(char *))
goto error;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_NOT_READY);
+ rc = ril_radio_has_reached_state(RADIO_STATE_ON);
if (rc < 0)
return RIL_REQUEST_UNHANDLED;
@@ -799,7 +799,7 @@ int ril_request_change_sim_pin(void *data, size_t size, RIL_Token token)
if (request != NULL)
return RIL_REQUEST_UNHANDLED;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_READY);
+ rc = ril_sim_has_reached_state(SIM_STATE_READY);
if (rc < 0)
return RIL_REQUEST_UNHANDLED;
@@ -849,7 +849,7 @@ int ril_request_change_sim_pin2(void *data, size_t size, RIL_Token token)
if (request != NULL)
return RIL_REQUEST_UNHANDLED;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_READY);
+ rc = ril_sim_has_reached_state(SIM_STATE_READY);
if (rc < 0)
return RIL_REQUEST_UNHANDLED;
@@ -965,9 +965,9 @@ int ril_request_sim_io(void *data, size_t size, RIL_Token token)
if (data == NULL || size < sizeof(RIL_SIM_IO_compat))
goto error;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_READY);
+ rc = ril_sim_has_reached_state(SIM_STATE_READY);
if (rc < 0) {
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_LOCKED_OR_ABSENT);
+ rc = ril_sim_has_reached_state(SIM_STATE_LOCKED_OR_ABSENT);
if (rc < 0)
return RIL_REQUEST_UNHANDLED;
else
@@ -1128,7 +1128,7 @@ int ipc_sec_lock_infomation(struct ipc_message *message)
if (message == NULL || message->data == NULL || message->size < sizeof(struct ipc_sec_lock_information_response_data))
return -1;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_NOT_READY);
+ rc = ril_radio_has_reached_state(RADIO_STATE_ON);
if (rc < 0)
return 0;
diff --git a/sms.c b/sms.c
index 777dd8e..373811d 100644
--- a/sms.c
+++ b/sms.c
@@ -205,7 +205,7 @@ int ril_request_send_sms(void *data, size_t size, RIL_Token token)
if (data == NULL || size < 2 * sizeof(char *))
goto error;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_NOT_READY);
+ rc = ril_radio_has_reached_state(RADIO_STATE_ON);
if (rc < 0)
return RIL_REQUEST_UNHANDLED;
@@ -345,7 +345,7 @@ int ril_request_write_sms_to_sim(void *data, size_t size, RIL_Token token)
if (data == NULL || size < sizeof(RIL_SMS_WriteArgs))
goto error;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_READY);
+ rc = ril_sim_has_reached_state(SIM_STATE_READY);
if (rc < 0)
return RIL_REQUEST_UNHANDLED;
@@ -528,7 +528,7 @@ int ril_request_sms_acknowledge(void *data, size_t size, RIL_Token token)
if (data == NULL || size < 2 * sizeof(int))
goto error;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_READY);
+ rc = ril_sim_has_reached_state(SIM_STATE_READY);
if (rc < 0)
return RIL_REQUEST_UNHANDLED;
diff --git a/ss.c b/ss.c
index 76dbe2a..4d89fde 100644
--- a/ss.c
+++ b/ss.c
@@ -124,7 +124,7 @@ int ril_request_send_ussd(void *data, size_t size, RIL_Token token)
if (data == NULL || size < sizeof(char *))
goto error;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_NOT_READY);
+ rc = ril_radio_has_reached_state(RADIO_STATE_ON);
if (rc < 0)
return RIL_REQUEST_UNHANDLED;
@@ -224,7 +224,7 @@ int ril_request_cancel_ussd(__attribute__((unused)) void *data,
struct ipc_ss_ussd_header ussd;
int rc;
- rc = ril_radio_has_reached_state(RADIO_STATE_SIM_NOT_READY);
+ rc = ril_radio_has_reached_state(RADIO_STATE_ON);
if (rc < 0)
return RIL_REQUEST_UNHANDLED;
diff --git a/tools/srs-test.c b/tools/srs-test.c
index ac91f1a..e460c57 100644
--- a/tools/srs-test.c
+++ b/tools/srs-test.c
@@ -38,7 +38,7 @@ void display_help(void)
printf("Commands:\n");
printf(" radio-state [STATE] - set radio state\n");
printf("\n");
- printf("States: off, unavailable, sim-not-ready, sim-locked-absent, sim-ready, on\n");
+ printf("States: off, unavailable, on\n");
}
int radio_state(struct srs_client *client, char *string)
@@ -46,9 +46,6 @@ int radio_state(struct srs_client *client, char *string)
struct radio_state_string radio_state_strings[] = {
{ "off", RADIO_STATE_OFF },
{ "unavailable", RADIO_STATE_UNAVAILABLE },
- { "sim-not-ready", RADIO_STATE_SIM_NOT_READY },
- { "sim-locked-absent", RADIO_STATE_SIM_LOCKED_OR_ABSENT },
- { "sim-ready", RADIO_STATE_SIM_READY },
{ "on", RADIO_STATE_ON },
};
struct srs_test_set_radio_state_data data;