diff --git a/compatibility_matrices/compatibility_matrix.202504.xml b/compatibility_matrices/compatibility_matrix.202504.xml index 22746e3067..d8a4050008 100644 --- a/compatibility_matrices/compatibility_matrix.202504.xml +++ b/compatibility_matrices/compatibility_matrix.202504.xml @@ -646,7 +646,7 @@ android.hardware.wifi - 1-2 + 2-3 IWifi default diff --git a/wifi/aidl/Android.bp b/wifi/aidl/Android.bp index 392d2e9ec6..b77e935a15 100644 --- a/wifi/aidl/Android.bp +++ b/wifi/aidl/Android.bp @@ -64,5 +64,5 @@ aidl_interface { }, ], - frozen: true, + frozen: false, } diff --git a/wifi/aidl/aidl_api/android.hardware.wifi/current/android/hardware/wifi/IWifiChip.aidl b/wifi/aidl/aidl_api/android.hardware.wifi/current/android/hardware/wifi/IWifiChip.aidl index 5ed7517766..5fe7c53830 100644 --- a/wifi/aidl/aidl_api/android.hardware.wifi/current/android/hardware/wifi/IWifiChip.aidl +++ b/wifi/aidl/aidl_api/android.hardware.wifi/current/android/hardware/wifi/IWifiChip.aidl @@ -98,6 +98,7 @@ interface IWifiChip { SET_AFC_CHANNEL_ALLOWANCE = (1 << 7) /* 128 */, T2LM_NEGOTIATION = (1 << 8) /* 256 */, SET_VOIP_MODE = (1 << 9) /* 512 */, + MLO_SAP = (1 << 10) /* 1024 */, } @VintfStability parcelable ChipConcurrencyCombinationLimit { diff --git a/wifi/aidl/android/hardware/wifi/IWifiChip.aidl b/wifi/aidl/android/hardware/wifi/IWifiChip.aidl index d12d26c65c..4e418d86e5 100644 --- a/wifi/aidl/android/hardware/wifi/IWifiChip.aidl +++ b/wifi/aidl/android/hardware/wifi/IWifiChip.aidl @@ -87,6 +87,10 @@ interface IWifiChip { * Chip supports voip mode setting. */ SET_VOIP_MODE = 1 << 9, + /** + * Chip supports Wi-Fi 7 MLO SoftAp. + */ + MLO_SAP = 1 << 10, } /** diff --git a/wifi/aidl/default/Android.bp b/wifi/aidl/default/Android.bp index 3fcb77f597..0711bde8a5 100644 --- a/wifi/aidl/default/Android.bp +++ b/wifi/aidl/default/Android.bp @@ -106,7 +106,7 @@ cc_library_static { "libwifi-hal", "libwifi-system-iface", "libxml2", - "android.hardware.wifi-V2-ndk", + "android.hardware.wifi-V3-ndk", ], export_include_dirs: ["."], @@ -138,7 +138,7 @@ cc_binary { "libwifi-hal", "libwifi-system-iface", "libxml2", - "android.hardware.wifi-V2-ndk", + "android.hardware.wifi-V3-ndk", ], static_libs: ["android.hardware.wifi-service-lib"], init_rc: ["android.hardware.wifi-service.rc"], @@ -167,7 +167,7 @@ cc_binary { "libwifi-hal", "libwifi-system-iface", "libxml2", - "android.hardware.wifi-V2-ndk", + "android.hardware.wifi-V3-ndk", ], static_libs: ["android.hardware.wifi-service-lib"], init_rc: ["android.hardware.wifi-service-lazy.rc"], @@ -199,7 +199,7 @@ cc_test { static_libs: [ "libgmock", "libgtest", - "android.hardware.wifi-V2-ndk", + "android.hardware.wifi-V3-ndk", "android.hardware.wifi.common-V1-ndk", "android.hardware.wifi-service-lib", ], diff --git a/wifi/aidl/default/aidl_struct_util.cpp b/wifi/aidl/default/aidl_struct_util.cpp index d99edaab9b..0455be7244 100644 --- a/wifi/aidl/default/aidl_struct_util.cpp +++ b/wifi/aidl/default/aidl_struct_util.cpp @@ -61,6 +61,8 @@ IWifiChip::FeatureSetMask convertLegacyChipFeatureToAidl(uint64_t feature) { return IWifiChip::FeatureSetMask::SET_AFC_CHANNEL_ALLOWANCE; case WIFI_FEATURE_SET_VOIP_MODE: return IWifiChip::FeatureSetMask::SET_VOIP_MODE; + case WIFI_FEATURE_MLO_SAP: + return IWifiChip::FeatureSetMask::MLO_SAP; }; CHECK(false) << "Unknown legacy feature: " << feature; return {}; diff --git a/wifi/aidl/default/android.hardware.wifi-service.xml b/wifi/aidl/default/android.hardware.wifi-service.xml index 3b68c8eeb0..9bfffb6283 100644 --- a/wifi/aidl/default/android.hardware.wifi-service.xml +++ b/wifi/aidl/default/android.hardware.wifi-service.xml @@ -1,7 +1,7 @@ android.hardware.wifi - 2 + 3 IWifi/default diff --git a/wifi/aidl/vts/functional/Android.bp b/wifi/aidl/vts/functional/Android.bp index 9994d0979a..66eb9708d9 100644 --- a/wifi/aidl/vts/functional/Android.bp +++ b/wifi/aidl/vts/functional/Android.bp @@ -41,7 +41,7 @@ cc_test { static_libs: [ "VtsHalWifiTargetTestUtil", "android.hardware.wifi.common-V1-ndk", - "android.hardware.wifi-V2-ndk", + "android.hardware.wifi-V3-ndk", "libwifi-system-iface", ], test_suites: [ @@ -67,7 +67,7 @@ cc_test { static_libs: [ "VtsHalWifiTargetTestUtil", "android.hardware.wifi.common-V1-ndk", - "android.hardware.wifi-V2-ndk", + "android.hardware.wifi-V3-ndk", "libwifi-system-iface", ], test_suites: [ @@ -93,7 +93,7 @@ cc_test { static_libs: [ "VtsHalWifiTargetTestUtil", "android.hardware.wifi.common-V1-ndk", - "android.hardware.wifi-V2-ndk", + "android.hardware.wifi-V3-ndk", "libwifi-system-iface", ], test_suites: [ @@ -119,7 +119,7 @@ cc_test { static_libs: [ "VtsHalWifiTargetTestUtil", "android.hardware.wifi.common-V1-ndk", - "android.hardware.wifi-V2-ndk", + "android.hardware.wifi-V3-ndk", "libwifi-system-iface", ], test_suites: [ @@ -145,7 +145,7 @@ cc_test { static_libs: [ "VtsHalWifiTargetTestUtil", "android.hardware.wifi.common-V1-ndk", - "android.hardware.wifi-V2-ndk", + "android.hardware.wifi-V3-ndk", "libwifi-system-iface", ], test_suites: [ @@ -170,7 +170,7 @@ cc_library_static { ], static_libs: [ "android.hardware.wifi.common-V1-ndk", - "android.hardware.wifi-V2-ndk", + "android.hardware.wifi-V3-ndk", "libwifi-system-iface", ], } diff --git a/wifi/hostapd/aidl/vts/functional/Android.bp b/wifi/hostapd/aidl/vts/functional/Android.bp index bf1b0d0e0a..b1c9c5ded7 100644 --- a/wifi/hostapd/aidl/vts/functional/Android.bp +++ b/wifi/hostapd/aidl/vts/functional/Android.bp @@ -38,7 +38,7 @@ cc_test { "android.hardware.wifi@1.5", "android.hardware.wifi@1.6", "android.hardware.wifi.common-V1-ndk", - "android.hardware.wifi-V2-ndk", + "android.hardware.wifi-V3-ndk", "libwifi-system", "libwifi-system-iface", "VtsHalWifiTargetTestUtil", diff --git a/wifi/legacy_headers/include/hardware_legacy/wifi_hal.h b/wifi/legacy_headers/include/hardware_legacy/wifi_hal.h index 9baa2c7809..c68cdf6726 100644 --- a/wifi/legacy_headers/include/hardware_legacy/wifi_hal.h +++ b/wifi/legacy_headers/include/hardware_legacy/wifi_hal.h @@ -494,6 +494,7 @@ void wifi_get_error_info(wifi_error err, const char **msg); // return a pointer #define WIFI_FEATURE_ROAMING_MODE_CONTROL (uint64_t)0x800000000 // Support for configuring roaming mode #define WIFI_FEATURE_SET_VOIP_MODE (uint64_t)0x1000000000 // Support Voip mode setting #define WIFI_FEATURE_CACHED_SCAN_RESULTS (uint64_t)0x2000000000 // Support cached scan result report +#define WIFI_FEATURE_MLO_SAP (uint64_t)0x4000000000 // Support MLO SoftAp // Add more features here #define IS_MASK_SET(mask, flags) (((flags) & (mask)) == (mask)) diff --git a/wifi/supplicant/aidl/vts/functional/Android.bp b/wifi/supplicant/aidl/vts/functional/Android.bp index 4ffec3f433..8bfe805921 100644 --- a/wifi/supplicant/aidl/vts/functional/Android.bp +++ b/wifi/supplicant/aidl/vts/functional/Android.bp @@ -53,7 +53,7 @@ cc_test { "VtsHalWifiV1_5TargetTestUtil", "VtsHalWifiSupplicantV1_0TargetTestUtil", "android.hardware.wifi.common-V1-ndk", - "android.hardware.wifi-V2-ndk", + "android.hardware.wifi-V3-ndk", "VtsHalWifiTargetTestUtil", ], test_suites: [ @@ -91,7 +91,7 @@ cc_test { "VtsHalWifiV1_5TargetTestUtil", "VtsHalWifiSupplicantV1_0TargetTestUtil", "android.hardware.wifi.common-V1-ndk", - "android.hardware.wifi-V2-ndk", + "android.hardware.wifi-V3-ndk", "VtsHalWifiTargetTestUtil", ], test_suites: [ @@ -129,7 +129,7 @@ cc_test { "VtsHalWifiV1_5TargetTestUtil", "VtsHalWifiSupplicantV1_0TargetTestUtil", "android.hardware.wifi.common-V1-ndk", - "android.hardware.wifi-V2-ndk", + "android.hardware.wifi-V3-ndk", "VtsHalWifiTargetTestUtil", ], test_suites: [