summaryrefslogtreecommitdiff
path: root/wifi/java/src
diff options
context:
space:
mode:
author Bruno Kremp <bruno.kremp@sony.com> 2023-01-24 09:00:05 +0100
committer Oscar Shu <xshu@google.com> 2023-02-10 01:00:02 +0000
commit56ddd3608a210daa7f920211ab310f18578bbeeb (patch)
treed3af7ec878e4b92afb555f8fbd02f8ee4e072637 /wifi/java/src
parent7c7716e8c827dccfcff94c4d524e45ef7ce132d8 (diff)
Create related APIs for PNO scan interval
Set PNO scan iterations and interval multiplier as variables and get them from modules instead of hard coding. Create related APIs for PNO scan iterations and interval multiplier. Co-authored-by: Ziwen Xiao <Ziwen.Xiao@sony.com> Test: manual test Bug: 208172490 Change-Id: Iab7f80c9462e3facf15d8ec5a03b2f2560d48b4d
Diffstat (limited to 'wifi/java/src')
-rw-r--r--wifi/java/src/android/net/wifi/nl80211/PnoSettings.java54
1 files changed, 53 insertions, 1 deletions
diff --git a/wifi/java/src/android/net/wifi/nl80211/PnoSettings.java b/wifi/java/src/android/net/wifi/nl80211/PnoSettings.java
index 00ebe624ba0d..2f15066f97cf 100644
--- a/wifi/java/src/android/net/wifi/nl80211/PnoSettings.java
+++ b/wifi/java/src/android/net/wifi/nl80211/PnoSettings.java
@@ -19,9 +19,12 @@ package android.net.wifi.nl80211;
import android.annotation.DurationMillisLong;
import android.annotation.NonNull;
import android.annotation.SystemApi;
+import android.os.Build;
import android.os.Parcel;
import android.os.Parcelable;
+import androidx.annotation.RequiresApi;
+
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
@@ -38,6 +41,8 @@ public final class PnoSettings implements Parcelable {
private int mMin2gRssi;
private int mMin5gRssi;
private int mMin6gRssi;
+ private int mScanIterations;
+ private int mScanIntervalMultiplier;
private List<PnoNetwork> mPnoNetworks;
/** Construct an uninitialized PnoSettings object */
@@ -122,6 +127,46 @@ public final class PnoSettings implements Parcelable {
}
/**
+ * Get the requested PNO scan iterations.
+ *
+ * @return PNO scan iterations.
+ */
+ @RequiresApi(Build.VERSION_CODES.UPSIDE_DOWN_CAKE)
+ public int getScanIterations() {
+ return mScanIterations;
+ }
+
+ /**
+ * Set the requested PNO scan iterations.
+ *
+ * @param scanIterations the PNO scan iterations.
+ */
+ @RequiresApi(Build.VERSION_CODES.UPSIDE_DOWN_CAKE)
+ public void setScanIterations(int scanIterations) {
+ this.mScanIterations = scanIterations;
+ }
+
+ /**
+ * Get the requested PNO scan interval multiplier.
+ *
+ * @return PNO scan interval multiplier.
+ */
+ @RequiresApi(Build.VERSION_CODES.UPSIDE_DOWN_CAKE)
+ public int getScanIntervalMultiplier() {
+ return mScanIntervalMultiplier;
+ }
+
+ /**
+ * Set the requested PNO scan interval multiplier.
+ *
+ * @param scanIntervalMultiplier the PNO scan interval multiplier.
+ */
+ @RequiresApi(Build.VERSION_CODES.UPSIDE_DOWN_CAKE)
+ public void setScanIntervalMultiplier(int scanIntervalMultiplier) {
+ this.mScanIntervalMultiplier = scanIntervalMultiplier;
+ }
+
+ /**
* Return the configured list of specific networks to search for in a PNO scan.
*
* @return A list of {@link PnoNetwork} objects, possibly empty if non configured.
@@ -156,13 +201,16 @@ public final class PnoSettings implements Parcelable {
&& mMin2gRssi == settings.mMin2gRssi
&& mMin5gRssi == settings.mMin5gRssi
&& mMin6gRssi == settings.mMin6gRssi
+ && mScanIterations == settings.mScanIterations
+ && mScanIntervalMultiplier == settings.mScanIntervalMultiplier
&& mPnoNetworks.equals(settings.mPnoNetworks);
}
/** override hash code */
@Override
public int hashCode() {
- return Objects.hash(mIntervalMs, mMin2gRssi, mMin5gRssi, mMin6gRssi, mPnoNetworks);
+ return Objects.hash(mIntervalMs, mMin2gRssi, mMin5gRssi, mMin6gRssi,
+ mScanIterations, mScanIntervalMultiplier, mPnoNetworks);
}
/** implement Parcelable interface */
@@ -181,6 +229,8 @@ public final class PnoSettings implements Parcelable {
out.writeInt(mMin2gRssi);
out.writeInt(mMin5gRssi);
out.writeInt(mMin6gRssi);
+ out.writeInt(mScanIterations);
+ out.writeInt(mScanIntervalMultiplier);
out.writeTypedList(mPnoNetworks);
}
@@ -194,6 +244,8 @@ public final class PnoSettings implements Parcelable {
result.mMin2gRssi = in.readInt();
result.mMin5gRssi = in.readInt();
result.mMin6gRssi = in.readInt();
+ result.mScanIterations = in.readInt();
+ result.mScanIntervalMultiplier = in.readInt();
result.mPnoNetworks = new ArrayList<>();
in.readTypedList(result.mPnoNetworks, PnoNetwork.CREATOR);