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

Commit 45364dc4 authored by Wink Saville's avatar Wink Saville Committed by Android (Google) Code Review
Browse files

Merge "Telephony: Signal Strength Changes." into honeycomb-LTE

parents a142512a 5d7b9271
Loading
Loading
Loading
Loading
+21 −13
Original line number Original line Diff line number Diff line
@@ -556,10 +556,7 @@ public class SignalStrength implements Parcelable {
     * @hide
     * @hide
     */
     */
    public int getLteDbm() {
    public int getLteDbm() {
        log("TODO: teach getLteDbm to compute dBm properly");
        return mLteRsrp;
        int level = -1;
        if (DBG) log("getLteDbm=" + level);
        return level;
    }
    }


    /**
    /**
@@ -568,22 +565,33 @@ public class SignalStrength implements Parcelable {
     * @hide
     * @hide
     */
     */
    public int getLteLevel() {
    public int getLteLevel() {
        log("TODO: teach getLteLevel to compute Level properly");
        int levelLteRsrp = 0;
        int level = SIGNAL_STRENGTH_MODERATE;

        if (DBG) log("getLteLevel=" + level);
        if (mLteRsrp == -1) levelLteRsrp = 0;
        return level;
        else if (mLteRsrp >= -85) levelLteRsrp = SIGNAL_STRENGTH_GREAT;
        else if (mLteRsrp >= -95) levelLteRsrp = SIGNAL_STRENGTH_GOOD;
        else if (mLteRsrp >= -105) levelLteRsrp = SIGNAL_STRENGTH_MODERATE;
        else if (mLteRsrp >= -115) levelLteRsrp = SIGNAL_STRENGTH_POOR;
        else levelLteRsrp = 0;

        if (DBG) log("Lte level: "+levelLteRsrp);
        return levelLteRsrp;
    }
    }


    /**
    /**
     * Get the LTE signal level as an asu value between 0..31, 99 is unknown
     * Get the LTE signal level as an asu value between 0..97, 99 is unknown
     * Asu is calculated based on 3GPP RSRP. Refer to 3GPP 27.007 (Ver 10.3.0) Sec 8.69
     *
     *
     * @hide
     * @hide
     */
     */
    public int getLteAsuLevel() {
    public int getLteAsuLevel() {
        log("TODO: teach getLteAsuLevel to compute asu Level properly");
        int lteAsuLevel = 99;
        int level = 4;
        int lteDbm = getLteDbm();
        if (DBG) log("getLteAsuLevel=" + level);
        if (lteDbm <= -140) lteAsuLevel = 0;
        return level;
        else if (lteDbm >= -43) lteAsuLevel = 97;
        else lteAsuLevel = lteDbm + 140;
        if (DBG) log("Lte Asu level: "+lteAsuLevel);
        return lteAsuLevel;
    }
    }


    /**
    /**