Update frequency calculations
This commit is contained in:
@@ -72,7 +72,8 @@ data class SoftApConfigurationCompat(
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Based on:
|
* Based on:
|
||||||
* https://elixir.bootlin.com/linux/v5.7.6/source/net/wireless/util.c#L75
|
* https://elixir.bootlin.com/linux/v5.12.8/source/net/wireless/util.c#L75
|
||||||
|
* TODO: update for Android 12
|
||||||
* https://cs.android.com/android/platform/superproject/+/master:frameworks/base/wifi/java/android/net/wifi/ScanResult.java;l=624;drc=f7ccda05642b55700d67a288462bada488fc7f5e
|
* https://cs.android.com/android/platform/superproject/+/master:frameworks/base/wifi/java/android/net/wifi/ScanResult.java;l=624;drc=f7ccda05642b55700d67a288462bada488fc7f5e
|
||||||
*/
|
*/
|
||||||
fun channelToFrequency(band: Int, chan: Int) = when (band) {
|
fun channelToFrequency(band: Int, chan: Int) = when (band) {
|
||||||
@@ -86,10 +87,11 @@ data class SoftApConfigurationCompat(
|
|||||||
in 1..Int.MAX_VALUE -> 5000 + chan * 5
|
in 1..Int.MAX_VALUE -> 5000 + chan * 5
|
||||||
else -> throw IllegalArgumentException("Invalid 5GHz channel $chan")
|
else -> throw IllegalArgumentException("Invalid 5GHz channel $chan")
|
||||||
}
|
}
|
||||||
// TODO: update for Android 12
|
BAND_6GHZ -> when (chan) {
|
||||||
BAND_6GHZ -> if (chan in 1..253) {
|
2 -> 5935
|
||||||
5940 + chan * 5
|
in 1..233 -> 5950 + chan * 5
|
||||||
} else throw IllegalArgumentException("Invalid 6GHz channel $chan")
|
else -> throw IllegalArgumentException("Invalid 6GHz channel $chan")
|
||||||
|
}
|
||||||
BAND_60GHZ -> if (chan in 1 until 7) {
|
BAND_60GHZ -> if (chan in 1 until 7) {
|
||||||
56160 + chan * 2160
|
56160 + chan * 2160
|
||||||
} else throw IllegalArgumentException("Invalid 60GHz channel $chan")
|
} else throw IllegalArgumentException("Invalid 60GHz channel $chan")
|
||||||
@@ -99,8 +101,9 @@ data class SoftApConfigurationCompat(
|
|||||||
2484 -> 14
|
2484 -> 14
|
||||||
in Int.MIN_VALUE until 2484 -> (freq - 2407) / 5
|
in Int.MIN_VALUE until 2484 -> (freq - 2407) / 5
|
||||||
in 4910..4980 -> (freq - 4000) / 5
|
in 4910..4980 -> (freq - 4000) / 5
|
||||||
in Int.MIN_VALUE until 5945 -> (freq - 5000) / 5
|
in Int.MIN_VALUE until 5925 -> (freq - 5000) / 5
|
||||||
in Int.MIN_VALUE..45000 -> (freq - 5940) / 5
|
5935 -> 2
|
||||||
|
in Int.MIN_VALUE..45000 -> (freq - 5950) / 5
|
||||||
in 58320..70200 -> (freq - 56160) / 2160
|
in 58320..70200 -> (freq - 56160) / 2160
|
||||||
else -> throw IllegalArgumentException("Invalid frequency $freq")
|
else -> throw IllegalArgumentException("Invalid frequency $freq")
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user