tilelink2: transfers must never exceed 4kB
This commit is contained in:
parent
dd27a60daa
commit
32894a8e20
@ -50,6 +50,7 @@ case class TransferSizes(min: Int, max: Int)
|
||||
require (min != 0 || max == 0)
|
||||
require (max == 0 || isPow2(max))
|
||||
require (min == 0 || isPow2(min))
|
||||
require (max <= TransferSizes.maxAllowed)
|
||||
|
||||
def none = min == 0
|
||||
def contains(x: Int) = isPow2(x) && min <= x && x <= max
|
||||
@ -69,6 +70,7 @@ case class TransferSizes(min: Int, max: Int)
|
||||
object TransferSizes {
|
||||
def apply(x: Int) = new TransferSizes(x)
|
||||
val none = new TransferSizes(0)
|
||||
val maxAllowed = 4096 // transfers larger than 4kB are forbidden in TL2
|
||||
|
||||
implicit def asBool(x: TransferSizes) = !x.none
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user