sb0 changed the topic of #m-labs to: https://m-labs.hk :: Mattermost https://chat.m-labs.hk :: Logs http://irclog.whitequark.org/m-labs
<cr1901_modern> sb10q: HeavyX is not intricately tied to nix, correct? HeavyX just has scripts to make nix integration easy?
<whitequark> heavyx is the nix parts around nmigen-soc, basically
<_whitenotifier> [m-labs/nmigen] whitequark pushed 1 commit to master [+0/-0/±2] https://git.io/JeEOK
<_whitenotifier> [m-labs/nmigen] whitequark 51269ad - hdl.ast: simplify {bit,word}_select with constant offset.
<cr1901_modern> How does one create a cross-platform build-system for an nmigen-soc design, firmware, gateware, and all?
<whitequark> nmigen-soc currently doesn't offer any firmware
<whitequark> it doesn't even really have any CPUs yet
<cr1901_modern> well no need to worry about it tonight then, just something that was on my mind.
<cr1901_modern> I was never particularly fond of how misoc required GNU make on Windows, but it absolutely wasn't worth fixing that.
<whitequark> I'm not really sure how nmigen-soc should build firmware, or even what language should this firmware be written in
<whitequark> ideally Rust but...
<cr1901_modern> I imagine rust for the most part. Which means cargo can do some work.
<whitequark> that's true
<cr1901_modern> 1. Hypothetical cargo target that automates building the gateware too (a simple wrapper command)?
<cr1901_modern> 2. I've been playing with Just lately: https://github.com/casey/just
<whitequark> 1. I don't think driving the entire sequence from cargo is a good idea
* cr1901_modern nods
<whitequark> 2. requiring just also seems suboptimal
<whitequark> if the firmware is in pure Rust, then it's enough to run cargo from nmigen-soc
<whitequark> now, if the firmware has C components, that rapidly becomes a pain
<cr1901_modern> The Makefile solution for misoc worked, but of course GNU Make isn't exactly wonderfully ergonomic to use from python (or Windows). We also don't want to create our own "command runner"/dep manager.
<cr1901_modern> what are your thoughts on py-make? https://github.com/tqdm/py-make
<_whitenotifier> [nmigen] Success. The Travis CI build passed - https://travis-ci.org/m-labs/nmigen/builds/603084677?utm_source=github_status&utm_medium=notification
<whitequark> that's a massive dependency
<_whitenotifier> [nmigen] Success. 82.3% (+0.03%) compared to 61e6267 - https://codecov.io/gh/m-labs/nmigen/commit/51269ad4a037f7789a44cf1d1dd3256f447cd619
<_whitenotifier> [nmigen] Success. 100% of diff hit (target 82.26%) - https://codecov.io/gh/m-labs/nmigen/commit/51269ad4a037f7789a44cf1d1dd3256f447cd619
<whitequark> but more importantly
<whitequark> how do you get into a situation where you have gcc (and it'll be only gcc for firmware if we're talking about C), but not gmake?
<cr1901_modern> My own experience is that Windows builds of gcc only provide the compiler binaries and headers. A shell environment- including make and "sh" is not included. It's up to a user to get "make" and "sh" if they need it.
<cr1901_modern> And sadly, there's multiple ways to do that. You could use Chocolately. MSYS2. The horribly out of date GnuWin32 project
<whitequark> hmm
<cr1901_modern> Some ppl understandably would "just" want a make binary, not the baggage of a full *nix userland
<whitequark> well, let's see if we can get away providing just Rust
<cr1901_modern> fair for me.
<cr1901_modern> If I ever need C code, I'll take responsibility for it- i.e. I'm on my own.
lolsborn has quit [Quit: ZNC 1.6.3+deb1ubuntu0.2 - http://znc.in]
lolsborn has joined #m-labs
<mtrbot-ml> [mattermost] <sb10q> someone should rewrite nix and fix the various issues it has including lack of windows support....
<cr1901_modern> I don't see that happening
<_whitenotifier> [nmigen] rroohhh opened issue #259: LegalizeValue can quickly exhaust available RAM - https://git.io/JeE3q
<_whitenotifier> [nmigen] whitequark commented on issue #259: LegalizeValue can quickly exhaust available RAM - https://git.io/JeE3m
<_whitenotifier> [nmigen] rroohhh commented on issue #259: LegalizeValue can quickly exhaust available RAM - https://git.io/JeE3O
<_whitenotifier> [m-labs/nmigen] whitequark pushed 1 commit to master [+0/-0/±1] https://git.io/JeE33
<_whitenotifier> [m-labs/nmigen] whitequark c1b2d2a - hdl.ir: silence UnusedElaboratable if __init__ raises an exception.
<_whitenotifier> [nmigen] whitequark commented on issue #259: LegalizeValue can quickly exhaust available RAM - https://git.io/JeE3s
<_whitenotifier> [nmigen] rroohhh commented on issue #259: LegalizeValue can quickly exhaust available RAM - https://git.io/JeE3G
<_whitenotifier> [m-labs/nmigen] whitequark created branch master https://git.io/JeE3Z
<_whitenotifier> [nmigen] Failure. The Travis CI build failed - https://travis-ci.org/m-labs/nmigen/builds/603100435?utm_source=github_status&utm_medium=notification
<_whitenotifier> [nmigen] Failure. The Travis CI build failed - https://travis-ci.org/m-labs/nmigen/builds/603100435?utm_source=github_status&utm_medium=notification
<_whitenotifier> [nmigen] Success. The Travis CI build passed - https://travis-ci.org/m-labs/nmigen/builds/603100608?utm_source=github_status&utm_medium=notification
<_whitenotifier> [nmigen] Success. The Travis CI build passed - https://travis-ci.org/m-labs/nmigen/builds/603100608?utm_source=github_status&utm_medium=notification
<_whitenotifier> [m-labs/nmigen] whitequark pushed 2 commits to master [+1/-0/±2] https://git.io/JeE3y
<_whitenotifier> [m-labs/nmigen] whitequark ffd10e3 - back.rtlil: fix lowering of Part() on LHS to account for stride.
<_whitenotifier> [m-labs/nmigen] whitequark 8b05b28 - back.rtlil: avoid exponential behavior when legalizing Part().
<_whitenotifier> [nmigen] whitequark closed issue #259: LegalizeValue can quickly exhaust available RAM - https://git.io/JeE3q
<_whitenotifier> [nmigen] Success. The Travis CI build passed - https://travis-ci.org/m-labs/nmigen/builds/603104127?utm_source=github_status&utm_medium=notification
<_whitenotifier> [nmigen] Success. 82.33% (+0.03%) compared to 51269ad - https://codecov.io/gh/m-labs/nmigen/commit/8b05b28f5a7c2ad3613fd876edd16204fd6af2cb
<_whitenotifier> [nmigen] Failure. 0% of diff hit (target 82.3%) - https://codecov.io/gh/m-labs/nmigen/commit/8b05b28f5a7c2ad3613fd876edd16204fd6af2cb
<_whitenotifier> [nmigen] Failure. 82.24% (-0.06%) compared to 51269ad - https://codecov.io/gh/m-labs/nmigen/commit/8b05b28f5a7c2ad3613fd876edd16204fd6af2cb
<_whitenotifier> [nmigen] Success. The Travis CI build passed - https://travis-ci.org/m-labs/nmigen/builds/603104127?utm_source=github_status&utm_medium=notification
<_whitenotifier> [m-labs/nmigen-soc] whitequark pushed 3 commits to master [+2/-0/±7] https://git.io/JeEs8
<_whitenotifier> [m-labs/nmigen-soc] whitequark d52d0b9 - csr.bus.Multiplexer: fix element w_stb getting stuck.
<_whitenotifier> [m-labs/nmigen-soc] whitequark 4f59a0b - csr.wishbone: add WishboneCSRBridge.
<_whitenotifier> [m-labs/nmigen-soc] whitequark 8a54b57 - Add missing tests (100% branch coverage!)
<_whitenotifier> [m-labs/nmigen-soc] whitequark pushed 1 commit to master [+2/-0/±2] https://git.io/JeEsB
<_whitenotifier> [m-labs/nmigen-soc] whitequark 161e1a8 - Travis: set up CI builds and coverage.
<_whitenotifier> [nmigen-soc] Failure. The Travis CI build failed - https://travis-ci.org/m-labs/nmigen-soc/builds/603108880?utm_source=github_status&utm_medium=notification
<_whitenotifier> [m-labs/nmigen-soc] whitequark pushed 1 commit to master [+2/-0/±2] https://git.io/JeEs0
<_whitenotifier> [m-labs/nmigen-soc] whitequark 7eeb2ba - Travis: set up CI builds and coverage.
<_whitenotifier> [nmigen-soc] Failure. The Travis CI build failed - https://travis-ci.org/m-labs/nmigen-soc/builds/603108981?utm_source=github_status&utm_medium=notification
lolsborn has quit [Ping timeout: 265 seconds]
<_whitenotifier> [m-labs/nmigen-soc] whitequark pushed 1 commit to master [+2/-0/±2] https://git.io/JeEsE
<_whitenotifier> [m-labs/nmigen-soc] whitequark 66548b1 - Travis: set up CI builds and coverage.
<_whitenotifier> [nmigen-soc] Success. The Travis CI build passed - https://travis-ci.org/m-labs/nmigen-soc/builds/603109530?utm_source=github_status&utm_medium=notification
<_whitenotifier> [nmigen-soc] Success. The Travis CI build passed - https://travis-ci.org/m-labs/nmigen-soc/builds/603109530?utm_source=github_status&utm_medium=notification
<whitequark> rjo: have you looked at Wishbone B4 pipelining?
<whitequark> it seems much less gnarly than its support for bursts. I'm not sure why it took a decade to add that...
<_whitenotifier> [m-labs/nmigen-soc] whitequark pushed 2 commits to master [+0/-0/±5] https://git.io/JeEs6
<_whitenotifier> [m-labs/nmigen-soc] whitequark 6be732c - wishbone.bus.Interface: add support for LOCK_IO signal.
<_whitenotifier> [m-labs/nmigen-soc] whitequark 921d740 - memory: add Memory.window_patterns(), to simplify decoders.
<_whitenotifier> [nmigen-soc] Success. The Travis CI build passed - https://travis-ci.org/m-labs/nmigen-soc/builds/603112199?utm_source=github_status&utm_medium=notification
Stormwind_mobile has joined #m-labs
Stormwind_mobile has quit [Ping timeout: 268 seconds]
Stormwind_mobile has joined #m-labs
Stormwind_mobile has quit [Ping timeout: 240 seconds]
Stormwind_mobile has joined #m-labs
Stormwind_mobile has quit [Ping timeout: 240 seconds]
Stormwind_mobile has joined #m-labs
<mtrbot-ml> [mattermost] <sb10q> 10 years ago there were few people doing FPGA development in the open, and most of them were developing the crappy and unusable code that you can find in most repositories on opencores.org. it's only since the past few years that there's a significant amount of good open source design.
<whitequark> they added in 2010, but yeah
<rjo> whitequark: i haven't used it and don't know much about it. my feeling is that wishbone is more like a slightly antiquated legacy bus.
<whitequark> okay.
<_whitenotifier> [m-labs/nmigen] whitequark pushed 2 commits to master [+0/-0/±13] https://git.io/JeEZo
<_whitenotifier> [m-labs/nmigen] whitequark 9786d0c - hdl.ir: allow disabling UnusedElaboratable warning in file scope.
<_whitenotifier> [m-labs/nmigen] whitequark 75d0fcd - test: use `#nmigen:` magic comment instead of monkey patch.
<_whitenotifier> [nmigen] Success. The Travis CI build passed - https://travis-ci.org/m-labs/nmigen/builds/603150766?utm_source=github_status&utm_medium=notification
<_whitenotifier> [nmigen] Success. Absolute coverage decreased by -0.06% but relative coverage increased by +17.75% compared to 8b05b28 - https://codecov.io/gh/m-labs/nmigen/commit/75d0fcd639ae2e7913401c08b72e9270b196390b
<_whitenotifier> [nmigen] Success. 100% of diff hit (target 82.24%) - https://codecov.io/gh/m-labs/nmigen/commit/75d0fcd639ae2e7913401c08b72e9270b196390b
<_whitenotifier> [nmigen] Success. Absolute coverage decreased by -0.16% but relative coverage increased by +17.75% compared to 8b05b28 - https://codecov.io/gh/m-labs/nmigen/commit/75d0fcd639ae2e7913401c08b72e9270b196390b
<_whitenotifier> [nmigen] Success. The Travis CI build passed - https://travis-ci.org/m-labs/nmigen/builds/603150766?utm_source=github_status&utm_medium=notification
<_whitenotifier> [m-labs/nmigen-soc] whitequark pushed 1 commit to master [+0/-0/±8] https://git.io/JeEcb
<_whitenotifier> [m-labs/nmigen-soc] whitequark 3195de9 - wishbone.bus: add Decoder.
<_whitenotifier> [nmigen-soc] Success. The Travis CI build passed - https://travis-ci.org/m-labs/nmigen-soc/builds/603183770?utm_source=github_status&utm_medium=notification
<_whitenotifier> [nmigen-soc] Success. 100% (+0%) compared to 921d740 - https://codecov.io/gh/m-labs/nmigen-soc/commit/3195de9f0126e736ae10e0fd360a8fbff70bc592
<_whitenotifier> [nmigen-soc] Success. 100% of diff hit (target 100%) - https://codecov.io/gh/m-labs/nmigen-soc/commit/3195de9f0126e736ae10e0fd360a8fbff70bc592
X-Scale has quit [Ping timeout: 240 seconds]
<mtrbot-ml> [mattermost] <sb10q> @astro I've installed the packages at the system level, but if you still need nix-env I think -iA should solve the problem
Stormwind_mobile has quit [Ping timeout: 268 seconds]
Stormwind_mobile has joined #m-labs
X-Scale has joined #m-labs
<Astro-_> @sb10q nix-env -iA works, thx
<_whitenotifier> [smoltcp] MabezDev opened pull request #312: dhcp:max message size option - https://git.io/JeEP0
<_whitenotifier> [smoltcp] Failure. The Travis CI build failed - https://travis-ci.org/m-labs/smoltcp/builds/603266499?utm_source=github_status&utm_medium=notification
loxodes has quit [Ping timeout: 246 seconds]
<_whitenotifier> [smoltcp] MabezDev synchronize pull request #312: dhcp:max message size option - https://git.io/JeEP0
<_whitenotifier> [smoltcp] Failure. The Travis CI build failed - https://travis-ci.org/m-labs/smoltcp/builds/603297592?utm_source=github_status&utm_medium=notification
zng has quit [Read error: Connection reset by peer]
zng has joined #m-labs
Stormwind_mobile has quit [Remote host closed the connection]
cedric has quit [Quit: ZNC 1.7.5 - https://znc.in]
cedric has joined #m-labs
cedric has quit [Changing host]
cedric has joined #m-labs