diplomacy: add reg-names to devices (#22)
authorWesley W. Terpstra <wesley@sifive.com>
Thu, 29 Jun 2017 00:45:18 +0000 (17:45 -0700)
committerGitHub <noreply@github.com>
Thu, 29 Jun 2017 00:45:18 +0000 (17:45 -0700)
src/main/scala/devices/xilinxvc707mig/XilinxVC707MIG.scala
src/main/scala/ip/xilinx/vc707axi_to_pcie_x1/vc707axi_to_pcie_x1.scala

index f6ae153107a4ff9558056f54c3703004baab7643..931e9befecc29f25aac4f602292579e0ea1fb684 100644 (file)
@@ -24,7 +24,7 @@ class XilinxVC707MIG(implicit p: Parameters) extends LazyModule with HasXilinxVC
   val axi4 = AXI4InternalOutputNode(Seq(AXI4SlavePortParameters(
     slaves = Seq(AXI4SlaveParameters(
       address = Seq(AddressSet(p(ExtMem).base, p(ExtMem).size-1)),
-      resources     = device.reg,
+      resources     = device.reg("mem"),
       regionType    = RegionType.UNCACHED,
       executable    = true,
       supportsWrite = TransferSizes(1, 256*8),
index ac9745f46672dc61b9a970021fa7ab4e6d77b8bc..c7206e41e78666c8fa98c2f533cf85081ba0527e 100644 (file)
@@ -181,8 +181,8 @@ class VC707AXIToPCIeX1(implicit p:Parameters) extends LazyModule
         "device_type"        -> Seq(ResourceString("pci")),
         "interrupt-map-mask" -> Seq(0, 0, 0, 7).flatMap(ofInt),
         "interrupt-map"      -> Seq(1, 2, 3, 4).flatMap(ofMap),
-        "ranges"             -> resources("ranges").map { case Binding(_, ResourceAddress(address, _, _, _, _)) =>
-                                                               ResourceMapping(address, BigInt(0x02000000) << 64) },
+        "ranges"             -> resources("ranges").map { case Binding(_, ResourceAddress(address, perms)) =>
+                                                               ResourceMapping(address, BigInt(0x02000000) << 64, perms) },
         "interrupt-controller" -> Seq(ResourceMap(labels = Seq(intc), value = Map(
           "interrupt-controller" -> Nil,
           "#address-cells"       -> ofInt(0),
@@ -203,7 +203,7 @@ class VC707AXIToPCIeX1(implicit p:Parameters) extends LazyModule
   val control = AXI4SlaveNode(Seq(AXI4SlavePortParameters(
     slaves = Seq(AXI4SlaveParameters(
       address       = List(AddressSet(0x50000000L, 0x03ffffffL)),
-      resources     = device.reg,
+      resources     = device.reg("control"),
       supportsWrite = TransferSizes(1, 4),
       supportsRead  = TransferSizes(1, 4),
       interleavedId = Some(0))), // AXI4-Lite never interleaves responses