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

Commit ca0e5aa8 authored by Sarah Chin's avatar Sarah Chin Committed by Gerrit Code Review
Browse files

Merge changes from topics "ngran", "update_ngran"

* changes:
  Update NGRAN bands
  Add HAL for 5G bands
parents d3a2bdfc afa47584
Loading
Loading
Loading
Loading
+3 −4
Original line number Diff line number Diff line
@@ -604,12 +604,11 @@ a64467bae843569f0d465c5be7f0c7a5b987985b55a3ef4794dd5afc68538650 android.hardwar
619fc9839ec6e369cfa9b28e3e9412e6885720ff8f9b5750c1b6ffb905120391 android.hardware.wifi.supplicant@1.3::ISupplicantStaIfaceCallback
c9273429fcf98d797d3bb07fdba6f1be95bf960f9255cde169fd1ca4db85f856 android.hardware.wifi.supplicant@1.3::ISupplicantStaNetwork
9b0a3ab6f4f74b971ed094426d8a443e29b512ff03e1ab50c07156396cdb2483 android.hardware.wifi.supplicant@1.3::types
274fb1254a6d1a97824ec5c880eeefc0e410dc6d3a2a4c34052201169d2b7de0 android.hardware.radio@1.5::types
4c666aaf3944ad91c2428b8456d0db4a2f81191f8c294f046a2f539e9fc7b6fd android.hardware.radio@1.5::IRadio
35cd6586225912718c599421606d69260707e43732d874f2064e28de45c87fac android.hardware.radio@1.5::types
3f1e2410d9bed4e7d41c6a589fe3a7943bc904b0066e40e0199a7c58427ac4e9 android.hardware.radio@1.5::IRadio
3afac66f21a33bc9c4b80481c7d5540038348651d9a7d8af64ea13610af138da android.hardware.radio@1.5::IRadioIndication
70e977f2ccefd2e503bedb3a66313639b53fbc7bde025538b07f41e2292b6624 android.hardware.radio@1.5::IRadioResponse
caf00e0d942b77b17d7061b38de11e5b19e1da90d4818434cb4916ba89e30686 android.hardware.radio@1.5::IRadioResponse
55f0a15642869ec98a55ea0a5ac049d3e1a6245ff7750deb6bcb7182057eee83 android.hardware.radio.config@1.3::types
b27ab0cd40b0b078cdcd024bfe1061c4c4c065f3519eeb9347fa359a3268a5ae android.hardware.radio.config@1.3::IRadioConfig
742360c775313438b0f82256eac62fb5bbc76a6ae6f388573f3aa142fb2c1eea android.hardware.radio.config@1.3::IRadioConfigIndication
7683fed9d253956071f18b152e6be657719536f98d9b534433d5e411bcde5061 android.hardware.radio.config@1.3::IRadioConfigResponse
+30 −1
Original line number Diff line number Diff line
@@ -18,6 +18,8 @@ package android.hardware.radio@1.5;

import @1.4::IRadio;
import @1.5::AccessNetwork;
import @1.5::NetworkScanRequest;
import @1.5::RadioAccessSpecifier;
import @1.5::SignalThresholdInfo;

/**
@@ -29,7 +31,6 @@ import @1.5::SignalThresholdInfo;
 * setResponseFunctions must work with @1.5::IRadioResponse and @1.5::IRadioIndication.
 */
interface IRadio extends @1.4::IRadio {

    /**
     * Sets the signal strength reporting criteria.
     *
@@ -96,4 +97,32 @@ interface IRadio extends @1.4::IRadio {
     * Response callback is IRadioResponse.canToggleUiccApplicationsEnablementResponse()
     */
    oneway canToggleUiccApplicationsEnablement(int32_t serial);

    /**
     * Specify which bands modem's background scan must act on.
     * If specifyChannels is true, it only scans bands specified in specifiers.
     * If specifyChannels is false, it scans all bands.
     *
     * For example, CBRS is only on LTE band 48. By specifying this band,
     * modem saves more power.
     *
     * @param serial Serial number of request.
     * @param specifyChannels whether to scan bands defined in specifiers.
     * @param specifiers which bands to scan. Only used if specifyChannels is true.
     *
     * Response callback is IRadioResponse.setSystemSelectionChannelsResponse()
     */
    oneway setSystemSelectionChannels_1_5(int32_t serial, bool specifyChannels,
            vec<RadioAccessSpecifier> specifiers);

    /**
     * Starts a network scan
     *
     * @param serial Serial number of request.
     * @param request Defines the radio networks/bands/channels which need to be scanned.
     *
     * Same API as @1.4::IRadio.startNetworkScan_1_4, except using
     * 1.5 version of NetworkScanRequest
     */
    oneway startNetworkScan_1_5(int32_t serial, NetworkScanRequest request);
};
+24 −0
Original line number Diff line number Diff line
@@ -69,4 +69,28 @@ interface IRadioResponse extends @1.4::IRadioResponse {
     *   RadioError:INTERNAL_ERR
     */
    oneway canToggleUiccApplicationsEnablementResponse(RadioResponseInfo info, bool canToggle);

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

    /**
     * @param info Response info struct containing response type, serial no. and error
     *
     * Valid errors returned:
     *   RadioError:NONE
     *   RadioError:RADIO_NOT_AVAILABLE
     *   RadioError:DEVICE_IN_USE
     *   RadioError:INTERNAL_ERR
     *   RadioError:MODEM_ERR
     *   RadioError:INVALID_ARGUMENTS
     */
    oneway startNetworkScanResponse_1_5(RadioResponseInfo info);
};
+145 −0
Original line number Diff line number Diff line
@@ -16,6 +16,13 @@

