Tuesday, 2021-11-30

*** tpb <[email protected]> has joined #litex00:00
*** Degi <[email protected]> has quit IRC (Ping timeout: 256 seconds)02:14
*** Degi <[email protected]> has joined #litex02:14
*** peeps[zen] <peeps[zen]!~peepsalot@openscad/peepsalot> has quit IRC (Ping timeout: 265 seconds)03:54
*** peepsalot <peepsalot!~peepsalot@openscad/peepsalot> has joined #litex03:54
*** TMM_ <[email protected]> has quit IRC (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.)07:00
*** TMM_ <[email protected]> has joined #litex07:00
*** FabM <[email protected]> has joined #litex08:09
*** jersey99 <[email protected]> has quit IRC (Ping timeout: 256 seconds)08:12
*** essele_ <[email protected]> has joined #litex08:45
*** essele <[email protected]> has quit IRC (Read error: Connection reset by peer)08:45
*** jeffdi <[email protected]> has quit IRC (Quit: Leaving.)09:10
tntWhat would be the "canonical" way of creating a GPIO block with only a subset of the subsignals of a resource ?12:23
tntMmm ... even the full resource doesn't work. Am I missing something obvious here ?13:47
_florent_tnt: you could do something like this13:48
_florent_https://www.irccloud.com/pastebin/1WXPBT3I/13:48
tpbTitle: Snippet | IRCCloud (at www.irccloud.com)13:48
_florent_If this is not covering what you want to do, can you share a bit more info?13:48
tntThat doesn't work with GPIOTristate.13:50
tnthttps://pastebin.com/UjeMbWHQ13:50
tpbTitle: ("adrv9009_ctl", 1, Subsignal("reset_n", Pins("AH18")), - Pastebin.com (at pastebin.com)13:50
tntThis is what I defined. (previously I had them all in one resource, but I split them now since that seemed easier).13:51
tntReally ATM all I needs are the ctl signals and they're outputs, but I'd like to be able to tristate them. (No need for input) and AFAICT I need GPIOTristate for that.13:52
tntSo I just tried : setattr(self.submodules, f'adrv{i:d}_ctl',  GPIOTristate(platform.request("adrv9009_ctl",  i)))13:53
tnt(setattr because it's in a loop).13:53
tnt(If I use the same syntax and GPIOOut, that works, so it's a bit counter-intuitive that just replacing 'Out' with 'Tristate' dosn't work)13:58
*** jeffdi <[email protected]> has joined #litex14:33
_florent_tnt: can you try this? https://github.com/enjoy-digital/litex/pull/111714:33
_florent_(I just tested verilog generation but not compilation)14:34
tnt_florent_: Thanks. Yeah, at least it builds and the verilog looks correct here as well.14:37
tntArf nm ... ERROR: [Synth 8-2715] syntax error14:39
_florent_ok, I look at this14:41
tntassign {adrv9009_ctl0_rx2_enable, adrv9009_ctl0_rx1_enable, adrv9009_ctl0_tx2_enable, adrv9009_ctl0_tx1_enable, adrv9009_ctl0_test, adrv9009_ctl0_reset_n}[0] = main_gpiotristate0_tstriple0_oe ? main_gpiotristate0_tstriple0_o : 1'bz;14:42
tntI thought that was valid TBH but apparently {} can't be a LHS.14:42
_florent_tnt: I also have doubts on this when looking at the verilog :)14:43
tntor rather it's the {...}[] that it doesn't like.14:45
_florent_tnt: I no longer have the syntax error with https://github.com/enjoy-digital/litex/pull/1117/commits/16a43e983ed32e140bd19ab3263bc1161c61046014:49
tnt_florent_: indeed, verilog looks much more sane :)14:51
tntand synth passed.14:53
_florent_ok good14:53
tntTx.14:53
_florent_I'll merge it then14:53
tntI'm not sure if it's the "right way" to expose those signals in a single resource or if I'm supposed to set them as independent signals ?14:53
tnt(Trying to fit the litex way of doing things).14:54
_florent_I generally also put them in a single resource (but without the tristate)14:54
_florent_tnt: here is an example for the LiteJESD204B integration: https://gist.github.com/enjoy-digital/cd9ea52fafaebe016e739a90983eb237 This is not a full example but should help you doing the integration.15:06
tnt_florent_: Oh, very nice. I'll dig into that tomorrow.15:08
tntI had seen some code from artiq on m-labs but it seems based on some old version of the jesd core.15:08
_florent_yes it's not up to date was also only TX, not for SDR. The one I just shared is up to date and TX + RX and used on a SDR system.15:10
*** jersey99 <[email protected]> has joined #litex15:32
*** _franck_ <[email protected]> has quit IRC (Ping timeout: 256 seconds)16:05
*** _franck_ <[email protected]> has joined #litex16:07
*** FabM <FabM!~FabM@armadeus/team/FabM> has quit IRC (Quit: Leaving)16:27
*** peeps[zen] <peeps[zen]!~peepsalot@openscad/peepsalot> has joined #litex17:08
*** peepsalot <peepsalot!~peepsalot@openscad/peepsalot> has quit IRC (Ping timeout: 256 seconds)17:09
*** peepsalot <peepsalot!~peepsalot@openscad/peepsalot> has joined #litex17:13
*** peeps[zen] <peeps[zen]!~peepsalot@openscad/peepsalot> has quit IRC (Ping timeout: 252 seconds)17:14
tntMmmm, Am I blind ? Where's the driver code for the SPIMaster() core ?19:31
*** Martoni42 <Martoni42!~Martoni@2a03:d604:103:600:2ad2:44ff:fe23:2f72> has joined #litex19:36
tntnm, looks like you just write to the CSR directly, no wrapper provided.19:43
*** futarisIRCcloud <[email protected]> has joined #litex19:48
futarisIRCcloudhttps://digilent.com/shop/arty-a7-artix-7-fpga-development-board/19:48
tpbTitle: Artix-7 FPGA Development Board - Digilent Arty A7 - Xilinx (at digilent.com)19:48
futarisIRCcloudhttps://twitter.com/ElectronicsbyJH/status/146572667738493338119:48
futarisIRCcloudShame that the shipping to Australia is just as much as the board 19:53
*** TMM_ <[email protected]> has quit IRC (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.)20:22
*** TMM_ <[email protected]> has joined #litex20:22
bjonnh$30 more for the USB cable :D20:35
bjonnhI may just order that one, I'm still waiting on my ULX3S20:35
bjonnhIs it complicated to deal with that ARM on the Zynq-7000?20:39
bjonnhlets say I just want to do FPGA for now, but may be happy to have some Arm later20:39
tntwith jtag you can configure the fpga and completely ignore the ARM part.20:40
bjonnhneat20:40
tnt(that's what I'm doing now on a UltraScale+ Zynq :)20:41
bjonnhI'll need to find a Jtag cable, they sell them for the same price as the board :D20:42
trabucayrecable is onboard20:42
trabucayreyou have just fo find an usb cable :)20:42
bjonnh<320:42
trabucayreJTAG interface is onboard20:42
trabucayreFT2232 (one interface for JTAG, second for UART)20:44
bjonnh"Briefly describe the reasons you chose Digilent for your purchase today."  "Because your board works with Opensource toolchains #litex"20:47
bjonnhI'm sure they will be happy about that20:48
trabucayreyou can you use linux (on PS side) to communicate with the LiteX gateware into PL too20:53
*** Martoni42 <Martoni42!~Martoni@2a03:d604:103:600:2ad2:44ff:fe23:2f72> has quit IRC (Ping timeout: 268 seconds)20:54
bjonnhMy experience with FPGAs stopped at making leds blink on a Fomu, so I'll go slowly :D20:56
trabucayretry to communicate with LedChaser :)20:56
*** zjason` <zjason`[email protected]> has quit IRC (Remote host closed the connection)21:04
*** zjason` <zjason`[email protected]> has joined #litex21:04
*** frogeyes <[email protected]> has joined #litex21:24
*** rlittl01 <[email protected]> has quit IRC (Ping timeout: 256 seconds)21:26
*** futarisIRCcloud <[email protected]> has quit IRC (Quit: Connection closed for inactivity)21:57
jeffdiHello - I’m trying to build a version of the VexRiscv min+debug core with a small amount of cache (e.g. 64 bytes).  I’ve installed scala and sbt on a Mac via Brew, but getting errors running the make targets in pythondata-cpu-vexriscv.  any suggestions?22:02
jeffdi(venv) jeffs-mbp:verilog jeffdi$ make VexRiscv_MinDebug_Cache.v22:02
jeffdisbt compile "runMain vexriscv.GenCoreDefault -d --iCacheSize 64 --dCacheSize 0 --mulDiv false --singleCycleShift false --singleCycleMulDiv false --bypass false --prediction none --outputFile VexRiscv_MinDebug_Cache"22:02
jeffdiWARNING: A terminally deprecated method in java.lang.System has been called22:02
*** jeffdi <[email protected]> has quit IRC (Excess Flood)22:02
*** jeffdi <[email protected]> has joined #litex22:02
zypthat warning looks like it can be ignored, which errors are you getting?22:04
mithroI ordered 20 of the Digilent Arty A7 35T boards :-)22:05
mithrojeffdi: Can you provide a link to the complete output?22:05
bjonnhmithro: are you stockpiling ?22:06
mithrotcal: Has a lot of experience with sbt and LiteX thanks to his work on the CFU playgournd (http://cfu-playground.rtfd.io/)22:06
mithrobjonnh: I send them out to people who contribute to my projects22:06
tcaljeffdi: yes, especially the first time you run the build, there are lots of warning that can be ignored.   I don't recall seeing that one...I recall ones about duplicate main methods.22:06
jeffditcal: reposting using gist.  not sure what else to provide   https://gist.github.com/jeffdi/8dbc17a777492bff039951985a803c0f22:17
tcaljeffdi: is the ./ext/VexRiscv/ submodule loaded?      What do you see in that directory?22:22
jeffditcal: just posted the output from find ext -print22:29
tcalIn the verilog/ directory with the `Makefile` that you're using, there should be an ext/ directory, and VexRiscv inside that, unless things are completely different with mac development.22:30
*** futarisIRCcloud <[email protected]> has joined #litex22:30
jeffditcal: yes, there is22:32
tcaljeffdi: FYI if we can't get to the bottom of this before I need to run, try asking at https://gitter.im/SpinalHDL/VexRiscv (you can log in with your github credentials) .   @Dolu1990 is the creator of VexRiscv.22:34
tpbTitle: SpinalHDL/VexRiscv - Gitter (at gitter.im)22:34
tcaljeffdi: What's inside the directory?  Something like this?   22:35
tcalhttps://www.irccloud.com/pastebin/KjjeO759/22:35
tpbTitle: Snippet | IRCCloud (at www.irccloud.com)22:35
bjonnhmithro: great so that's an even better discount than the digilent one!22:37
tcaljeffdi: dolu1990 is in Europe so you probably won't get a reply until tomorrow.22:51
*** frogeyes <[email protected]> has quit IRC (Quit: Leaving)22:53
cr1901Is Dolu1990 on the slack side of the bridge?22:53
cr1901Wait, wrong channel lol22:54
jeffditcal: this is what i see  https://gist.github.com/jeffdi/8dbc17a777492bff039951985a803c0f#file-find-ext-print22:55
*** jeffdi_ <[email protected]> has joined #litex22:58
tcalOh, that might be your issue.    Run `git submodule`.  Also, `cd` into `ext/VexRiscv` and run `git remote -v`.   If the submodule is loaded correctly, for the latter command, you'll see:23:09
tcalhttps://www.irccloud.com/pastebin/11JJBUEx/23:09
tpbTitle: Snippet | IRCCloud (at www.irccloud.com)23:09
tcaljeffdi: If the submodule is not loaded correctly, then first you have to recursively delete `target/` in `ext/VexRiscv`, and then run `git submodule update --init --recursive` while sitting in the `verilog/` directory above.23:11
jeffditcal: thank you!!  i think that did it!  its running now...23:15
tcal👍23:23

Generated by irclog2html.py 2.17.2 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!