1
0

tilelink2 Parameters: if you support PutPartial, you must support PutFull

This commit is contained in:
Wesley W. Terpstra 2016-09-09 20:56:48 -07:00
parent d6261e8ce8
commit 488b93d146

View File

@ -117,9 +117,7 @@ case class TLManagerParameters(
address.combinations(2).foreach({ case Seq(x,y) =>
require (!x.overlaps(y))
})
address.foreach({ case a =>
require (supportsAcquire.none || a.alignment1 >= supportsAcquire.max-1)
})
require (supportsPutFull.contains(supportsPutPartial))
// Largest support transfer of all types
val maxTransfer = List(
@ -218,6 +216,8 @@ case class TLClientParameters(
supportsPutPartial: TransferSizes = TransferSizes.none,
supportsHint: Boolean = false)
{
require (supportsPutFull.contains(supportsPutPartial))
val maxTransfer = List(
supportsProbe.max,
supportsArithmetic.max,