For example a standalone controller with no exposed CSRs (probably not
a very useful configuration but I really don't like python backtraces)
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
alignment=self.csr_alignment)
# Add CSRs interconnect
- self.submodules.csrcon = csr_bus.InterconnectShared(
+ if len(self._csr_masters) != 0:
+ self.submodules.csrcon = csr_bus.InterconnectShared(
self._csr_masters, self.csrbankarray.get_buses())
# Check and add CSRs regions
raise FinalizeError("Need to call SoCSDRAM.register_sdram()")
# Arbitrate wishbone interfaces to the DRAM
- self.submodules.wb_sdram_con = wishbone.Arbiter(self._wb_sdram_ifs, self._wb_sdram)
+ if len(self._wb_sdram_ifs) != 0:
+ self.submodules.wb_sdram_con = wishbone.Arbiter(self._wb_sdram_ifs, self._wb_sdram)
SoCCore.do_finalize(self)