_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://freenode.irclog.whitequark.org/litex
tpb has quit [Remote host closed the connection]
tpb has joined #litex
Degi has quit [Ping timeout: 272 seconds]
Degi has joined #litex
npcomp has quit [Quit: WeeChat 1.4]
Degi has quit [Ping timeout: 256 seconds]
Degi has joined #litex
jaseg has quit [Ping timeout: 260 seconds]
jaseg has joined #litex
atommann has joined #litex
npcomp has joined #litex
atommann_ has joined #litex
atommann has quit [Ping timeout: 256 seconds]
kgugala_ has joined #litex
kgugala has quit [Ping timeout: 264 seconds]
HoloIRCUser1 has joined #litex
kgugala_ has quit [Quit: -a- Connection Timed Out]
kgugala has joined #litex
HoloIRCUser has quit [Ping timeout: 256 seconds]
st-gourichon-fid has joined #litex
m4ssi has joined #litex
m4ssi has quit [Remote host closed the connection]
kgugala_ has joined #litex
kgugala has quit [Ping timeout: 258 seconds]
st-gourichon-fid has quit [Ping timeout: 272 seconds]
HoloIRCUser1 has quit [Ping timeout: 272 seconds]
atommann_ has quit [Remote host closed the connection]
atommann_ has joined #litex
st-gourichon-fid has joined #litex
st-gourichon-fid has quit [Ping timeout: 256 seconds]
st-gourichon-fid has joined #litex
st-gourichon-f has joined #litex
st-gourichon-fid has quit [Ping timeout: 246 seconds]
kgugala_ has quit [Ping timeout: 256 seconds]
kgugala has joined #litex
<atommann_> Litex rocks! Linux boots successfully on our board (I name the board LogicField).
<atommann_> The memtest is not stable now, I reboot the board several times can boot Linux one time.
<atommann_> The frequency is 100MHz. Later I try lower frequency such as 75MHz.
<atommann_> I get Memtest OK every time at 75MHz.
<atommann_> I just test more, well not every time, but much better than before. Still need to learn more.
<_florent_> atommann_: nice, i could do a review of your Platform/Target if you share it
<atommann_> OK. Tonight I want to do more tests.
<TMM> Yay, 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 arty
<TMM> verilog or am I missing some pieces?
<tpb> Title: GitHub - antmicro/symbiflow-examples (at github.com)
<TMM> at the current speed loading the linux image is taking a very, very long time
<TMM> (but it is loading)
<TMM> hmm, 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 now
<atommann_> TMM, do you build everything in linux-on-litex-vexriscv folder with command like ./make.py --board=kc705 --build ?
<atommann_> Another command for building is: python3 litex-boards/litex_boards/targets/boardname.py --cpu-type vexriscv --build
<atommann_> And I found the output from these two methods are different.
<atommann_> I learned the 2nd method in a github issue.
<TMM> I used the symbiflow Linux example, I didn't build the bits myself
<TMM> I'll just follow the full instructions instead, see what that gives me
kgugala_ has joined #litex
kgugala has quit [Ping timeout: 272 seconds]
<_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)
<TMM> _florent_: is there a way to run linux-on-litex-vexrisc using symbiflow? litex supports it for the arty, right?
<_florent_> TMM: i think that's possible with the symbiflow tutorial, but haven't tested it. kgugala_ could probably provide more information on this
<TMM> the 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 litex
<tpb> Title: litesdcard/phy.py at master · enjoy-digital/litesdcard · GitHub (at github.com)
<_florent_> somlo: thanks, i'll fix it
<_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?
<somlo> build in progress, should have it ready in a few minutes
<_florent_> somlo: perfect, thanks
<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?
kgugala_ has quit [Read error: Connection reset by peer]
<_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/wiki
kgugala has joined #litex
<tpb> Title: GitHub - litex-hub/fpga_101: FPGA 101 lessons/labs (at github.com)
<_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)
<_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 SoC
<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 :)
<TMM> I 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 :)
<_florent_> TMM: sure i understand, we would be interested in having your help/feedback improving this
<_florent_> I think a starting point for you would be to look at: https://github.com/enjoy-digital/litex/issues/554
<tpb> Title: improve Symbiflow/Arty support · Issue #554 · enjoy-digital/litex · GitHub (at github.com)
<_florent_> and try to build the Arty target with Symbiflow
<_florent_> to switch to the Linux SoC, you will first need to get the DDR3 working with symbiflow
<_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 PR
<TMM> Alright, I'll first try to run the parts that are already supported and try to go from there
<TMM> I should be able to build a non-linux soc with litex 'as is' right?
<_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 class
<_florent_> yes you should be able to build the Arty target with Symbiflow (adding --toolchain=symbiflow)
<TMM> OK, 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)
<_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.
<somlo> _florent_: sdcardboot fails for me right now (nexys4ddr, rocket)
<somlo> not sure whether it's the timeout or something else at this point
<somlo> rebuilding with debug printf's to pinpoint where exactly it thinks it's failing
<TMM> _florent_: so the boards/targets python scripts are sort of pre-defined sets of components to create an SoC from?
<_florent_> somlo: ok, don't spend to much time on this, i'll push some changes soon.
<_florent_> TMM: the board provide the definition of you hardware (IOS, interfaces, clocks, etc...)
<_florent_> TMM: sorry the platform file
<_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 complex
<TMM> I'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.
<TMM> ok, that's probably trying to build something with a dull dram controller etc so that's probably something that's also not supposed to work
<TMM> or perhaps the default installation instructions give me too old a version of either litex or symbiflow, or both
<somlo> TMM: 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 symbiflow
lf has quit [Ping timeout: 244 seconds]
lf has joined #litex
<TMM> somlo: 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 :)
<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 :(
<somlo> sometimes 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 :)
<_florent_> somlo: ok, i also have issue with the recent changes on the way the clock is generated, i'm looking at this
<_florent_> somlo: could you try reverting this in SDPHYIOGen: https://github.com/enjoy-digital/litesdcard/commit/db607647d8fada2ecd6d827aaa12e2fb22ec5a33
<tpb> Title: phy/SDPHYIOGen: use SDROutput for clk. · enjoy-digital/litesdcard@db60764 · GitHub (at github.com)
m4ssi has joined #litex
<somlo> _florent_: the whole commit, or just the chunk in SDPHYIOGen?
<_florent_> somlo: just the change in SDPHYIOGen
<somlo> ok, building...
<somlo> _florent_: still fails with this patch on top of litesdcard: https://pastebin.com/77Z1txJv
<tpb> Title: [Diff] diff --git a/litesdcard/phy.py b/litesdcard/phy.py index 0b94cb1..f4204ee 10064 - Pastebin.com (at pastebin.com)
<_florent_> somlo: ok thanks, i'm doing others changes on the clocking/reset and will tell ask you to test when done/committed
<somlo> cool, sounds like a plan!
<atommann_> _florent_, Just emailed you, please have a look when you have time. Thank you.
atommann_ has quit [Quit: Leaving]
m4ssi has quit [Remote host closed the connection]
Swimming1ode has quit [Quit: Lost terminal]
m4ssi has joined #litex
<_florent_> somlo-ci: could you trigger a build? :)
<somlo> _florent_: building...
<somlo> _florent_: sorry, still failing (not hanging at least, but falling through to netboot)
<_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 boards
<keesj> I did not know the im-tomu usb core was rewritten in migen https://github.com/im-tomu/valentyusb/tree/master/valentyusb/usbcore/rx
<tpb> Title: valentyusb/valentyusb/usbcore/rx at master · im-tomu/valentyusb · GitHub (at github.com)
<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) port
<somlo> we 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-directionally
<somlo> maybe I'll use my vacation days to finally master migen FSMs (since it looks like I'm not going anywhere this summer) :D
<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#L475
<tpb> Title: litex/sdcard.c at master · enjoy-digital/litex · GitHub (at github.com)
m4ssi has quit [Remote host closed the connection]
st-gourichon-f has quit [Ping timeout: 244 seconds]
Skip has joined #litex
mithro has quit [Ping timeout: 246 seconds]
guan has quit [Ping timeout: 246 seconds]
y2kbugger has quit [Ping timeout: 244 seconds]
tucanae47 has quit [Ping timeout: 260 seconds]
carlomaragno has quit [Ping timeout: 246 seconds]
futarisIRCcloud has quit [Ping timeout: 260 seconds]
levi has quit [Ping timeout: 256 seconds]
key2 has quit [Ping timeout: 256 seconds]
daveshah has quit [Ping timeout: 244 seconds]
rohitksingh has quit [Ping timeout: 260 seconds]
pdp7 has quit [Ping timeout: 265 seconds]
_florent_ has quit [Ping timeout: 260 seconds]
sorear has quit [Ping timeout: 244 seconds]
esden has quit [Ping timeout: 260 seconds]
bubble_buster has quit [Ping timeout: 246 seconds]
scanakci has quit [Ping timeout: 272 seconds]
Claude has quit [Ping timeout: 260 seconds]
flammit has quit [Ping timeout: 272 seconds]
lf has quit [Ping timeout: 244 seconds]
lf has joined #litex