_florent_ changed the topic of #litex to: LiteX FPGA SoC builder and Cores / Github : https://github.com/enjoy-digital, https://github.com/litex-hub / Logs: https://libera.irclog.whitequark.org/litex
tpb has quit [Remote host closed the connection]
tpb has joined #litex
TMM_ has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
TMM_ has joined #litex
shorne has quit [Read error: Connection reset by peer]
shorne has joined #litex
Degi has quit [Ping timeout: 256 seconds]
Degi has joined #litex
AndrewD has quit [Quit: Client closed]
SpaceCoaster has quit [Ping timeout: 256 seconds]
FabM has joined #litex
FabM has quit [Changing host]
FabM has joined #litex
SpaceCoaster has joined #litex
SpaceCoaster has quit [Ping timeout: 245 seconds]
SpaceCoaster has joined #litex
<MoeIcenowy> got a Tang Mega 138K ES from Sipeed
<MoeIcenowy> going to do some basic LiteX port to test it
mtretter has quit [Ping timeout: 245 seconds]
mtretter has joined #litex
<josuah> whoa :D I was curious about arora
<josuah> MoeIcenowy: I have not this board, but would be happy to help with the bringup
<josuah> I have the distant impression that LiteX could be made much more generic at many places
<josuah> in particular in the target board definition, where chunk of codes are typically copy-pasted from board to board
<josuah> for instance, to add a `with_jtagbone` to a board, there are several places where to inject the support
<josuah> it could be done programatically for all boards who declare a JTAG interface
<josuah> is this all by design, or is this a matter of slowly geting there as LiteX gets built further?
<josuah> board definitions would be reduced to declaring the hardware (pins, hardened cores, clocks) and surrounding tooling (platform, command line flags for the adapter...)
<josuah> hmm, somehow, LiteX board definitions are already that
<josuah> it would only be a matter of managing the "if with_xxx: add_xxx()" globally rather than per-board: https://github.com/litex-hub/litex-boards/blob/master/litex_boards/targets/muselab_icesugar.py#L95
<josuah> changes that affect all boards are always difficult unless owning the whole hardware
<whitequark[cis]> there is a desire to improve board definitions dramatically in the next amaranth release
<josuah> so it could need to be done incrementally: supporting "auto-feature" in enjoy-digital/litex, and make it an opt-in per board
<josuah> whitequark[cis]: if I get enough time, I'd want to try add a `litex_boards/targets/amaranth_boards.py` :]
<josuah> which would be a proxy to reuse all of Amaranth boards from LiteX
<whitequark[cis]> this approach could result in friction, so it's something that needs to be evaluated carefully
<josuah> I see how bugs in project X reported in project Y could be bothering
<josuah> might be more fit as an evil experiment in basement lab than an official proposal
<zyp> the problem I'd like to see a better solution for is when I've got a project that's buildable for multiple different boards that vary in what drivers they need
pavelow_ has quit [Quit: No Ping reply in 180 seconds.]
pavelow has joined #litex
<zyp> e.g. if I've got one board with a ddr3 memory and one board with a hyperram and I've got a project that doesn't really care what memory technology is available, how do I abstract over the differences?
<whitequark[cis]> I think you need two toplevels
<whitequark[cis]> there is no abstraction here that would not be worse than having two toplevels, I think
<whitequark[cis]> since the difference between the toplevels would be basically "which memory adapter you instantiate"
<zyp> it gets more complex if you start considering a matrix of generic footprint compatible modules and project specific carriers
<zyp> like the colorlight stuff -- i5, i9 and i9+ are effectively ecp5-25, ecp5-45 and xc7a50 modules that are footprint compatible
<josuah> where "two toplevels" could be a single toplevel with "if" branching?
<zyp> I've put one of them in a fanuc robot arm, and at some point I'll probably put another in a plasma cutter
<zyp> I figure the project should be the toplevel, since it'll have different functionality depending on the device it's going into, but I'd like to be able to build each of the projects for either of the three modules
<josuah> They look like having quite the variants themselves https://aloi.com/wp-content/uploads/2016/06/FANUC-ROBOTS.jpg
<josuah> nice project, this looks to be!
<zyp> mine is from 1995 or so, probably much older than those :)
<whitequark[cis]> zyp: you probably still do not want to exercise the entire matrix
<whitequark[cis]> because there's no real way to find out if your design works properly other than simulation and extensive hardware testing
<zyp> indeed, I don't need every combination in practice, but I still want it to be easy to make arbitrary combinations
<whitequark[cis]> this still seems to me like something that can be solved with a bunch of toplevels, or one toplevel and a switch
<whitequark[cis]> rather than inventing a new abstraction
TMM_ has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
TMM_ has joined #litex
acathla has quit [Ping timeout: 245 seconds]
acathla has joined #litex
<josuah> in that regard, it would help to allow toplevel be made very concise, making them look much more like a configuration file than anything
<josuah> with most of the heavy lifting handled downstream, in what is called from them
so-offish has joined #litex
so-offishul has joined #litex
so-offish1 has joined #litex
so-offish has quit [Ping timeout: 244 seconds]
so-offishul has quit [Ping timeout: 244 seconds]
<MoeIcenowy> how to debug rgmii?
<MoeIcenowy> (well a very bad question, but I don't know how to ask it better)
so-offish1 has quit [Quit: Leaving]
FabM has quit [Ping timeout: 256 seconds]
<josuah> MoeIcenowy: do you have any transceiver attached to it on hardware along with an Ethernet cable plugged to it?
<josuah> MoeIcenowy: or do you have an RGMII interface on your design, and want to send packets to it in simulation?
lexano has joined #litex
feldim2425 has quit [Quit: ZNC 1.8.2+deb2build5 - https://znc.in]
feldim2425 has joined #litex
vup has quit [*.net *.split]
vup has joined #litex
Degi has quit [Ping timeout: 240 seconds]
Degi has joined #litex
Foxyloxy has quit [Read error: Connection reset by peer]
Foxyloxy has joined #litex
matoro has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
matoro has joined #litex