Loading wifi/1.3/IWifiStaIface.hal +12 −0 Original line number Original line Diff line number Diff line Loading @@ -17,6 +17,7 @@ package android.hardware.wifi@1.3; package android.hardware.wifi@1.3; import @1.0::WifiStatus; import @1.0::WifiStatus; import @1.0::MacAddress; import @1.2::IWifiStaIface; import @1.2::IWifiStaIface; /** /** Loading @@ -41,4 +42,15 @@ interface IWifiStaIface extends @1.2::IWifiStaIface { * @return stats Instance of |LinkLayerStats|. * @return stats Instance of |LinkLayerStats|. */ */ getLinkLayerStats_1_3() generates (WifiStatus status, StaLinkLayerStats stats); getLinkLayerStats_1_3() generates (WifiStatus status, StaLinkLayerStats stats); /** * Gets the factory MAC address of the Sta Interface * @return status WifiStatus of the operation * Possible status codes: * |WifiStatusCode.SUCCESS|, * |WifiStatusCode.ERROR_WIFI_IFACE_INVALID|, * |WifiStatusCode.ERROR_UNKNOWN| * @return mac Factory MAC address of the Sta Interface */ getFactoryMacAddress() generates (WifiStatus status, MacAddress mac); }; }; wifi/1.3/default/wifi_sta_iface.cpp +14 −0 Original line number Original line Diff line number Diff line Loading @@ -255,6 +255,13 @@ Return<void> WifiStaIface::setMacAddress(const hidl_array<uint8_t, 6>& mac, mac); mac); } } Return<void> WifiStaIface::getFactoryMacAddress( getFactoryMacAddress_cb hidl_status_cb) { return validateAndCall(this, WifiStatusCode::ERROR_WIFI_IFACE_INVALID, &WifiStaIface::getFactoryMacAddressInternal, hidl_status_cb); } std::pair<WifiStatus, std::string> WifiStaIface::getNameInternal() { std::pair<WifiStatus, std::string> WifiStaIface::getNameInternal() { return {createWifiStatus(WifiStatusCode::SUCCESS), ifname_}; return {createWifiStatus(WifiStatusCode::SUCCESS), ifname_}; } } Loading Loading @@ -633,6 +640,13 @@ WifiStatus WifiStaIface::setMacAddressInternal( return createWifiStatus(WifiStatusCode::SUCCESS); return createWifiStatus(WifiStatusCode::SUCCESS); } } std::pair<WifiStatus, std::array<uint8_t, 6>> WifiStaIface::getFactoryMacAddressInternal() { std::array<uint8_t, 6> mac = iface_tool_.GetFactoryMacAddress(ifname_.c_str()); return {createWifiStatus(WifiStatusCode::SUCCESS), mac}; } } // namespace implementation } // namespace implementation } // namespace V1_3 } // namespace V1_3 } // namespace wifi } // namespace wifi Loading wifi/1.3/default/wifi_sta_iface.h +4 −0 Original line number Original line Diff line number Diff line Loading @@ -109,6 +109,8 @@ class WifiStaIface : public V1_3::IWifiStaIface { getDebugRxPacketFates_cb hidl_status_cb) override; getDebugRxPacketFates_cb hidl_status_cb) override; Return<void> setMacAddress(const hidl_array<uint8_t, 6>& mac, Return<void> setMacAddress(const hidl_array<uint8_t, 6>& mac, setMacAddress_cb hidl_status_cb) override; setMacAddress_cb hidl_status_cb) override; Return<void> getFactoryMacAddress( getFactoryMacAddress_cb hidl_status_cb) override; private: private: // Corresponding worker functions for the HIDL methods. // Corresponding worker functions for the HIDL methods. Loading Loading @@ -155,6 +157,8 @@ class WifiStaIface : public V1_3::IWifiStaIface { std::pair<WifiStatus, std::vector<WifiDebugRxPacketFateReport>> std::pair<WifiStatus, std::vector<WifiDebugRxPacketFateReport>> getDebugRxPacketFatesInternal(); getDebugRxPacketFatesInternal(); WifiStatus setMacAddressInternal(const std::array<uint8_t, 6>& mac); WifiStatus setMacAddressInternal(const std::array<uint8_t, 6>& mac); std::pair<WifiStatus, std::array<uint8_t, 6>> getFactoryMacAddressInternal(); std::string ifname_; std::string ifname_; std::weak_ptr<legacy_hal::WifiLegacyHal> legacy_hal_; std::weak_ptr<legacy_hal::WifiLegacyHal> legacy_hal_; Loading wifi/1.3/vts/functional/Android.bp +1 −0 Original line number Original line Diff line number Diff line Loading @@ -20,6 +20,7 @@ cc_test { srcs: [ srcs: [ "VtsHalWifiV1_3TargetTest.cpp", "VtsHalWifiV1_3TargetTest.cpp", "wifi_chip_hidl_test.cpp", "wifi_chip_hidl_test.cpp", "wifi_sta_iface_hidl_test.cpp", ], ], static_libs: [ static_libs: [ "VtsHalWifiV1_0TargetTestUtil", "VtsHalWifiV1_0TargetTestUtil", Loading wifi/1.3/vts/functional/VtsHalWifiV1_3TargetTest.cpp +2 −0 Original line number Original line Diff line number Diff line Loading @@ -19,6 +19,8 @@ #include "wifi_hidl_test_utils.h" #include "wifi_hidl_test_utils.h" using ::android::hardware::wifi::V1_3::IWifi; // Test environment for Wifi HIDL HAL. // Test environment for Wifi HIDL HAL. class WifiHidlEnvironment_1_3 : public WifiHidlEnvironment { class WifiHidlEnvironment_1_3 : public WifiHidlEnvironment { public: public: Loading Loading
wifi/1.3/IWifiStaIface.hal +12 −0 Original line number Original line Diff line number Diff line Loading @@ -17,6 +17,7 @@ package android.hardware.wifi@1.3; package android.hardware.wifi@1.3; import @1.0::WifiStatus; import @1.0::WifiStatus; import @1.0::MacAddress; import @1.2::IWifiStaIface; import @1.2::IWifiStaIface; /** /** Loading @@ -41,4 +42,15 @@ interface IWifiStaIface extends @1.2::IWifiStaIface { * @return stats Instance of |LinkLayerStats|. * @return stats Instance of |LinkLayerStats|. */ */ getLinkLayerStats_1_3() generates (WifiStatus status, StaLinkLayerStats stats); getLinkLayerStats_1_3() generates (WifiStatus status, StaLinkLayerStats stats); /** * Gets the factory MAC address of the Sta Interface * @return status WifiStatus of the operation * Possible status codes: * |WifiStatusCode.SUCCESS|, * |WifiStatusCode.ERROR_WIFI_IFACE_INVALID|, * |WifiStatusCode.ERROR_UNKNOWN| * @return mac Factory MAC address of the Sta Interface */ getFactoryMacAddress() generates (WifiStatus status, MacAddress mac); }; };
wifi/1.3/default/wifi_sta_iface.cpp +14 −0 Original line number Original line Diff line number Diff line Loading @@ -255,6 +255,13 @@ Return<void> WifiStaIface::setMacAddress(const hidl_array<uint8_t, 6>& mac, mac); mac); } } Return<void> WifiStaIface::getFactoryMacAddress( getFactoryMacAddress_cb hidl_status_cb) { return validateAndCall(this, WifiStatusCode::ERROR_WIFI_IFACE_INVALID, &WifiStaIface::getFactoryMacAddressInternal, hidl_status_cb); } std::pair<WifiStatus, std::string> WifiStaIface::getNameInternal() { std::pair<WifiStatus, std::string> WifiStaIface::getNameInternal() { return {createWifiStatus(WifiStatusCode::SUCCESS), ifname_}; return {createWifiStatus(WifiStatusCode::SUCCESS), ifname_}; } } Loading Loading @@ -633,6 +640,13 @@ WifiStatus WifiStaIface::setMacAddressInternal( return createWifiStatus(WifiStatusCode::SUCCESS); return createWifiStatus(WifiStatusCode::SUCCESS); } } std::pair<WifiStatus, std::array<uint8_t, 6>> WifiStaIface::getFactoryMacAddressInternal() { std::array<uint8_t, 6> mac = iface_tool_.GetFactoryMacAddress(ifname_.c_str()); return {createWifiStatus(WifiStatusCode::SUCCESS), mac}; } } // namespace implementation } // namespace implementation } // namespace V1_3 } // namespace V1_3 } // namespace wifi } // namespace wifi Loading
wifi/1.3/default/wifi_sta_iface.h +4 −0 Original line number Original line Diff line number Diff line Loading @@ -109,6 +109,8 @@ class WifiStaIface : public V1_3::IWifiStaIface { getDebugRxPacketFates_cb hidl_status_cb) override; getDebugRxPacketFates_cb hidl_status_cb) override; Return<void> setMacAddress(const hidl_array<uint8_t, 6>& mac, Return<void> setMacAddress(const hidl_array<uint8_t, 6>& mac, setMacAddress_cb hidl_status_cb) override; setMacAddress_cb hidl_status_cb) override; Return<void> getFactoryMacAddress( getFactoryMacAddress_cb hidl_status_cb) override; private: private: // Corresponding worker functions for the HIDL methods. // Corresponding worker functions for the HIDL methods. Loading Loading @@ -155,6 +157,8 @@ class WifiStaIface : public V1_3::IWifiStaIface { std::pair<WifiStatus, std::vector<WifiDebugRxPacketFateReport>> std::pair<WifiStatus, std::vector<WifiDebugRxPacketFateReport>> getDebugRxPacketFatesInternal(); getDebugRxPacketFatesInternal(); WifiStatus setMacAddressInternal(const std::array<uint8_t, 6>& mac); WifiStatus setMacAddressInternal(const std::array<uint8_t, 6>& mac); std::pair<WifiStatus, std::array<uint8_t, 6>> getFactoryMacAddressInternal(); std::string ifname_; std::string ifname_; std::weak_ptr<legacy_hal::WifiLegacyHal> legacy_hal_; std::weak_ptr<legacy_hal::WifiLegacyHal> legacy_hal_; Loading
wifi/1.3/vts/functional/Android.bp +1 −0 Original line number Original line Diff line number Diff line Loading @@ -20,6 +20,7 @@ cc_test { srcs: [ srcs: [ "VtsHalWifiV1_3TargetTest.cpp", "VtsHalWifiV1_3TargetTest.cpp", "wifi_chip_hidl_test.cpp", "wifi_chip_hidl_test.cpp", "wifi_sta_iface_hidl_test.cpp", ], ], static_libs: [ static_libs: [ "VtsHalWifiV1_0TargetTestUtil", "VtsHalWifiV1_0TargetTestUtil", Loading
wifi/1.3/vts/functional/VtsHalWifiV1_3TargetTest.cpp +2 −0 Original line number Original line Diff line number Diff line Loading @@ -19,6 +19,8 @@ #include "wifi_hidl_test_utils.h" #include "wifi_hidl_test_utils.h" using ::android::hardware::wifi::V1_3::IWifi; // Test environment for Wifi HIDL HAL. // Test environment for Wifi HIDL HAL. class WifiHidlEnvironment_1_3 : public WifiHidlEnvironment { class WifiHidlEnvironment_1_3 : public WifiHidlEnvironment { public: public: Loading