diff --git a/b2g/config/dolphin/sources.xml b/b2g/config/dolphin/sources.xml index 2ab9d60285f2..fdca5910c933 100644 --- a/b2g/config/dolphin/sources.xml +++ b/b2g/config/dolphin/sources.xml @@ -15,7 +15,7 @@ - + diff --git a/b2g/config/emulator-ics/sources.xml b/b2g/config/emulator-ics/sources.xml index 5d1005ce96a6..f122ff4326e4 100644 --- a/b2g/config/emulator-ics/sources.xml +++ b/b2g/config/emulator-ics/sources.xml @@ -19,7 +19,7 @@ - + diff --git a/b2g/config/emulator-jb/sources.xml b/b2g/config/emulator-jb/sources.xml index e1958ce2195a..0b1cad71e7a5 100644 --- a/b2g/config/emulator-jb/sources.xml +++ b/b2g/config/emulator-jb/sources.xml @@ -17,7 +17,7 @@ - + diff --git a/b2g/config/emulator-kk/sources.xml b/b2g/config/emulator-kk/sources.xml index 6d5f368a1b6c..5f102cd302bf 100644 --- a/b2g/config/emulator-kk/sources.xml +++ b/b2g/config/emulator-kk/sources.xml @@ -15,7 +15,7 @@ - + diff --git a/b2g/config/emulator/sources.xml b/b2g/config/emulator/sources.xml index 5d1005ce96a6..f122ff4326e4 100644 --- a/b2g/config/emulator/sources.xml +++ b/b2g/config/emulator/sources.xml @@ -19,7 +19,7 @@ - + diff --git a/b2g/config/flame-kk/sources.xml b/b2g/config/flame-kk/sources.xml index 3226add737d5..c2224832098f 100644 --- a/b2g/config/flame-kk/sources.xml +++ b/b2g/config/flame-kk/sources.xml @@ -15,7 +15,7 @@ - + diff --git a/b2g/config/flame/sources.xml b/b2g/config/flame/sources.xml index 4a038bce8fb5..bbe7bc53e572 100644 --- a/b2g/config/flame/sources.xml +++ b/b2g/config/flame/sources.xml @@ -17,7 +17,7 @@ - + diff --git a/b2g/config/gaia.json b/b2g/config/gaia.json index c73075937418..500c3994ff33 100644 --- a/b2g/config/gaia.json +++ b/b2g/config/gaia.json @@ -1,9 +1,9 @@ { "git": { - "git_revision": "ae02fbdeae77b2002cebe33c61aedeee4b9439fd", + "git_revision": "4f39e48b95fa00c8669b8707447542024bb55432", "remote": "https://git.mozilla.org/releases/gaia.git", "branch": "" }, - "revision": "62d026a98ea42f2b93de000e8d0d4f1254f86730", + "revision": "e0816d2581cdc2d0581f625c06811128c87c0c48", "repo_path": "integration/gaia-central" } diff --git a/b2g/config/nexus-4/sources.xml b/b2g/config/nexus-4/sources.xml index a2133b5047eb..659b969db14f 100644 --- a/b2g/config/nexus-4/sources.xml +++ b/b2g/config/nexus-4/sources.xml @@ -17,7 +17,7 @@ - + diff --git a/b2g/config/nexus-5-l/sources.xml b/b2g/config/nexus-5-l/sources.xml index dd2582296886..228b7dade4d0 100644 --- a/b2g/config/nexus-5-l/sources.xml +++ b/b2g/config/nexus-5-l/sources.xml @@ -15,7 +15,7 @@ - + diff --git a/dom/mobileconnection/interfaces/nsIMobileConnectionService.idl b/dom/mobileconnection/interfaces/nsIMobileConnectionService.idl index ca9e5c0c290a..c92e9ec05753 100644 --- a/dom/mobileconnection/interfaces/nsIMobileConnectionService.idl +++ b/dom/mobileconnection/interfaces/nsIMobileConnectionService.idl @@ -108,7 +108,7 @@ interface nsIMobileConnectionListener : nsISupports #define NO_ADDITIONAL_INFORMATION 0 %} -[scriptable, builtinclass, uuid(14d66926-8434-11e4-8c3f-f724194bb5f1)] +[scriptable, uuid(14d66926-8434-11e4-8c3f-f724194bb5f1)] interface nsIMobileConnectionCallback : nsISupports { /** diff --git a/dom/system/gonk/ril_consts.js b/dom/system/gonk/ril_consts.js index 4dff10daebcd..b067ebdb7fbe 100644 --- a/dom/system/gonk/ril_consts.js +++ b/dom/system/gonk/ril_consts.js @@ -130,16 +130,31 @@ this.REQUEST_ACKNOWLEDGE_INCOMING_GSM_SMS_WITH_PDU = 106; this.REQUEST_STK_SEND_ENVELOPE_WITH_STATUS = 107; this.REQUEST_VOICE_RADIO_TECH = 108; this.REQUEST_GET_CELL_INFO_LIST = 109; +this.REQUEST_SET_UNSOL_CELL_INFO_LIST_RATE = 110; +this.REQUEST_SET_INITIAL_ATTACH_APN = 111; +this.REQUEST_IMS_REGISTRATION_STATE = 112; +this.REQUEST_IMS_SEND_SMS = 113; +this.REQUEST_SIM_TRANSMIT_APDU_BASIC = 114; +this.REQUEST_SIM_OPEN_CHANNEL = 115; +this.REQUEST_SIM_CLOSE_CHANNEL = 116; +this.REQUEST_SIM_TRANSMIT_APDU_CHANNEL = 117; +this.REQUEST_NV_READ_ITEM = 118; +this.REQUEST_NV_WRITE_ITEM = 119; +this.REQUEST_NV_WRITE_CDMA_PRL = 120; +this.REQUEST_NV_RESET_CONFIG = 121; +this.REQUEST_SET_UICC_SUBSCRIPTION = 122; +this.REQUEST_ALLOW_DATA = 123; +this.REQUEST_GET_HARDWARE_CONFIG = 124; +this.REQUEST_SIM_AUTHENTICATION = 125; +this.REQUEST_GET_DC_RT_INFO = 126; +this.REQUEST_SET_DC_RT_INFO_RATE = 127; +this.REQUEST_SET_DATA_PROFILE = 128; +this.REQUEST_SHUTDOWN = 129; -// CAF specific parcel type. Synced with latest version. -// Please see https://www.codeaurora.org/cgit/quic/la/platform/hardware/ril/tree/include/telephony/ril.h?h=b2g_kk_3.5 -this.REQUEST_SET_UICC_SUBSCRIPTION = 115; -this.REQUEST_SET_DATA_SUBSCRIPTION = 116; - -// UICC Secure Access. -this.REQUEST_SIM_OPEN_CHANNEL = 121; -this.REQUEST_SIM_CLOSE_CHANNEL = 122; -this.REQUEST_SIM_ACCESS_CHANNEL = 123; +// CAF specific parcel type. It should be synced with latest version. But CAF +// doesn't have l version for b2g yet, so we set REQUEST_SET_DATA_SUBSCRIPTION +// to a value that won't get conflict with known AOSP parcel. +this.REQUEST_SET_DATA_SUBSCRIPTION = 130; // Mozilla specific parcel type. this.REQUEST_GET_UNLOCK_RETRY_COUNT = 150; @@ -191,6 +206,12 @@ this.UNSOLICITED_CDMA_PRL_CHANGED = 1032; this.UNSOLICITED_EXIT_EMERGENCY_CALLBACK_MODE = 1033; this.UNSOLICITED_RIL_CONNECTED = 1034; this.UNSOLICITED_VOICE_RADIO_TECH_CHANGED = 1035; +this.UNSOLICITED_CELL_INFO_LIST = 1036; +this.UNSOLICITED_RESPONSE_IMS_NETWORK_STATE_CHANGED = 1037; +this.UNSOLICITED_UICC_SUBSCRIPTION_STATUS_CHANGED = 1038; +this.UNSOLICITED_SRVCC_STATE_NOTIFY = 1039; +this.UNSOLICITED_HARDWARE_CONFIG_CHANGED = 1040; +this.UNSOLICITED_DC_RT_INFO_CHANGED = 1041; this.ERROR_SUCCESS = 0; this.ERROR_RADIO_NOT_AVAILABLE = 1; diff --git a/dom/system/gonk/ril_worker.js b/dom/system/gonk/ril_worker.js index 7e7ddd4bbe6a..14ba26878068 100644 --- a/dom/system/gonk/ril_worker.js +++ b/dom/system/gonk/ril_worker.js @@ -1322,10 +1322,6 @@ RilObject.prototype = { * Open Logical UICC channel (aid) for Secure Element access */ iccOpenChannel: function(options) { - if (DEBUG) { - this.context.debug("iccOpenChannel: " + JSON.stringify(options)); - } - let Buf = this.context.Buf; Buf.newParcel(REQUEST_SIM_OPEN_CHANNEL, options); Buf.writeString(options.aid); @@ -1336,31 +1332,15 @@ RilObject.prototype = { * Exchange APDU data on an open Logical UICC channel */ iccExchangeAPDU: function(options) { - if (DEBUG) this.context.debug("iccExchangeAPDU: " + JSON.stringify(options)); - - let cla = options.apdu.cla; - let command = options.apdu.command; - let channel = options.channel; - let path = options.apdu.path || ""; - let data = options.apdu.data || ""; - let data2 = options.apdu.data2 || ""; - - let p1 = options.apdu.p1; - let p2 = options.apdu.p2; - let p3 = options.apdu.p3; // Extra - let Buf = this.context.Buf; - Buf.newParcel(REQUEST_SIM_ACCESS_CHANNEL, options); - Buf.writeInt32(cla); - Buf.writeInt32(command); - Buf.writeInt32(channel); - Buf.writeString(path); // path - Buf.writeInt32(p1); - Buf.writeInt32(p2); - Buf.writeInt32(p3); - Buf.writeString(data); // generic data field. - Buf.writeString(data2); - + Buf.newParcel(REQUEST_SIM_TRANSMIT_APDU_CHANNEL, options); + Buf.writeInt32(options.channel); + Buf.writeInt32(options.apdu.cla); + Buf.writeInt32(options.apdu.command); + Buf.writeInt32(options.apdu.p1); + Buf.writeInt32(options.apdu.p2); + Buf.writeInt32(options.apdu.p3); + Buf.writeString(options.apdu.data); Buf.sendParcel(); }, @@ -1368,8 +1348,6 @@ RilObject.prototype = { * Close Logical UICC channel */ iccCloseChannel: function(options) { - if (DEBUG) this.context.debug("iccCloseChannel: " + JSON.stringify(options)); - let Buf = this.context.Buf; Buf.newParcel(REQUEST_SIM_CLOSE_CHANNEL, options); Buf.writeInt32(1); @@ -5863,47 +5841,6 @@ RilObject.prototype[REQUEST_CHANGE_BARRING_PASSWORD] = options.statusMessage = MMI_SM_KS_PASSWORD_CHANGED; this.sendChromeMessage(options); }; -RilObject.prototype[REQUEST_SIM_OPEN_CHANNEL] = function REQUEST_SIM_OPEN_CHANNEL(length, options) { - if (options.rilRequestError) { - options.errorMsg = RIL_ERROR_TO_GECKO_ERROR[options.rilRequestError]; - this.sendChromeMessage(options); - return; - } - - options.channel = this.context.Buf.readInt32(); - if (DEBUG) { - this.context.debug("Setting channel number in options: " + options.channel); - } - this.sendChromeMessage(options); -}; -RilObject.prototype[REQUEST_SIM_CLOSE_CHANNEL] = function REQUEST_SIM_CLOSE_CHANNEL(length, options) { - if (options.rilRequestError) { - options.error = RIL_ERROR_TO_GECKO_ERROR[options.rilRequestError]; - this.sendChromeMessage(options); - return; - } - - // No return value - this.sendChromeMessage(options); -}; -RilObject.prototype[REQUEST_SIM_ACCESS_CHANNEL] = function REQUEST_SIM_ACCESS_CHANNEL(length, options) { - if (options.rilRequestError) { - options.error = RIL_ERROR_TO_GECKO_ERROR[options.rilRequestError]; - this.sendChromeMessage(options); - } - - let Buf = this.context.Buf; - options.sw1 = Buf.readInt32(); - options.sw2 = Buf.readInt32(); - options.simResponse = Buf.readString(); - if (DEBUG) { - this.context.debug("Setting return values for RIL[REQUEST_SIM_ACCESS_CHANNEL]: [" + - options.sw1 + "," + - options.sw2 + ", " + - options.simResponse + "]"); - } - this.sendChromeMessage(options); -}; RilObject.prototype[REQUEST_QUERY_NETWORK_SELECTION_MODE] = function REQUEST_QUERY_NETWORK_SELECTION_MODE(length, options) { this._receivedNetworkInfo(NETWORK_INFO_NETWORK_SELECTION_MODE); @@ -6427,12 +6364,64 @@ RilObject.prototype[REQUEST_VOICE_RADIO_TECH] = function REQUEST_VOICE_RADIO_TEC let radioTech = this.context.Buf.readInt32List(); this._processRadioTech(radioTech[0]); }; +RilObject.prototype[REQUEST_GET_CELL_INFO_LIST] = null; +RilObject.prototype[REQUEST_SET_UNSOL_CELL_INFO_LIST_RATE] = null; +RilObject.prototype[REQUEST_SET_INITIAL_ATTACH_APN] = null; +RilObject.prototype[REQUEST_IMS_REGISTRATION_STATE] = null; +RilObject.prototype[REQUEST_IMS_SEND_SMS] = null; +RilObject.prototype[REQUEST_SIM_TRANSMIT_APDU_BASIC] = null; +RilObject.prototype[REQUEST_SIM_OPEN_CHANNEL] = function REQUEST_SIM_OPEN_CHANNEL(length, options) { + if (options.rilRequestError) { + options.errorMsg = RIL_ERROR_TO_GECKO_ERROR[options.rilRequestError]; + this.sendChromeMessage(options); + return; + } + + options.channel = this.context.Buf.readInt32(); + if (DEBUG) { + this.context.debug("Setting channel number in options: " + options.channel); + } + this.sendChromeMessage(options); +}; +RilObject.prototype[REQUEST_SIM_CLOSE_CHANNEL] = function REQUEST_SIM_CLOSE_CHANNEL(length, options) { + this.sendDefaultResponse(options); +}; +RilObject.prototype[REQUEST_SIM_TRANSMIT_APDU_CHANNEL] = function REQUEST_SIM_TRANSMIT_APDU_CHANNEL(length, options) { + if (options.rilRequestError) { + options.errorMsg = RIL_ERROR_TO_GECKO_ERROR[options.rilRequestError]; + this.sendChromeMessage(options); + return; + } + + let Buf = this.context.Buf; + options.sw1 = Buf.readInt32(); + options.sw2 = Buf.readInt32(); + options.simResponse = Buf.readString(); + if (DEBUG) { + this.context.debug("Setting return values for RIL[REQUEST_SIM_TRANSMIT_APDU_CHANNEL]: [" + + options.sw1 + "," + + options.sw2 + ", " + + options.simResponse + "]"); + } + this.sendChromeMessage(options); +}; +RilObject.prototype[REQUEST_NV_READ_ITEM] = null; +RilObject.prototype[REQUEST_NV_WRITE_ITEM] = null; +RilObject.prototype[REQUEST_NV_WRITE_CDMA_PRL] = null; +RilObject.prototype[REQUEST_NV_RESET_CONFIG] = null; RilObject.prototype[REQUEST_SET_UICC_SUBSCRIPTION] = function REQUEST_SET_UICC_SUBSCRIPTION(length, options) { // Resend data subscription after uicc subscription. if (this._attachDataRegistration) { this.setDataRegistration({attach: true}); } }; +RilObject.prototype[REQUEST_ALLOW_DATA] = null; +RilObject.prototype[REQUEST_GET_HARDWARE_CONFIG] = null; +RilObject.prototype[REQUEST_SIM_AUTHENTICATION] = null; +RilObject.prototype[REQUEST_GET_DC_RT_INFO] = null; +RilObject.prototype[REQUEST_SET_DC_RT_INFO_RATE] = null; +RilObject.prototype[REQUEST_SET_DATA_PROFILE] = null; +RilObject.prototype[REQUEST_SHUTDOWN] = null; RilObject.prototype[REQUEST_SET_DATA_SUBSCRIPTION] = function REQUEST_SET_DATA_SUBSCRIPTION(length, options) { if (!options.rilMessageType) { // The request was made by ril_worker itself. Don't report. @@ -6827,6 +6816,12 @@ RilObject.prototype[UNSOLICITED_VOICE_RADIO_TECH_CHANGED] = function UNSOLICITED // See Bug 866038. this._processRadioTech(this.context.Buf.readInt32List()[0]); }; +RilObject.prototype[UNSOLICITED_CELL_INFO_LIST] = null; +RilObject.prototype[UNSOLICITED_RESPONSE_IMS_NETWORK_STATE_CHANGED] = null; +RilObject.prototype[UNSOLICITED_UICC_SUBSCRIPTION_STATUS_CHANGED] = null; +RilObject.prototype[UNSOLICITED_SRVCC_STATE_NOTIFY] = null; +RilObject.prototype[UNSOLICITED_HARDWARE_CONFIG_CHANGED] = null; +RilObject.prototype[UNSOLICITED_DC_RT_INFO_CHANGED] = null; /** * This object exposes the functionality to parse and serialize PDU strings diff --git a/dom/system/gonk/ril_worker_buf_object.js b/dom/system/gonk/ril_worker_buf_object.js index f0853e073419..0363863dfedb 100644 --- a/dom/system/gonk/ril_worker_buf_object.js +++ b/dom/system/gonk/ril_worker_buf_object.js @@ -29,6 +29,26 @@ // this derived one needs to invoke it. // Using 'apply' style to mark it's a parent method calling explicitly. Buf._init.apply(this); + + // Remapping the request type to different values based on RIL version. + // We only have to do this for SUBSCRIPTION right now, so I just make it + // simple. A generic logic or structure could be discussed if we have more + // use cases, especially the cases from different partners. + this._requestMap = {}; + // RIL version 8. + // For the CAF's proprietary parcels. Please see + // https://www.codeaurora.org/cgit/quic/la/platform/hardware/ril/tree/include/telephony/ril.h?h=b2g_jb_3.2 + let map = {}; + map[REQUEST_SET_UICC_SUBSCRIPTION] = 114; + map[REQUEST_SET_DATA_SUBSCRIPTION] = 115; + this._requestMap[8] = map; + // RIL version 9. + // For the CAF's proprietary parcels. Please see + // https://www.codeaurora.org/cgit/quic/la/platform/hardware/ril/tree/include/telephony/ril.h?h=b2g_kk_3.5 + map = {}; + map[REQUEST_SET_UICC_SUBSCRIPTION] = 115; + map[REQUEST_SET_DATA_SUBSCRIPTION] = 116; + this._requestMap[9] = map; }; /** @@ -124,19 +144,18 @@ * use cases, especially the cases from different partners. */ BufObject.prototype._reMapRequestType = function(type) { - let newType = type; - switch (type) { - case REQUEST_SET_UICC_SUBSCRIPTION: - case REQUEST_SET_DATA_SUBSCRIPTION: - if (this.context.RIL.version < 9) { - // Shift the CAF's proprietary parcels. Please see - // https://www.codeaurora.org/cgit/quic/la/platform/hardware/ril/tree/include/telephony/ril.h?h=b2g_jb_3.2 - newType = type - 1; + for (let version in this._requestMap) { + if (this.context.RIL.version <= version) { + let newType = this._requestMap[version][type]; + if (newType) { + if (DEBUG) { + this.context.debug("Remap request type to " + newType); + } + return newType; } - break; + } } - - return newType; + return type; }; // Before we make sure to form it as a module would not add extra diff --git a/testing/taskcluster/tasks/branches/try/job_flags.yml b/testing/taskcluster/tasks/branches/try/job_flags.yml index c8698ef42f8f..9778ac92ec12 100644 --- a/testing/taskcluster/tasks/branches/try/job_flags.yml +++ b/testing/taskcluster/tasks/branches/try/job_flags.yml @@ -44,6 +44,18 @@ builds: task: tasks/builds/b2g_emulator_ics_opt.yml debug: task: tasks/builds/b2g_emulator_ics_debug.yml + flame-kk: + platforms: + - b2g + types: + opt: + task: tasks/builds/b2g_flame_kk_opt.yml + flame-kk-eng: + platforms: + - b2g + types: + opt: + task: tasks/builds/b2g_flame_kk_eng.yml tests: cppunit: diff --git a/testing/taskcluster/tasks/builds/b2g_flame_kk_eng.yml b/testing/taskcluster/tasks/builds/b2g_flame_kk_eng.yml index 96823754353f..be7344484bc1 100644 --- a/testing/taskcluster/tasks/builds/b2g_flame_kk_eng.yml +++ b/testing/taskcluster/tasks/builds/b2g_flame_kk_eng.yml @@ -1,7 +1,7 @@ $inherits: from: 'tasks/builds/b2g_phone_base.yml' task: - workerType: b2gbuild-emulator-kk + workerType: flame-kk scopes: - 'docker-worker:cache:build-flame-kk-eng' metadata: diff --git a/testing/taskcluster/tasks/builds/b2g_flame_kk_opt.yml b/testing/taskcluster/tasks/builds/b2g_flame_kk_opt.yml index fc13e1b68304..41fa9f2dae51 100644 --- a/testing/taskcluster/tasks/builds/b2g_flame_kk_opt.yml +++ b/testing/taskcluster/tasks/builds/b2g_flame_kk_opt.yml @@ -1,7 +1,7 @@ $inherits: from: 'tasks/builds/b2g_phone_base.yml' task: - workerType: b2gbuild-emulator-kk + workerType: flame-kk scopes: - 'docker-worker:cache:build-flame-kk-opt' metadata: diff --git a/testing/taskcluster/tasks/phone_build.yml b/testing/taskcluster/tasks/phone_build.yml index 59a967904467..cfc5aba7e0b4 100644 --- a/testing/taskcluster/tasks/phone_build.yml +++ b/testing/taskcluster/tasks/phone_build.yml @@ -9,11 +9,13 @@ task: metadata: source: http://todo.com/soon owner: mozilla-taskcluster-maintenance@mozilla.com + tags: createdForUser: {{owner}} workerType: b2gbuild provisionerId: aws-provisioner + schedulerId: task-graph-scheduler scopes: # Nearly all of our build tasks use tc-vcs so just include the scope across @@ -49,4 +51,6 @@ task: extra: treeherder: + groupSymbol: tc + groupName: Submitted by taskcluster symbol: B