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

Commit 40d7fee1 authored by Ahmed ElArabawy's avatar Ahmed ElArabawy Committed by Android (Google) Code Review
Browse files

Merge "Wifi: Create HAL API for low-latency modes"

parents 8cedb0a0 7d975e94
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -9,6 +9,7 @@ hidl_interface {
    srcs: [
        "types.hal",
        "IWifi.hal",
        "IWifiChip.hal",
        "IWifiStaIface.hal",
    ],
    interfaces: [

wifi/1.3/IWifiChip.hal

0 → 100644
+69 −0
Original line number Diff line number Diff line
/*
 * Copyright 2018 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.wifi@1.3;

import @1.0::WifiStatus;
import @1.2::IWifiChip;

/**
 * Interface that represents a chip that must be configured as a single unit.
 */
interface IWifiChip extends @1.2::IWifiChip {

    /**
     * Capabilities exposed by this chip.
     */
    enum ChipCapabilityMask : @1.2::IWifiChip.ChipCapabilityMask {
        /**
         * Set Latency Mode.
         */
         SET_LATENCY_MODE = 1 << 12
    };

    /**
     * Get the capabilities supported by this chip.
     *
     * @return status WifiStatus of the operation.
     *         Possible status codes:
     *         |WifiStatusCode.SUCCESS|,
     *         |WifiStatusCode.ERROR_WIFI_CHIP_INVALID|,
     *         |WifiStatusCode.ERROR_NOT_AVAILABLE|,
     *         |WifiStatusCode.ERROR_UNKNOWN|
     * @return capabilities Bitset of |ChipCapabilityMask| values.
     */
    getCapabilities_1_3()
      generates (WifiStatus status, bitfield<ChipCapabilityMask> capabilities);

    /**
     * This enum represents the different latency modes that can be set through
     * setLatencyMode()
     */
    enum LatencyMode : uint32_t {
        NORMAL    = 0,
        LOW       = 1
    };

    /**
     * API to set the wifi latency mode
     *
     * Latency mode determines whether or not to optimize for reducing wifi
     * latency as a tradeoff with other wifi functionality such as scanning,
     * roaming, etc. This optimization is suitable for some applications such
     * as gaming and virtual reality applications.
     */
    setLatencyMode(LatencyMode mode) generates (WifiStatus status);
};