[Libre-soc-bugs] [Bug 50] nmigen pinmux

bugzilla-daemon at libre-soc.org bugzilla-daemon at libre-soc.org
Sat Nov 20 17:36:23 GMT 2021


--- Comment #48 from Luke Kenneth Casson Leighton <lkcl at lkcl.net> ---
(In reply to Luke Kenneth Casson Leighton from comment #47)

> https://git.libre-soc.org/?p=pinmux.git;a=commitdiff;
> h=9f43ae5a883590d91b9a6f1211c1b29e5dd68fbc
> also added some notes.  i leave you to work through them.

sorry, was really tired yesterday, you probably noticed.

simulations require a complete pre-prepared AST fragment, and
will create one from an Elaboratable recursively if given one.

this preparatory phase "locks in" certain data structures and you
cannot simply blithely add random modules after a certain point.

in addition, the complication (not really) is that the Platform
build() process actually constructs additional modules
(as can be seen in get_input() etc) and adds them to a toplevel
AST fragment.

if you do not call build() and then get access to that toplevel
fragment, you cannot possibly hope or expect to have the IOPads
or the JTAG Boundary Scan connections.

this is what the override is about.

therefore look carefully where i have added notes, moving all
additional modules *above* the instantiation of the

or as explained, simply delete them and remove the associated
JTAG code from the test client.

You are receiving this mail because:
You are on the CC list for the bug.

More information about the libre-soc-bugs mailing list