| /* |
| * 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::StaLinkLayerRadioStats; |
| import @1.0::StaLinkLayerIfaceStats; |
| import @1.0::TimeStampInMs; |
| import @1.0::WifiChannelInfo; |
| |
| struct WifiChannelStats { |
| /** |
| * Channel information. |
| */ |
| WifiChannelInfo channel; |
| /** |
| * Total time for which the radio is awake on this channel. |
| */ |
| uint32_t onTimeInMs; |
| /** |
| * Total time for which CCA is held busy on this channel. |
| */ |
| uint32_t ccaBusyTimeInMs; |
| }; |
| |
| struct StaLinkLayerRadioStats { |
| /** |
| * Baseline information as defined in HAL 1.0. |
| */ |
| @1.0::StaLinkLayerRadioStats V1_0; |
| |
| /** |
| * Total time for which the radio is awake due to NAN scan since boot or crash. |
| */ |
| uint32_t onTimeInMsForNanScan; |
| |
| /** |
| * Total time for which the radio is awake due to background scan since boot or crash. |
| */ |
| uint32_t onTimeInMsForBgScan; |
| |
| /** |
| * Total time for which the radio is awake due to roam scan since boot or crash. |
| */ |
| uint32_t onTimeInMsForRoamScan; |
| |
| /** |
| * Total time for which the radio is awake due to PNO scan since boot or crash. |
| */ |
| uint32_t onTimeInMsForPnoScan; |
| |
| /** |
| * Total time for which the radio is awake due to Hotspot 2.0 scans and GAS exchange since boot |
| * or crash. |
| */ |
| uint32_t onTimeInMsForHs20Scan; |
| |
| /** |
| * List of channel stats associated with this radio |
| */ |
| vec<WifiChannelStats> channelStats; |
| }; |
| |
| /** |
| * Link layer stats retrieved via |getLinkLayerStats|. |
| */ |
| struct StaLinkLayerStats { |
| StaLinkLayerIfaceStats iface; |
| vec<StaLinkLayerRadioStats> radios; |
| /** |
| * TimeStamp for each stats sample. |
| * This is the absolute milliseconds from boot when these stats were |
| * sampled. |
| */ |
| TimeStampInMs timeStampInMs; |
| }; |