Tuesday, 2019-04-02

*** tpb has joined #litex00:00
xobsYeah, for some reason CSRs just aren't working for me.  It's strange.06:47
xobsI have an SB_WARMBOOT primitive I've instanciated, and if I hard-write i_BOOT=1 then it reboots immediately, but if I set i_BOOT = self.ctrl.storage[0], then it never reboots when I set that bit.06:48
xobsSimilarly, I have an RGB LED where I've set one color up to be self.ctrl.storage[2], and the LED doesn't change at all.06:49
xobsWhich is strange, because I have a separate CSR that's doing bit-banged SPI, and that one is working just fine.06:50
xobsI get header files out, and I can recompile my code and patch the boot rom, but somehow I'm unable to control these hard macros.06:51
xobsNow I'm starting to suspect nextpnr is misbehaving.07:02
xobsYes, that's weird.  I have an "Instance" of an SB_RGBA_DRV that takes only constants.  I have one PWD channel set to "1" and another set to "0", and still it has no output.07:50
_florent_xobs: that seems strange, do you have more than 32 CSR regions on your design? if so, you need to increase the default csr_address_width08:04
xobs_florent_: I'm going down the rabbit hole now.  I've cut the migen file down so it's just a single SB_RGBA_DRV block, and it's still failing.08:07
xobsBut that's good to know about csr_address_width!08:08
_florent_xobs: in fast i just remembered i added an assert for that: https://github.com/enjoy-digital/litex/blob/master/litex/soc/integration/soc_core.py#L33908:10
tpbTitle: litex/soc_core.py at master · enjoy-digital/litex · GitHub (at github.com)08:10
xobsOkay, my fault.  The RGB module has some Parameters that I assumed would default to "0" or "1", or some value when initialized.  Turns out if you skip them, it defaults to "don't add this block".08:28
xobsSo I can tell that CSRs are actually working, and now I have visual feedback of that with the LED block.08:29
xobsNow I need to figure out why SB_WARMBOOT isn't working.08:29
_florent_ok thanks08:39
xobsPhew, finally figured it out.  I'm disconnecting the USB prior to rebooting, but due to a bug in my code an interrupt storm happens immediately after disconnecting, so the CPU effectively halts.08:41
xobsSo there were two different issues that were causing trouble.  They're both solved now.  Yay!08:41
*** futarisIRCcloud has quit IRC09:17
keesjI am back into plaing with litex..12:30
keesjI think I need to userstand litescope and the serdes part.12:31
keesjright now I don't rember how to flash  :/ https://pastebin.com/dqi9LEzJ12:32
keesjfrom litex.build.xilinx import VivadoProgrammer12:32
tpbTitle: python test.py ****** Vivado v2017.4 (64-bit) **** SW Build 2086221 on Fr - Pastebin.com (at pastebin.com)12:32
keesjp = VivadoProgrammer()12:32
keesjhmm it does program but gives a warning.. I also got the basic litescope working and try to understand it better15:01
_florent_keesj: the warning always here with the VivadoProgrammer15:02
keesjI will also need to learn the flash15:12
keesjI have a lot to learn but hope I can combine the la with serdes. I think there is already an example here  https://github.com/enjoy-digital/liteiclink/blob/master/examples/serwb/test/test_analyzer.py#L5015:13
tpbTitle: liteiclink/test_analyzer.py at master · enjoy-digital/liteiclink · GitHub (at github.com)15:13
_florent_keesj: yes you can connect signals from the serdes to a litescope instance and see what is transmitted on your link15:20
keesjsounds.. easy16:09
tpbTitle: Season of Docs | Google Developers (at developers.google.com)21:09
*** futarisIRCcloud has joined #litex23:37

Generated by irclog2html.py 2.13.1 by Marius Gedminas - find it at mg.pov.lt!