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

Commit aea5d0af authored by Shuo Qian's avatar Shuo Qian Committed by android-build-merger
Browse files

Merge "Revert "Make getRssi() API for LTE Received Signal Strength Indication (RSSI)""

am: 1a517ba8

Change-Id: I72cc7a0f3c566820f674333b312ffec740281c4e
parents 509e8969 1a517ba8
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -42281,7 +42281,6 @@ package android.telephony {
    method public int getLevel();
    method public int getRsrp();
    method public int getRsrq();
    method public int getRssi();
    method public int getRssnr();
    method public int getTimingAdvance();
    method public void writeToParcel(android.os.Parcel, int);
+10 −55
Original line number Diff line number Diff line
@@ -31,27 +31,8 @@ public final class CellSignalStrengthLte extends CellSignalStrength implements P
    private static final String LOG_TAG = "CellSignalStrengthLte";
    private static final boolean DBG = false;

    /**
     * Indicates the unknown or undetectable RSSI value in ASU.
     *
     * Reference: TS 27.007 8.5 - Signal quality +CSQ
     */
    private static final int SIGNAL_STRENGTH_LTE_RSSI_ASU_UNKNOWN = 99;
    /**
     * Indicates the maximum valid RSSI value in ASU.
     *
     * Reference: TS 27.007 8.5 - Signal quality +CSQ
     */
    private static final int SIGNAL_STRENGTH_LTE_RSSI_VALID_ASU_MAX_VALUE = 31;
    /**
     * Indicates the minimum valid RSSI value in ASU.
     *
     * Reference: TS 27.007 8.5 - Signal quality +CSQ
     */
    private static final int SIGNAL_STRENGTH_LTE_RSSI_VALID_ASU_MIN_VALUE = 0;

    @UnsupportedAppUsage
    private int mRssi;
    private int mSignalStrength;
    @UnsupportedAppUsage
    private int mRsrp;
    @UnsupportedAppUsage
@@ -70,9 +51,9 @@ public final class CellSignalStrengthLte extends CellSignalStrength implements P
    }

    /** @hide */
    public CellSignalStrengthLte(int rssi, int rsrp, int rsrq, int rssnr, int cqi,
    public CellSignalStrengthLte(int signalStrength, int rsrp, int rsrq, int rssnr, int cqi,
            int timingAdvance) {
        mRssi = convertRssiAsuToDBm(rssi);
        mSignalStrength = signalStrength;
        mRsrp = rsrp;
        mRsrq = rsrq;
        mRssnr = rssnr;
@@ -87,7 +68,7 @@ public final class CellSignalStrengthLte extends CellSignalStrength implements P

    /** @hide */
    protected void copyFrom(CellSignalStrengthLte s) {
        mRssi = s.mRssi;
        mSignalStrength = s.mSignalStrength;
        mRsrp = s.mRsrp;
        mRsrq = s.mRsrq;
        mRssnr = s.mRssnr;
@@ -104,7 +85,7 @@ public final class CellSignalStrengthLte extends CellSignalStrength implements P
    /** @hide */
    @Override
    public void setDefaultValues() {
        mRssi = CellInfo.UNAVAILABLE;
        mSignalStrength = CellInfo.UNAVAILABLE;
        mRsrp = CellInfo.UNAVAILABLE;
        mRsrq = CellInfo.UNAVAILABLE;
        mRssnr = CellInfo.UNAVAILABLE;
@@ -160,19 +141,6 @@ public final class CellSignalStrengthLte extends CellSignalStrength implements P
        return mRsrq;
    }

    /**
     * Get Received Signal Strength Indication (RSSI) in dBm
     *
     * The value range is [-113, -51] inclusively or {@link CellInfo#UNAVAILABLE} if unavailable.
     *
     * Reference: TS 27.007 8.5 Signal quality +CSQ
     *
     * @return the RSSI if available or {@link CellInfo#UNAVAILABLE} if unavailable.
     */
    public int getRssi() {
        return mRssi;
    }

    /**
     * Get reference signal signal-to-noise ratio
     *
@@ -242,7 +210,7 @@ public final class CellSignalStrengthLte extends CellSignalStrength implements P

    @Override
    public int hashCode() {
        return Objects.hash(mRssi, mRsrp, mRsrq, mRssnr, mCqi, mTimingAdvance);
        return Objects.hash(mSignalStrength, mRsrp, mRsrq, mRssnr, mCqi, mTimingAdvance);
    }

    @Override
@@ -259,7 +227,7 @@ public final class CellSignalStrengthLte extends CellSignalStrength implements P
            return false;
        }

        return mRssi == s.mRssi
        return mSignalStrength == s.mSignalStrength
                && mRsrp == s.mRsrp
                && mRsrq == s.mRsrq
                && mRssnr == s.mRssnr
@@ -273,7 +241,7 @@ public final class CellSignalStrengthLte extends CellSignalStrength implements P
    @Override
    public String toString() {
        return "CellSignalStrengthLte:"
                + " rssi(dBm)=" + mRssi
                + " ss=" + mSignalStrength
                + " rsrp=" + mRsrp
                + " rsrq=" + mRsrq
                + " rssnr=" + mRssnr
@@ -285,7 +253,7 @@ public final class CellSignalStrengthLte extends CellSignalStrength implements P
    @Override
    public void writeToParcel(Parcel dest, int flags) {
        if (DBG) log("writeToParcel(Parcel, int): " + toString());
        dest.writeInt(mRssi);
        dest.writeInt(mSignalStrength);
        // Need to multiply rsrp and rsrq by -1
        // to ensure consistency when reading values written here
        // unless the values are invalid
@@ -301,7 +269,7 @@ public final class CellSignalStrengthLte extends CellSignalStrength implements P
     * where the token is already been processed.
     */
    private CellSignalStrengthLte(Parcel in) {
        mRssi = convertRssiAsuToDBm(in.readInt());
        mSignalStrength = in.readInt();
        // rsrp and rsrq are written into the parcel as positive values.
        // Need to convert into negative values unless the values are invalid
        mRsrp = in.readInt();
@@ -341,17 +309,4 @@ public final class CellSignalStrengthLte extends CellSignalStrength implements P
    private static void log(String s) {
        Rlog.w(LOG_TAG, s);
    }

    private static int convertRssiAsuToDBm(int rssiAsu) {
        if (rssiAsu != SIGNAL_STRENGTH_LTE_RSSI_ASU_UNKNOWN
                && (rssiAsu < SIGNAL_STRENGTH_LTE_RSSI_VALID_ASU_MIN_VALUE
                || rssiAsu > SIGNAL_STRENGTH_LTE_RSSI_VALID_ASU_MAX_VALUE)) {
            Rlog.e(LOG_TAG, "convertRssiAsuToDBm: invalid RSSI in ASU=" + rssiAsu);
            return CellInfo.UNAVAILABLE;
        }
        if (rssiAsu == SIGNAL_STRENGTH_LTE_RSSI_ASU_UNKNOWN) {
            return CellInfo.UNAVAILABLE;
        }
        return -113 + (2 * rssiAsu);
    }
}