From 000cde2f8aa9bee7773cb155c27476a76c50d1c3 Mon Sep 17 00:00:00 2001 From: Andrew Waterman Date: Fri, 5 Jan 2018 14:00:42 -0800 Subject: [PATCH] Make ErrorDevice UNCACHEABLE instead of UNCACHED ...even though it still supports Acquire. This avoids needing to flush the D$ on FENCE.I because of the presence of the ErrorDevice. --- src/main/scala/devices/tilelink/Error.scala | 2 +- src/main/scala/tilelink/Parameters.scala | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/scala/devices/tilelink/Error.scala b/src/main/scala/devices/tilelink/Error.scala index d9df000c..89c099df 100644 --- a/src/main/scala/devices/tilelink/Error.scala +++ b/src/main/scala/devices/tilelink/Error.scala @@ -26,7 +26,7 @@ abstract class DevNullDevice(params: ErrorParams, beatBytes: Int = 4) Seq(TLManagerParameters( address = params.address, resources = device.reg("mem"), - regionType = RegionType.UNCACHED, + regionType = RegionType.UNCACHEABLE, executable = true, supportsAcquireT = xfer, supportsAcquireB = xfer, diff --git a/src/main/scala/tilelink/Parameters.scala b/src/main/scala/tilelink/Parameters.scala index 3ab22ee1..d6dcd257 100644 --- a/src/main/scala/tilelink/Parameters.scala +++ b/src/main/scala/tilelink/Parameters.scala @@ -40,7 +40,7 @@ case class TLManagerParameters( require (supportsAcquireB.contains(supportsAcquireT), s"AcquireB($supportsAcquireB) < AcquireT($supportsAcquireT)") // Make sure that the regionType agrees with the capabilities - require (!supportsAcquireB || regionType >= RegionType.UNCACHED) // acquire -> uncached, tracked, cached + require (!supportsAcquireB || regionType >= RegionType.UNCACHEABLE) // acquire -> uncached, tracked, cached require (regionType <= RegionType.UNCACHED || supportsAcquireB) // tracked, cached -> acquire require (regionType != RegionType.UNCACHED || supportsGet) // uncached -> supportsGet