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

Commit 20fd2c70 authored by Eric Schwarzenbach's avatar Eric Schwarzenbach
Browse files

Add physical channel configuration indication.

Also adds the new requisite types and an IndicationFilter for reporting.

Bug: 70638175
Test: n/a
Change-Id: I29f5fba4d1b21af3e7fda876c9a5c911936aeada
parent 21c6dc35
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -20,6 +20,7 @@ hidl_interface {
    ],
    types: [
        "CardStatus",
        "CellConnectionStatus",
        "CellIdentityCdma",
        "CellIdentityGsm",
        "CellIdentityLte",
@@ -36,6 +37,7 @@ hidl_interface {
        "MaxSearchTimeRange",
        "NetworkScanRequest",
        "NetworkScanResult",
        "PhysicalChannelConfig",
        "RadioConst",
        "ScanIntervalRange",
    ],
+9 −0
Original line number Diff line number Diff line
@@ -53,4 +53,13 @@ interface IRadioIndication extends @1.1::IRadioIndication {
     * @param lce LinkCapacityEstimate information as defined in types.hal
     */
    oneway currentLinkCapacityEstimate(RadioIndicationType type, LinkCapacityEstimate lce);

    /**
     * Indicates physical channel configurations.
     *
     * @param type Type of radio indication
     * @param configs List of PhysicalChannelConfigs as defined in types.hal
     */
    oneway currentPhysicalChannelConfigs(RadioIndicationType type,
            vec<PhysicalChannelConfig> configs);
};
+32 −0
Original line number Diff line number Diff line
@@ -64,6 +64,21 @@ enum IncrementalResultsPeriodicityRange : int32_t {
    MAX = 10,
};

enum CellConnectionStatus : int32_t {
    /**
     * Cell is not a serving cell.
     */
    NONE = 0,
    /**
     * UE has connection to cell for signalling and possibly data (3GPP 36.331, 25.331).
     */
    PRIMARY_SERVING,
    /**
     * UE has connection to cell for data (3GPP 36.331, 25.331).
     */
    SECONDARY_SERVING,
};

/**
 * Overwritten from @1.0::IndicationFilter in order to redefine ALL. In the future, this should
 * be extended instead of overwritten.
@@ -102,6 +117,12 @@ enum IndicationFilter : int32_t {
     * IRadio.setLinkCapacityReportingCriteria() are met.
     */
    LINK_CAPACITY_ESTIMATE = 1 << 3,
    /**
     * When this bit is set, the modem must send the physical channel configuration update through
     * IRadioIndication.currentPhysicalChannelConfigs() when the configuration has changed. It is
     * recommended that this be reported whenever link capacity or signal strength is reported.
     */
    PHYSICAL_CHANNEL_CONFIG = 1 << 4,
};

struct NetworkScanRequest {
@@ -295,3 +316,14 @@ struct LinkCapacityEstimate {
     */
    uint32_t uplinkCapacityKbps;
};

struct PhysicalChannelConfig {
    /**
     * Connection status for cell. Valid values are PRIMARY_SERVING and SECONDARY_SERVING.
     */
    CellConnectionStatus status;
    /**
     * Cell bandwidth, in kHz.
     */
    int32_t cellBandwidthDownlink;
};