[Libre-soc-bugs] [Bug 846] Pinmux Pinspec Interconnect Auto-Generation

bugzilla-daemon at libre-soc.org bugzilla-daemon at libre-soc.org
Sat Oct 1 16:09:04 BST 2022


--- Comment #7 from Andrey Miroshnikov <andrey at technepisteme.xyz> ---
(In reply to Luke Kenneth Casson Leighton from comment #6)
> that's a file, not a commit diff.

Ah yes, there:

>   48         self.periph_ports = Array(temp)
>   49 
> that's extremely unlikely to need Array().  just = temp.

Without Array() I can't use another signal as the index for setting the mux,
this is the error I get:
TypeError: list indices must be integers or slices, not Signal

Unless there's another method, this is the only one I know.

> to make it look like the standard python "dict" using Liskov Substitution
> Principle, yes.

Ah, nice to see an example of this!

> > There seems to be a strange recursive duplication.
> > ps.items() gives the pin information (as ps is PinSpec and inherits Pinouts),
> > but the same dict is returned by ps.gpio.pinouts.items()
> good. one data structure is easily accessible from the other.

By why does it work down to so many levels (presumably 'infinitely', barring
memory limits)?
Is there a name for this mechanism (to save you time explaining) so I can read
about it at some point? 

> link?

I apologise, forgot to include:

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

More information about the libre-soc-bugs mailing list