From bc4ca2af0294a7d067fc16b66eccf0a956acbdfd Mon Sep 17 00:00:00 2001 From: Mahesh KKV Date: Tue, 7 Feb 2023 12:10:50 -0800 Subject: [PATCH] Add more MLO link parameters Framework populates MLO link information from scan cache. In roaming use cases, framework may not have the scan result for the roamed AP. So, always get the MLO link parameters from the supplicant. Add static parameters apMldMacAddress, apLinkMacAddress and frequency of the link. Dynamic parameters like RSSI, link speed..etc. are queried from signal poll. Bug: 268230307 Test: m android.hardware.wifi.supplicant-update-api Change-Id: I7ffb23a8ead63a385cd00d26969529e2943fcff1 --- .../current/android/hardware/wifi/supplicant/MloLink.aidl | 2 ++ .../android/hardware/wifi/supplicant/MloLinksInfo.aidl | 2 ++ .../aidl/android/hardware/wifi/supplicant/MloLink.aidl | 8 ++++++++ .../android/hardware/wifi/supplicant/MloLinksInfo.aidl | 8 ++++++++ 4 files changed, 20 insertions(+) diff --git a/wifi/supplicant/aidl/aidl_api/android.hardware.wifi.supplicant/current/android/hardware/wifi/supplicant/MloLink.aidl b/wifi/supplicant/aidl/aidl_api/android.hardware.wifi.supplicant/current/android/hardware/wifi/supplicant/MloLink.aidl index f30ca94615..8783c40cbb 100644 --- a/wifi/supplicant/aidl/aidl_api/android.hardware.wifi.supplicant/current/android/hardware/wifi/supplicant/MloLink.aidl +++ b/wifi/supplicant/aidl/aidl_api/android.hardware.wifi.supplicant/current/android/hardware/wifi/supplicant/MloLink.aidl @@ -38,4 +38,6 @@ parcelable MloLink { byte[] staLinkMacAddress; byte tidsUplinkMap; byte tidsDownlinkMap; + @nullable byte[] apLinkMacAddress; + int frequencyMHz; } diff --git a/wifi/supplicant/aidl/aidl_api/android.hardware.wifi.supplicant/current/android/hardware/wifi/supplicant/MloLinksInfo.aidl b/wifi/supplicant/aidl/aidl_api/android.hardware.wifi.supplicant/current/android/hardware/wifi/supplicant/MloLinksInfo.aidl index 14fcb9178d..cd98f7fb8f 100644 --- a/wifi/supplicant/aidl/aidl_api/android.hardware.wifi.supplicant/current/android/hardware/wifi/supplicant/MloLinksInfo.aidl +++ b/wifi/supplicant/aidl/aidl_api/android.hardware.wifi.supplicant/current/android/hardware/wifi/supplicant/MloLinksInfo.aidl @@ -35,4 +35,6 @@ package android.hardware.wifi.supplicant; @VintfStability parcelable MloLinksInfo { android.hardware.wifi.supplicant.MloLink[] links; + int apMloLinkId; + @nullable byte[] apMldMacAddress; } diff --git a/wifi/supplicant/aidl/android/hardware/wifi/supplicant/MloLink.aidl b/wifi/supplicant/aidl/android/hardware/wifi/supplicant/MloLink.aidl index 7608e0a5b3..ed6528cb6f 100644 --- a/wifi/supplicant/aidl/android/hardware/wifi/supplicant/MloLink.aidl +++ b/wifi/supplicant/aidl/android/hardware/wifi/supplicant/MloLink.aidl @@ -58,4 +58,12 @@ parcelable MloLink { */ byte tidsUplinkMap; byte tidsDownlinkMap; + /** + * AP Link MAC Address + */ + @nullable byte[/* 6 */] apLinkMacAddress; + /** + * Frequency on which the link operates in MHz. + */ + int frequencyMHz; } diff --git a/wifi/supplicant/aidl/android/hardware/wifi/supplicant/MloLinksInfo.aidl b/wifi/supplicant/aidl/android/hardware/wifi/supplicant/MloLinksInfo.aidl index 2f14717209..d954d16018 100644 --- a/wifi/supplicant/aidl/android/hardware/wifi/supplicant/MloLinksInfo.aidl +++ b/wifi/supplicant/aidl/android/hardware/wifi/supplicant/MloLinksInfo.aidl @@ -28,4 +28,12 @@ parcelable MloLinksInfo { * List of MLO links */ MloLink[] links; + /** + * The MLO link-id for the access point. It is the link-id used for association. + */ + int apMloLinkId; + /** + * AP MLD MAC address. + */ + @nullable byte[/* 6 */] apMldMacAddress; }