From: Florent Kermarrec Date: Mon, 5 Mar 2018 08:59:06 +0000 (+0100) Subject: soc/integration/soc_core: improve error message for missing csrs X-Git-Tag: 24jan2021_ls180~1722 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=2a50a8021ab95a685dbebd0567c08dd3713e6934;p=litex.git soc/integration/soc_core: improve error message for missing csrs --- diff --git a/litex/soc/integration/soc_core.py b/litex/soc/integration/soc_core.py index aec3a8de..5198e5c9 100644 --- a/litex/soc/integration/soc_core.py +++ b/litex/soc/integration/soc_core.py @@ -258,15 +258,12 @@ class SoCCore(Module): try: return self.csr_map[name] except KeyError as e: - raise RuntimeError("""\ -Unable to find {} in your SoC's csr address map. - -Check {}.csr_map in {} - -Found {} in the csr_map""".format( - name, self.__class__.__name__, inspect.getfile(self.__class__), - ", ".join(self.csr_map.keys())) - ) from e + msg = "Undefined \"{}\" CSR.\n".format(name) + msg += "Avalaible CSRs in {} ({}):\n".format( + self.__class__.__name__, inspect.getfile(self.__class__)) + for k in sorted(self.csr_map.keys()): + msg += "- {}\n".format(k) + raise RuntimeError(msg) except ValueError: return None