package android.hardware.radio@1.5;

import @1.1::EutranBands;
import @1.1::GeranBands;
import @1.1::RadioAccessNetworks;
import @1.1::RadioAccessSpecifier;
import @1.1::ScanType;
import @1.1::UtranBands;
import @1.2::NetworkScanRequest;
import @1.4::AccessNetwork;

/**
@@ -114,3 +121,141 @@ enum AccessNetwork : @1.4::AccessNetwork {
     */
    NGRAN = 6,
};

enum RadioAccessNetworks : @1.1::RadioAccessNetworks {
    NGRAN = 4,
};

/**
 * Overwritten from @1.1::RadioAccessSpecifier to add NGRAN and NgranBands
 */
struct RadioAccessSpecifier {
    /**
     * The type of network to scan.
     */
    RadioAccessNetworks radioAccessNetwork;

    /**
     * The frequency bands to scan.
     * Maximum length of the vector is 8.
     */
    safe_union Bands {
        /** Valid only if radioAccessNetwork = GERAN. */
        vec<GeranBands> geranBands;
        /** Valid only if radioAccessNetwork = UTRAN. */
        vec<UtranBands> utranBands;
        /** Valid only if radioAccessNetwork = EUTRAN. */
        vec<EutranBands> eutranBands;
        /** Valid only if radioAccessNetwork = NGRAN. */
        vec<NgranBands> ngranBands;
    } bands;

    /**
     * The radio channels to scan as defined in 3GPP TS 25.101 and 36.101.
     * Maximum length of the vector is 32.
     */
    vec<int32_t> channels;
};

enum NgranBands : int32_t {
    /** 3GPP TS 38.101-1, Table 5.2-1: FR1 bands */
    BAND_1 = 1,
    BAND_2 = 2,
    BAND_3 = 3,
    BAND_5 = 5,
    BAND_7 = 7,
    BAND_8 = 8,
    BAND_12 = 12,
    BAND_14 = 14,
    BAND_18 = 18,
    BAND_20 = 20,
    BAND_25 = 25,
    BAND_28 = 28,
    BAND_29 = 29,
    BAND_30 = 30,
    BAND_34 = 34,
    BAND_38 = 38,
    BAND_39 = 39,
    BAND_40 = 40,
    BAND_41 = 41,
    BAND_48 = 48,
    BAND_50 = 50,
    BAND_51 = 51,
    BAND_65 = 65,
    BAND_66 = 66,
    BAND_70 = 70,
    BAND_71 = 71,
    BAND_74 = 74,
    BAND_75 = 75,
    BAND_76 = 76,
    BAND_77 = 77,
    BAND_78 = 78,
    BAND_79 = 79,
    BAND_80 = 80,
    BAND_81 = 81,
    BAND_82 = 82,
    BAND_83 = 83,
    BAND_84 = 84,
    BAND_86 = 86,
    BAND_90 = 90,
    /** 3GPP TS 38.101-2, Table 5.2-1: FR2 bands */
    BAND_257 = 257,
    BAND_258 = 258,
    BAND_260 = 260,
    BAND_261 = 261,
};

/**
 * Overwritten from @1.2::NetworkScanRequest to update
 * RadioAccessSpecifier to 1.5 version
 */
struct NetworkScanRequest {
    ScanType type;

    /**
     * Time interval in seconds between the completion of one scan and the start of
     * a subsequent scan.
     * Implementations may ignore this field unless the 'type' is 'PERIODIC'.
     * Range: ScanIntervalRange:MIN to ScanIntervalRange:MAX
     */
    int32_t interval;

    /**
     * Networks with bands/channels to scan
     * Maximum length of the vector is RadioConst:RADIO_ACCESS_SPECIFIER_MAX_SIZE
     */
    vec<RadioAccessSpecifier> specifiers;

    /**
     * Maximum duration of the periodic search (in seconds).
     * If the search lasts maxSearchTime, it must be terminated.
     * Range: MaxSearchTimeRange:MIN to MaxSearchTimeRange:MAX
     */
    int32_t maxSearchTime;

    /**
     * Indicates whether the modem must report incremental results of the network scan
     * to the client.
     * FALSE – Incremental results must not be reported.
     * TRUE  – Incremental must be reported.
     */
    bool incrementalResults;

    /**
     * Indicates the periodicity with which the modem must report incremental results to
     * the client (in seconds).
     * Implementations may ignore this value if the incremental results are not requested.
     * This value must be less than or equal to maxSearchTime.
     * Range: IncrementalResultsPeriodicityRange:MIN to IncrementalResultsPeriodicityRange:MAX
     */
    int32_t incrementalResultsPeriodicity;

    /**
     * Describes the List of PLMN ids (MCC-MNC)
     * If any PLMN of this list is found, search must end at that point and results with all
     * PLMN found until that point should be sent as response.
     * If the list is not sent, search to be completed until end and all PLMNs found to be
     * reported.
     */
    vec<string> mccMncs;
};
+419 −0

File changed.

Preview size limit exceeded, changes collapsed.

Loading