I did now two alternative implementations. One that implements the
wrap_ts function described below and one that only changes Tristate
class and does not need changes to the MiSoC cores. I consider the
first one cleaner though but any of the two will allow me to use the
MiSoC cores for my use case.I did submit PRs, for wrap_ts #147 for
Migen and #94 for MiSoC. For the Tristate change there is only #148 for
Migen.
greets,Staf.
Staf Verhaegen schreef op ma 22-10-2018 om 22:08 [+0200]:
> Sébastien Bourdeauducq schreef op ma 22-10-2018 om 11:03 [+0800]:
> > Hi,
> > 
> > On 10/18/18 12:50 AM, Staf Verhaegen wrote:
> > > I am interested to know if the change to MiSoC is the direction
> > > to go 
> > > for such a change. If OK, I can do a PR on github. If not, I
> > > would like 
> > > to discuss alternative solutions.
> > 
> > Would it be possible to achieve a working result by overriding the 
> > implementation of the tristate special using special_overrides?
> 
> Current code assumes a special needs to be added but that is not the
> case when the record with the right fields is passed. The code could
> be changed once to make it future proof, e.g. change:
> 
>             ts = TSTriple(1)
>             self.specials += ts.get_tristate(signal)
> 
> to
> 
>             ts = wrap_ts(signal, self)
> 
> wrap_ts could then add something to self.specials if needed. In the
> future new types can then be supported by only changing wrap_ts.
> OK ?
> 
> > Worst case, can the tristate special just instatiate the ASIC I/O
> > cell?
> 
> I want to be able to mux for example I2C and UART to the same pins
> configurable by CSR. This is not possible is I2C instantiates the I/O
> pin.
> 
> greets,
> Staf.
> 
> _______________________________________________
> M-Labs devel mailing list
> https://ssl.serverraum.org/lists/listinfo/devel

Attachment: signature.asc
Description: This is a digitally signed message part

_______________________________________________
M-Labs devel mailing list
https://ssl.serverraum.org/lists/listinfo/devel

Reply via email to