Tuesday, 2020-07-07

*** tpb has joined #litex00:00
*** Degi has quit IRC00:17
*** Degi has joined #litex00:18
*** npcomp has quit IRC01:11
*** Degi has quit IRC01:37
*** Degi has joined #litex01:40
*** jaseg has quit IRC02:07
*** jaseg has joined #litex02:08
*** atommann has joined #litex02:11
*** npcomp has joined #litex02:49
*** atommann_ has joined #litex04:15
*** atommann has quit IRC04:16
*** kgugala_ has joined #litex05:10
*** kgugala has quit IRC05:14
*** HoloIRCUser1 has joined #litex05:30
*** kgugala_ has quit IRC05:32
*** kgugala has joined #litex05:32
*** HoloIRCUser has quit IRC05:32
*** st-gourichon-fid has joined #litex05:42
*** m4ssi has joined #litex05:57
futarisIRCcloudhttps://twitter.com/storborg/status/127997019351550771306:30
*** m4ssi has quit IRC06:31
*** kgugala_ has joined #litex07:10
*** kgugala has quit IRC07:12
*** st-gourichon-fid has quit IRC07:16
*** HoloIRCUser1 has quit IRC07:16
*** atommann_ has quit IRC07:18
*** atommann_ has joined #litex07:19
*** st-gourichon-fid has joined #litex07:56
*** st-gourichon-fid has quit IRC08:07
*** st-gourichon-fid has joined #litex08:09
*** st-gourichon-f has joined #litex08:14
*** st-gourichon-fid has quit IRC08:16
*** kgugala_ has quit IRC09:23
*** kgugala has joined #litex09:24
atommann_Litex rocks! Linux boots successfully on our board (I name the board LogicField).09:41
atommann_The memtest is not stable now, I reboot the board several times can boot Linux one time.09:42
atommann_The frequency is 100MHz. Later I try lower frequency such as 75MHz.09:43
atommann_I get Memtest OK every time at 75MHz.10:01
atommann_I just test more, well not every time, but much better than before. Still need to learn more.10:08
_florent_atommann_: nice, i could do a review of your Platform/Target if you share it10:53
atommann_OK. Tonight I want to do more tests.11:18
TMMYay, got the board. I'm just trying to see if everything works and I got a counter :) (small victories) I'm now trying this: https://github.com/antmicro/symbiflow-examples and it appears to maybe work, I have lxterm setup from litex but when I try any speed other than 115200 the serial line gets garbled. The linux-on-litex repository suggests 1e6 for --speed but that seems to not work there. Is that to do with the way symbiflow built the arty11:39
TMMverilog or am I missing some pieces?11:39
tpbTitle: GitHub - antmicro/symbiflow-examples (at github.com)11:39
TMMat the current speed loading the linux image is taking a very, very long time11:39
TMM(but it is loading)11:39
TMMhmm, now I'm just seeing "Liftoff!" and not a lot else. The images that came with the demo didn't have a json file so took the one from the other repo. Maybe it's all in the wrong location in ram now11:51
atommann_TMM, do you build everything in linux-on-litex-vexriscv folder with command like ./make.py --board=kc705 --build ?11:59
atommann_Another command for building is: python3 litex-boards/litex_boards/targets/boardname.py --cpu-type vexriscv --build12:00
atommann_And I found the output from these two methods are different.12:01
atommann_I learned the 2nd method in a github issue.12:02
TMMI used the symbiflow Linux example, I didn't build the bits myself12:53
TMMI'll just follow the full instructions instead, see what that gives me12:53
*** kgugala_ has joined #litex13:10
*** kgugala has quit IRC13:13
_florent_TMM: sorry i haven't tested personally the symbiflow example so can't help, but following  linux-on-litex-vexriscv repository for arty should work (but requires Vivado)13:17
TMM_florent_: is there a way to run linux-on-litex-vexrisc using symbiflow? litex supports it for the arty, right?13:19
_florent_TMM: i think that's possible with the symbiflow tutorial, but haven't tested it. kgugala_ could probably provide more information on this13:20
TMMthe symbiflow tutorial doesn't really use litex, it has verilog code that (from my understand of the flow as it is now, which definitely is... rudimentary) got generated by litex13:21
somlo_florent_: s/sdcard_pads/sdpads/ in https://github.com/enjoy-digital/litesdcard/blob/master/litesdcard/phy.py#L47713:25
tpbTitle: litesdcard/phy.py at master · enjoy-digital/litesdcard · GitHub (at github.com)13:25
_florent_somlo: thanks, i'll fix it13:26
_florent_somlo: i did some changes to the initialization (with the timeout you used, it was taking too long report a fail when the SDCard was not inserted), could you do some tests with the updated init?13:27
somlobuild in progress, should have it ready in a few minutes13:28
_florent_somlo: perfect, thanks13:30
TMM_florent_: what's the best way to learn how this all fits together? I found in litex how to tell it to use symbiflow but it appears that the linux-on-litex repo has some vivado command hardcoded in a file that says "# Autogenerated by LiteX / git: 51f2e6ce". So I assume there's some build step that happened on that repo?13:37
*** kgugala_ has quit IRC13:39
_florent_TMM: you can have a look at https://github.com/litex-hub/fpga_101 and the LiteX wiki (that is still in construction): https://github.com/enjoy-digital/litex/wiki13:39
*** kgugala has joined #litex13:39
tpbTitle: GitHub - litex-hub/fpga_101: FPGA 101 lessons/labs (at github.com)13:39
_florent_But for Linux on LiteX-Vexriscv, only Vivado is officially supported on 7-Series/ devices. The Symbiflow team did an experimenation with the toolchain, but that's not user ready (at least not fully integrated in LiteX)13:42
_florent_The only target that has Symbiflow support in LiteX is the Arty: https://github.com/enjoy-digital/litex/blob/master/litex/boards/targets/arty.py, but that's still experimental and has only be tested on the non-linux SoC13:43
TMM_florent_: I don't mind figuring out how all of this works, and see if I can get it to work at all. It seems like a good way to learn how all of the parts move together. I'm really not interested in using a non open source tool for any of my project. And I got an Arty :)13:43
TMMI don't need any of this to 'just work' but now I'm staring at a gigantic pile of software and hardware all of which I know nothing about :)13:44
_florent_TMM: sure i understand, we would be interested in having your help/feedback improving this13:45
_florent_I think a starting point for you would be to look at: https://github.com/enjoy-digital/litex/issues/55413:45
tpbTitle: improve Symbiflow/Arty support · Issue #554 · enjoy-digital/litex · GitHub (at github.com)13:45
_florent_and try to build the Arty target with Symbiflow13:46
_florent_to switch to the Linux SoC, you will first need to get the DDR3 working with symbiflow13:47
_florent_i know this has already been validated, this is not integrated in the LiteX target, feel free to ask questions in the PR about this and why it hasn't been integrated in the initial PR13:49
TMMAlright, I'll first try to run the parts that are already supported and try to go from there13:49
TMMI should be able to build a non-linux soc with litex 'as is' right?13:49
_florent_once you have DDR3 working with Symbiflow, getting the Linux-On-LiteX-Vexriscv SoC working will only be a matter of switching to the SoCLinux class13:50
_florent_yes you should be able to build the Arty target with Symbiflow (adding --toolchain=symbiflow)13:51
TMMOK, I'll see how that's supposed to work then. From what I gathered so far is that I have to write a python script that defines what I want to build and then run that, I think? (I'm sorry I'm trying to find all of these parts and I'm probably asking kind of dumb questions but none of this seems to be for beginners :) I really appreciate your patience with me)13:52
_florent_Yes, you describe your design in python with Migen/LiteX classes/modules, during the build, LiteX will convert the design to verilog and constraints files for the toolchain (basically the files that have been committed to the symbiflow example repository) and it will also run the toolchain for you to produce the bitstream that you will load in the FPGA.13:59
somlo_florent_: sdcardboot fails for me right now (nexys4ddr, rocket)14:05
somlonot sure whether it's the timeout or something else at this point14:06
somlorebuilding with debug printf's to pinpoint where exactly it thinks it's failing14:10
TMM_florent_: so the boards/targets python scripts are sort of pre-defined sets of components to create an SoC from?14:11
_florent_somlo: ok, don't spend to much time on this, i'll push some changes soon.14:11
_florent_TMM: the board provide the definition of you hardware (IOS, interfaces, clocks, etc...)14:12
_florent_TMM: sorry the platform file14:12
_florent_the target is your design and LiteX provides default targets with a simple SoC (CPU + ROM + SRAM + SDRAM when available + Ethernet, etc...) that you can use  as a basis to create something more complex14:13
TMMI'm trying to run './arty.py --build --toolchain=symbiflow' in the 'targets' directory now but symbiflow's synth fails. It does appear that the version of litex I have is older than master, and there's some differences for the symbiflow target as well.14:14
TMMok, that's probably trying to build something with a dull dram controller etc so that's probably something that's also not supposed to work14:20
TMMor perhaps the default installation instructions give me too old a version of either litex or symbiflow, or both14:20
somloTMM: IMHO, for a xilinx based board, it'd be worth building some vanilla litex design with *vivado* first, to smoothen the learning curve, before diving into figuring out the additional quirks of doing it with symbiflow14:20
*** lf has quit IRC14:23
*** lf has joined #litex14:24
TMMsomlo: if I really can't get anything to work at all I'll probably do that. I just don't want to give up straight away :)14:31
somlo_florent_: there are a lot of new `if (something != SD_OK) return 0;` in sdcard_init(), and printfs don't show a consistent one of them failing :(14:37
somlosometimes it fails at sdcard_all_send_cid(), sometimes it's during sdcard_select_card(rca) -- it's not anything simple, so I'll just wait for your next update before testing again :)14:38
_florent_somlo: ok, i also have issue with the recent changes on the way the clock is generated, i'm looking at this14:38
_florent_somlo: could you try reverting this in SDPHYIOGen: https://github.com/enjoy-digital/litesdcard/commit/db607647d8fada2ecd6d827aaa12e2fb22ec5a3314:39
tpbTitle: phy/SDPHYIOGen: use SDROutput for clk. · enjoy-digital/litesdcard@db60764 · GitHub (at github.com)14:39
*** m4ssi has joined #litex14:41
somlo_florent_: the whole commit, or just the chunk in SDPHYIOGen?14:51
_florent_somlo: just the change in SDPHYIOGen14:51
somlook, building...14:53
somlo_florent_: still fails with this patch on top of litesdcard: https://pastebin.com/77Z1txJv15:20
tpbTitle: [Diff] diff --git a/litesdcard/phy.py b/litesdcard/phy.py index 0b94cb1..f4204ee 10064 - Pastebin.com (at pastebin.com)15:20
_florent_somlo: ok thanks,  i'm doing others changes on the clocking/reset and will tell ask you to test when done/committed15:46
somlocool, sounds like a plan!15:49
atommann__florent_, Just emailed you, please have a look when you have time. Thank you.16:17
*** atommann_ has quit IRC16:37
*** m4ssi has quit IRC17:45
*** Swimming1ode has quit IRC17:56
*** m4ssi has joined #litex17:57
_florent_somlo-ci: could you trigger a build? :)18:04
somlo_florent_: building...18:15
somlo_florent_: sorry, still failing (not hanging at least, but falling through to netboot)18:58
_florent_somlo: ok thanks. I still have some work to do on the write data path, once done i'll do more tests on various boards19:34
keesjI did not know the im-tomu usb core was rewritten in migen https://github.com/im-tomu/valentyusb/tree/master/valentyusb/usbcore/rx19:37
tpbTitle: valentyusb/valentyusb/usbcore/rx at master · im-tomu/valentyusb · GitHub (at github.com)19:37
somlo_florent_: it's all good, thanks for making sdcard awesome! In the mean time, I'm looking into the nitty gritty details of Rocket's slave MMIO (DMA) port19:37
somlowe might need the wishbone UpConverter back, and maybe a wb-slave-to-axi-master conversion (to connect to the axi slave port) -- not sure what's already in there can work bi-directionally19:39
somlomaybe I'll use my vacation days to finally master migen FSMs (since it looks like I'm not going anywhere this summer) :D19:39
somlo_florent_: just for the record, right now this is where it fails: https://github.com/enjoy-digital/litex/blob/master/litex/soc/software/liblitesdcard/sdcard.c#L47519:51
tpbTitle: litex/sdcard.c at master · enjoy-digital/litex · GitHub (at github.com)19:51
*** m4ssi has quit IRC20:02
*** st-gourichon-f has quit IRC21:51
*** Skip has joined #litex22:22
*** mithro has quit IRC22:47
*** guan has quit IRC22:47
*** y2kbugger has quit IRC22:49
*** tucanae47 has quit IRC22:50
*** carlomaragno has quit IRC22:50
*** futarisIRCcloud has quit IRC22:50
*** levi has quit IRC22:50
*** key2 has quit IRC22:50
*** daveshah has quit IRC22:50
*** rohitksingh has quit IRC22:50
*** pdp7 has quit IRC22:51
*** _florent_ has quit IRC22:51
*** sorear has quit IRC22:51
*** esden has quit IRC22:52
*** bubble_buster has quit IRC22:52
*** scanakci has quit IRC22:52
*** Claude has quit IRC22:52
*** flammit has quit IRC22:53
*** lf has quit IRC23:55
*** lf has joined #litex23:55

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