Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f94eb06d authored by Grace Chen's avatar Grace Chen Committed by Gerrit Code Review
Browse files

Merge "Support different SIM power states"

parents 82ddb247 91865c21
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -3,6 +3,7 @@
filegroup {
    name: "android.hardware.radio@1.1_hal",
    srcs: [
        "types.hal",
        "IRadio.hal",
        "IRadioIndication.hal",
        "IRadioResponse.hal",
@@ -17,6 +18,7 @@ genrule {
        ":android.hardware.radio@1.1_hal",
    ],
    out: [
        "android/hardware/radio/1.1/types.cpp",
        "android/hardware/radio/1.1/RadioAll.cpp",
        "android/hardware/radio/1.1/RadioIndicationAll.cpp",
        "android/hardware/radio/1.1/RadioResponseAll.cpp",
@@ -31,6 +33,8 @@ genrule {
        ":android.hardware.radio@1.1_hal",
    ],
    out: [
        "android/hardware/radio/1.1/types.h",
        "android/hardware/radio/1.1/hwtypes.h",
        "android/hardware/radio/1.1/IRadio.h",
        "android/hardware/radio/1.1/IHwRadio.h",
        "android/hardware/radio/1.1/BnHwRadio.h",
+30 −0
Original line number Diff line number Diff line
@@ -51,4 +51,34 @@ interface IRadio extends @1.0::IRadio {
     */
     oneway setCarrierInfoForImsiEncryption(int32_t serial, vec<uint8_t> carrierKey,
             string keyIdentifier);

    /**
     * Set SIM card power state.
     * Request is equivalent to inserting or removing the card.
     *
     * The radio modem must generate IRadioIndication.simStatusChanged() as if the SIM had been
     * inserted or removed.
     *
     * @param serial Serial number of request
     * @param powerUp POWER_DOWN if powering down the SIM card,
     *                POWER_UP if powering up the SIM card,
     *                POWER_UP_PASS_THROUGH if powering up the SIM card in pass through mode.
     * When SIM card is in POWER_UP_PASS_THROUGH, the modem does not send any command to it
     * (for example SELECT of MF, or TERMINAL CAPABILITY), and the SIM card is controlled
     * completely by Telephony sending APDUs directly. The SIM card state must be
     * RIL_CARDSTATE_PRESENT and the number of card apps will be 0.
     * No new error code is generated. Emergency calls are supported in the same way as if the
     * SIM card is absent.
     * POWER_UP_PASS_THROUGH mode is valid only for the specific card session where it is activated,
     * and normal behavior occurs at the next SIM initialization, unless POWER_UP_PASS_THROUGH mode
     * is requested again.
     * The device is required to power down the SIM card before it can switch the mode between
     * POWER_UP and POWER_UP_PASS_THROUGH.
     * At device power up, the SIM interface is powered up automatically. Each subsequent request
     * to this method is processed only after the completion of the previous one.
     *
     * Response callback is IRadioResponse.setSimCardPowerResponse_1_1()
     */
    oneway setSimCardPower_1_1(int32_t serial, CardPowerState powerUp);

};
+12 −0
Original line number Diff line number Diff line
@@ -34,4 +34,16 @@ interface IRadioResponse extends @1.0::IRadioResponse {
     *   RadioError:MODEM_INTERNAL_FAILURE
     */
    oneway setCarrierInfoForImsiEncryptionResponse(RadioResponseInfo info);

    /**
     * @param info Response info struct containing response type, serial no. and error
     *
     * Valid errors returned:
     *   RadioError:NONE
     *   RadioError:RADIO_NOT_AVAILABLE
     *   RadioError:REQUEST_NOT_SUPPORTED
     *   RadioError:INVALID_ARGUMENTS
     */
    oneway setSimCardPowerResponse_1_1(RadioResponseInfo info);

};

radio/1.1/types.hal

0 → 100644
+23 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2016 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package android.hardware.radio@1.1;

enum CardPowerState : int32_t {
    POWER_DOWN,
    POWER_UP,
    POWER_UP_PASS_THROUGH,
};