[-]
[+]
|
Changed |
_service:tar_git:ofono.changes
|
|
[-]
[+]
|
Changed |
_service:tar_git:ofono.spec
^
|
|
[-]
[+]
|
Changed |
_service:tar_git:ofono-1.67.3.tar.bz2/ofono/Makefile.am
^
|
@@ -569,9 +569,6 @@
builtin_modules += sim900
builtin_sources += plugins/sim900.c
-builtin_modules += connman
-builtin_sources += plugins/connman.c
-
builtin_modules += telit
builtin_sources += plugins/telit.c
|
[-]
[+]
|
Changed |
_service:tar_git:ofono-1.67.3.tar.bz2/ofono/drivers/ril/ril_modem.c
^
|
@@ -43,6 +43,13 @@
GOING_OFFLINE
};
+enum ril_modem_watch_event {
+ WATCH_IMSI,
+ WATCH_ICCID,
+ WATCH_SIM_STATE,
+ WATCH_EVENT_COUNT
+};
+
struct ril_modem_online_request {
ofono_modem_online_cb_t cb;
struct ril_modem_data *md;
@@ -58,7 +65,10 @@
char *imeisv;
char *imei;
char *ecclist_file;
- gulong imsi_event_id;
+
+ gulong watch_event_id[WATCH_EVENT_COUNT];
+ char* last_known_iccid;
+ char* reset_iccid;
guint online_check_id;
enum ril_modem_power_state power_state;
@@ -242,6 +252,32 @@
ril_modem_update_radio_settings(md);
}
+static void ril_modem_iccid_cb(struct ofono_watch *watch, void *data)
+{
+ struct ril_modem_data *md = data;
+
+ GASSERT(md->watch == watch);
+ if (watch->iccid) {
+ g_free(md->last_known_iccid);
+ md->last_known_iccid = g_strdup(watch->iccid);
+ DBG_(md, "%s", md->last_known_iccid);
+ }
+}
+
+static void ril_modem_sim_state_cb(struct ofono_watch *watch, void *data)
+{
+ struct ril_modem_data *md = data;
+ const enum ofono_sim_state state = ofono_sim_get_state(watch->sim);
+
+ GASSERT(md->watch == watch);
+ if (state == OFONO_SIM_STATE_RESETTING) {
+ g_free(md->reset_iccid);
+ md->reset_iccid = md->last_known_iccid;
+ md->last_known_iccid = NULL;
+ DBG_(md, "%s is resetting", md->reset_iccid);
+ }
+}
+
static void ril_modem_pre_sim(struct ofono_modem *modem)
{
struct ril_modem_data *md = ril_modem_data_from_ofono(modem);
@@ -286,7 +322,13 @@
ofono_call_barring_create(modem, 0, RILMODEM_DRIVER, md);
ofono_message_waiting_register(ofono_message_waiting_create(modem));
if (md->modem.config.enable_stk) {
- ofono_stk_create(modem, 0, RILMODEM_DRIVER, md);
+ if (!md->reset_iccid ||
+ g_strcmp0(md->reset_iccid, md->watch->iccid)) {
+ /* This SIM was never reset */
+ ofono_stk_create(modem, 0, RILMODEM_DRIVER, md);
+ } else {
+ ofono_warn("Disabling STK after SIM reset");
+ }
}
if (md->modem.config.enable_cbs) {
ofono_cbs_create(modem, 0, RILMODEM_DRIVER, md);
@@ -376,7 +418,7 @@
ril_radio_unref(modem->radio);
ril_sim_settings_unref(modem->sim_settings);
- ofono_watch_remove_handler(md->watch, md->imsi_event_id);
+ ofono_watch_remove_all_handlers(md->watch, md->watch_event_id);
ofono_watch_unref(md->watch);
if (md->online_check_id) {
@@ -398,6 +440,8 @@
grilio_channel_unref(modem->io);
grilio_queue_cancel_all(md->q, FALSE);
grilio_queue_unref(md->q);
+ g_free(md->last_known_iccid);
+ g_free(md->reset_iccid);
g_free(md->ecclist_file);
g_free(md->log_prefix);
g_free(md->imeisv);
@@ -446,10 +490,17 @@
modem->io = grilio_channel_ref(io);
md->q = grilio_queue_new(io);
md->watch = ofono_watch_new(path);
+ md->last_known_iccid = g_strdup(md->watch->iccid);
- md->imsi_event_id =
+ md->watch_event_id[WATCH_IMSI] =
ofono_watch_add_imsi_changed_handler(md->watch,
ril_modem_imsi_cb, md);
+ md->watch_event_id[WATCH_ICCID] =
+ ofono_watch_add_iccid_changed_handler(md->watch,
+ ril_modem_iccid_cb, md);
+ md->watch_event_id[WATCH_SIM_STATE] =
+ ofono_watch_add_sim_state_changed_handler(md->watch,
+ ril_modem_sim_state_cb, md);
md->set_online.md = md;
md->set_offline.md = md;
|
[-]
[+]
|
Changed |
_service:tar_git:ofono-1.67.3.tar.bz2/ofono/drivers/ril/ril_plugin.c
^
|
@@ -1059,6 +1059,7 @@
slot->imeisv, ril_plugin_sim_state(slot),
slot->slot_flags);
sailfish_manager_set_cell_info(slot->handle, slot->cell_info);
+ grilio_channel_set_enabled(slot->io, slot->handle->enabled);
/* Check if this was the last slot we were waiting for */
ril_plugin_check_if_started(plugin);
@@ -2136,7 +2137,9 @@
{
if (s->handle->enabled) {
ril_plugin_check_modem(s);
+ grilio_channel_set_enabled(s->io, TRUE);
} else {
+ grilio_channel_set_enabled(s->io, FALSE);
ril_plugin_shutdown_slot(s, FALSE);
}
}
|
[-]
[+]
|
Changed |
_service:tar_git:ofono-1.67.3.tar.bz2/ofono/drivers/ril/ril_util.c
^
|
@@ -239,6 +239,18 @@
RIL_REQUEST_(SHUTDOWN);
RIL_REQUEST_(GET_RADIO_CAPABILITY);
RIL_REQUEST_(SET_RADIO_CAPABILITY);
+ RIL_REQUEST_(START_LCE);
+ RIL_REQUEST_(STOP_LCE);
+ RIL_REQUEST_(GET_ACTIVITY_INFO);
+ RIL_REQUEST_(GET_CARRIER_RESTRICTIONS);
+ RIL_REQUEST_(SEND_DEVICE_STATE);
+ RIL_REQUEST_(SET_UNSOLICITED_RESPONSE_FILTER);
+ RIL_REQUEST_(SET_SIM_CARD_POWER);
+ RIL_REQUEST_(SET_CARRIER_INFO_IMSI_ENCRYPTION);
+ RIL_REQUEST_(START_NETWORK_SCAN);
+ RIL_REQUEST_(STOP_NETWORK_SCAN);
+ RIL_REQUEST_(START_KEEPALIVE);
+ RIL_REQUEST_(STOP_KEEPALIVE);
case RIL_RESPONSE_ACKNOWLEDGEMENT:
return "RESPONSE_ACK";
default:
|
[-]
[+]
|
Changed |
_service:tar_git:ofono-1.67.3.tar.bz2/ofono/include/ril-constants.h
^
|
@@ -84,190 +84,205 @@
};
/* RIL Request Messages, ofono -> rild */
-#define RIL_REQUEST_GET_SIM_STATUS 1
-#define RIL_REQUEST_ENTER_SIM_PIN 2
-#define RIL_REQUEST_ENTER_SIM_PUK 3
-#define RIL_REQUEST_ENTER_SIM_PIN2 4
-#define RIL_REQUEST_ENTER_SIM_PUK2 5
-#define RIL_REQUEST_CHANGE_SIM_PIN 6
-#define RIL_REQUEST_CHANGE_SIM_PIN2 7
-#define RIL_REQUEST_ENTER_NETWORK_DEPERSONALIZATION 8
-#define RIL_REQUEST_GET_CURRENT_CALLS 9
-#define RIL_REQUEST_DIAL 10
-#define RIL_REQUEST_GET_IMSI 11
-#define RIL_REQUEST_HANGUP 12
-#define RIL_REQUEST_HANGUP_WAITING_OR_BACKGROUND 13
-#define RIL_REQUEST_HANGUP_FOREGROUND_RESUME_BACKGROUND 14
-#define RIL_REQUEST_SWITCH_HOLDING_AND_ACTIVE 15
-#define RIL_REQUEST_CONFERENCE 16
-#define RIL_REQUEST_UDUB 17
-#define RIL_REQUEST_LAST_CALL_FAIL_CAUSE 18
-#define RIL_REQUEST_SIGNAL_STRENGTH 19
-#define RIL_REQUEST_VOICE_REGISTRATION_STATE 20
-#define RIL_REQUEST_DATA_REGISTRATION_STATE 21
-#define RIL_REQUEST_OPERATOR 22
-#define RIL_REQUEST_RADIO_POWER 23
-#define RIL_REQUEST_DTMF 24
-#define RIL_REQUEST_SEND_SMS 25
-#define RIL_REQUEST_SEND_SMS_EXPECT_MORE 26
-#define RIL_REQUEST_SETUP_DATA_CALL 27
-#define RIL_REQUEST_SIM_IO 28
-#define RIL_REQUEST_SEND_USSD 29
-#define RIL_REQUEST_CANCEL_USSD 30
-#define RIL_REQUEST_GET_CLIR 31
-#define RIL_REQUEST_SET_CLIR 32
-#define RIL_REQUEST_QUERY_CALL_FORWARD_STATUS 33
-#define RIL_REQUEST_SET_CALL_FORWARD 34
-#define RIL_REQUEST_QUERY_CALL_WAITING 35
-#define RIL_REQUEST_SET_CALL_WAITING 36
-#define RIL_REQUEST_SMS_ACKNOWLEDGE 37
-#define RIL_REQUEST_GET_IMEI 38
-#define RIL_REQUEST_GET_IMEISV 39
-#define RIL_REQUEST_ANSWER 40
-#define RIL_REQUEST_DEACTIVATE_DATA_CALL 41
-#define RIL_REQUEST_QUERY_FACILITY_LOCK 42
-#define RIL_REQUEST_SET_FACILITY_LOCK 43
-#define RIL_REQUEST_CHANGE_BARRING_PASSWORD 44
-#define RIL_REQUEST_QUERY_NETWORK_SELECTION_MODE 45
-#define RIL_REQUEST_SET_NETWORK_SELECTION_AUTOMATIC 46
-#define RIL_REQUEST_SET_NETWORK_SELECTION_MANUAL 47
-#define RIL_REQUEST_QUERY_AVAILABLE_NETWORKS 48
-#define RIL_REQUEST_DTMF_START 49
-#define RIL_REQUEST_DTMF_STOP 50
-#define RIL_REQUEST_BASEBAND_VERSION 51
-#define RIL_REQUEST_SEPARATE_CONNECTION 52
-#define RIL_REQUEST_SET_MUTE 53
-#define RIL_REQUEST_GET_MUTE 54
-#define RIL_REQUEST_QUERY_CLIP 55
-#define RIL_REQUEST_LAST_DATA_CALL_FAIL_CAUSE 56
-#define RIL_REQUEST_DATA_CALL_LIST 57
-#define RIL_REQUEST_RESET_RADIO 58
-#define RIL_REQUEST_OEM_HOOK_RAW 59
-#define RIL_REQUEST_OEM_HOOK_STRINGS 60
-#define RIL_REQUEST_SCREEN_STATE 61
-#define RIL_REQUEST_SET_SUPP_SVC_NOTIFICATION 62
-#define RIL_REQUEST_WRITE_SMS_TO_SIM 63
-#define RIL_REQUEST_DELETE_SMS_ON_SIM 64
-#define RIL_REQUEST_SET_BAND_MODE 65
-#define RIL_REQUEST_QUERY_AVAILABLE_BAND_MODE 66
-#define RIL_REQUEST_STK_GET_PROFILE 67
-#define RIL_REQUEST_STK_SET_PROFILE 68
-#define RIL_REQUEST_STK_SEND_ENVELOPE_COMMAND 69
-#define RIL_REQUEST_STK_SEND_TERMINAL_RESPONSE 70
-#define RIL_REQUEST_STK_HANDLE_CALL_SETUP_REQUESTED_FROM_SIM 71
-#define RIL_REQUEST_EXPLICIT_CALL_TRANSFER 72
-#define RIL_REQUEST_SET_PREFERRED_NETWORK_TYPE 73
-#define RIL_REQUEST_GET_PREFERRED_NETWORK_TYPE 74
-#define RIL_REQUEST_GET_NEIGHBORING_CELL_IDS 75
-#define RIL_REQUEST_SET_LOCATION_UPDATES 76
-#define RIL_REQUEST_CDMA_SET_SUBSCRIPTION_SOURCE 77
-#define RIL_REQUEST_CDMA_SET_ROAMING_PREFERENCE 78
-#define RIL_REQUEST_CDMA_QUERY_ROAMING_PREFERENCE 79
-#define RIL_REQUEST_SET_TTY_MODE 80
-#define RIL_REQUEST_QUERY_TTY_MODE 81
-#define RIL_REQUEST_CDMA_SET_PREFERRED_VOICE_PRIVACY_MODE 82
-#define RIL_REQUEST_CDMA_QUERY_PREFERRED_VOICE_PRIVACY_MODE 83
-#define RIL_REQUEST_CDMA_FLASH 84
-#define RIL_REQUEST_CDMA_BURST_DTMF 85
-#define RIL_REQUEST_CDMA_VALIDATE_AND_WRITE_AKEY 86
-#define RIL_REQUEST_CDMA_SEND_SMS 87
-#define RIL_REQUEST_CDMA_SMS_ACKNOWLEDGE 88
-#define RIL_REQUEST_GSM_GET_BROADCAST_SMS_CONFIG 89
-#define RIL_REQUEST_GSM_SET_BROADCAST_SMS_CONFIG 90
-#define RIL_REQUEST_GSM_SMS_BROADCAST_ACTIVATION 91
-#define RIL_REQUEST_CDMA_GET_BROADCAST_SMS_CONFIG 92
-#define RIL_REQUEST_CDMA_SET_BROADCAST_SMS_CONFIG 93
-#define RIL_REQUEST_CDMA_SMS_BROADCAST_ACTIVATION 94
-#define RIL_REQUEST_CDMA_SUBSCRIPTION 95
-#define RIL_REQUEST_CDMA_WRITE_SMS_TO_RUIM 96
-#define RIL_REQUEST_CDMA_DELETE_SMS_ON_RUIM 97
-#define RIL_REQUEST_DEVICE_IDENTITY 98
-#define RIL_REQUEST_EXIT_EMERGENCY_CALLBACK_MODE 99
-#define RIL_REQUEST_GET_SMSC_ADDRESS 100
-#define RIL_REQUEST_SET_SMSC_ADDRESS 101
-#define RIL_REQUEST_REPORT_SMS_MEMORY_STATUS 102
-#define RIL_REQUEST_REPORT_STK_SERVICE_IS_RUNNING 103
-#define RIL_REQUEST_CDMA_GET_SUBSCRIPTION_SOURCE 104
-#define RIL_REQUEST_ISIM_AUTHENTICATION 105
-#define RIL_REQUEST_ACKNOWLEDGE_INCOMING_GSM_SMS_WITH_PDU 106
-#define RIL_REQUEST_STK_SEND_ENVELOPE_WITH_STATUS 107
-#define RIL_REQUEST_VOICE_RADIO_TECH 108
-#define RIL_REQUEST_GET_CELL_INFO_LIST 109
-#define RIL_REQUEST_SET_UNSOL_CELL_INFO_LIST_RATE 110
-#define RIL_REQUEST_SET_INITIAL_ATTACH_APN 111
-#define RIL_REQUEST_IMS_REGISTRATION_STATE 112
-#define RIL_REQUEST_IMS_SEND_SMS 113
-#define RIL_REQUEST_SIM_TRANSMIT_APDU_BASIC 114
-#define RIL_REQUEST_SIM_OPEN_CHANNEL 115
-#define RIL_REQUEST_SIM_CLOSE_CHANNEL 116
-#define RIL_REQUEST_SIM_TRANSMIT_APDU_CHANNEL 117
-#define RIL_REQUEST_NV_READ_ITEM 118
-#define RIL_REQUEST_NV_WRITE_ITEM 119
-#define RIL_REQUEST_NV_WRITE_CDMA_PRL 120
-#define RIL_REQUEST_NV_RESET_CONFIG 121
-/* SET_UICC_SUBSCRIPTION was 115 in v9 and 122 in v10 and later */
-#define RIL_REQUEST_V9_SET_UICC_SUBSCRIPTION 115
-#define RIL_REQUEST_SET_UICC_SUBSCRIPTION 122
-#define RIL_REQUEST_ALLOW_DATA 123
-#define RIL_REQUEST_GET_HARDWARE_CONFIG 124
-#define RIL_REQUEST_SIM_AUTHENTICATION 125
-#define RIL_REQUEST_GET_DC_RT_INFO 126
-#define RIL_REQUEST_SET_DC_RT_INFO_RATE 127
-#define RIL_REQUEST_SET_DATA_PROFILE 128
-#define RIL_REQUEST_SHUTDOWN 129
-#define RIL_REQUEST_GET_RADIO_CAPABILITY 130
-#define RIL_REQUEST_SET_RADIO_CAPABILITY 131
+enum ril_request {
+ RIL_REQUEST_GET_SIM_STATUS = 1,
+ RIL_REQUEST_ENTER_SIM_PIN = 2,
+ RIL_REQUEST_ENTER_SIM_PUK = 3,
+ RIL_REQUEST_ENTER_SIM_PIN2 = 4,
+ RIL_REQUEST_ENTER_SIM_PUK2 = 5,
+ RIL_REQUEST_CHANGE_SIM_PIN = 6,
+ RIL_REQUEST_CHANGE_SIM_PIN2 = 7,
+ RIL_REQUEST_ENTER_NETWORK_DEPERSONALIZATION = 8,
+ RIL_REQUEST_GET_CURRENT_CALLS = 9,
+ RIL_REQUEST_DIAL = 10,
+ RIL_REQUEST_GET_IMSI = 11,
+ RIL_REQUEST_HANGUP = 12,
+ RIL_REQUEST_HANGUP_WAITING_OR_BACKGROUND = 13,
+ RIL_REQUEST_HANGUP_FOREGROUND_RESUME_BACKGROUND = 14,
+ RIL_REQUEST_SWITCH_HOLDING_AND_ACTIVE = 15,
+ RIL_REQUEST_CONFERENCE = 16,
+ RIL_REQUEST_UDUB = 17,
+ RIL_REQUEST_LAST_CALL_FAIL_CAUSE = 18,
+ RIL_REQUEST_SIGNAL_STRENGTH = 19,
+ RIL_REQUEST_VOICE_REGISTRATION_STATE = 20,
+ RIL_REQUEST_DATA_REGISTRATION_STATE = 21,
+ RIL_REQUEST_OPERATOR = 22,
+ RIL_REQUEST_RADIO_POWER = 23,
+ RIL_REQUEST_DTMF = 24,
+ RIL_REQUEST_SEND_SMS = 25,
+ RIL_REQUEST_SEND_SMS_EXPECT_MORE = 26,
+ RIL_REQUEST_SETUP_DATA_CALL = 27,
+ RIL_REQUEST_SIM_IO = 28,
+ RIL_REQUEST_SEND_USSD = 29,
+ RIL_REQUEST_CANCEL_USSD = 30,
+ RIL_REQUEST_GET_CLIR = 31,
+ RIL_REQUEST_SET_CLIR = 32,
+ RIL_REQUEST_QUERY_CALL_FORWARD_STATUS = 33,
+ RIL_REQUEST_SET_CALL_FORWARD = 34,
+ RIL_REQUEST_QUERY_CALL_WAITING = 35,
+ RIL_REQUEST_SET_CALL_WAITING = 36,
+ RIL_REQUEST_SMS_ACKNOWLEDGE = 37,
+ RIL_REQUEST_GET_IMEI = 38,
+ RIL_REQUEST_GET_IMEISV = 39,
+ RIL_REQUEST_ANSWER = 40,
+ RIL_REQUEST_DEACTIVATE_DATA_CALL = 41,
+ RIL_REQUEST_QUERY_FACILITY_LOCK = 42,
+ RIL_REQUEST_SET_FACILITY_LOCK = 43,
+ RIL_REQUEST_CHANGE_BARRING_PASSWORD = 44,
+ RIL_REQUEST_QUERY_NETWORK_SELECTION_MODE = 45,
+ RIL_REQUEST_SET_NETWORK_SELECTION_AUTOMATIC = 46,
+ RIL_REQUEST_SET_NETWORK_SELECTION_MANUAL = 47,
+ RIL_REQUEST_QUERY_AVAILABLE_NETWORKS = 48,
+ RIL_REQUEST_DTMF_START = 49,
+ RIL_REQUEST_DTMF_STOP = 50,
+ RIL_REQUEST_BASEBAND_VERSION = 51,
+ RIL_REQUEST_SEPARATE_CONNECTION = 52,
+ RIL_REQUEST_SET_MUTE = 53,
+ RIL_REQUEST_GET_MUTE = 54,
+ RIL_REQUEST_QUERY_CLIP = 55,
+ RIL_REQUEST_LAST_DATA_CALL_FAIL_CAUSE = 56,
+ RIL_REQUEST_DATA_CALL_LIST = 57,
+ RIL_REQUEST_RESET_RADIO = 58,
+ RIL_REQUEST_OEM_HOOK_RAW = 59,
+ RIL_REQUEST_OEM_HOOK_STRINGS = 60,
+ RIL_REQUEST_SCREEN_STATE = 61,
+ RIL_REQUEST_SET_SUPP_SVC_NOTIFICATION = 62,
|