Wednesday, 2021-09-01

*** tpb <[email protected]> has joined #litex00:00
*** Degi <[email protected]> has quit IRC (Ping timeout: 250 seconds)00:16
*** Degi <[email protected]> has joined #litex00:17
*** ChuckM <[email protected]> has quit IRC (Read error: No route to host)00:19
*** RaYmAn <[email protected]> has quit IRC (Ping timeout: 252 seconds)01:27
*** RaYmAn <[email protected]> has joined #litex01:32
*** pftbest <[email protected]> has joined #litex01:56
*** pftbest <[email protected]> has quit IRC (Ping timeout: 244 seconds)02:00
*** pftbest <[email protected]> has joined #litex02:35
*** pftbest <[email protected]> has quit IRC (Ping timeout: 252 seconds)02:40
*** alainlou <[email protected]> has quit IRC (Quit: Client closed)03:05
*** futarisIRCcloud <[email protected]> has joined #litex03:13
*** pftbest <[email protected]> has joined #litex03:17
*** pftbest <[email protected]> has quit IRC (Ping timeout: 252 seconds)03:21
*** pftbest <[email protected]> has joined #litex03:59
*** pftbest <[email protected]> has quit IRC (Ping timeout: 240 seconds)04:04
*** TMM_ <[email protected]> has quit IRC (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.)04:09
*** TMM_ <[email protected]> has joined #litex04:09
*** pftbest <[email protected]> has joined #litex04:20
*** pftbest <[email protected]> has quit IRC (Ping timeout: 252 seconds)04:25
*** pftbest <[email protected]> has joined #litex05:02
*** pftbest <[email protected]> has quit IRC (Ping timeout: 252 seconds)05:06
*** Martoni42 <Martoni42!~Martoni@2a03:d604:103:600:2ad2:44ff:fe23:2f72> has joined #litex05:22
*** C-Man <[email protected]> has quit IRC (Ping timeout: 250 seconds)05:26
*** pftbest <[email protected]> has joined #litex05:43
*** pftbest <[email protected]> has quit IRC (Ping timeout: 252 seconds)05:48
*** pftbest <[email protected]> has joined #litex06:25
*** pftbest <[email protected]> has quit IRC (Ping timeout: 252 seconds)06:30
*** pftbest <[email protected]> has joined #litex06:30
*** indy <[email protected]> has quit IRC (Remote host closed the connection)07:20
*** cr1901 <cr1901!~William@2601:8d:8600:911:8d3d:b75:a70:95ca> has quit IRC (Ping timeout: 240 seconds)07:21
*** indy <[email protected]> has joined #litex07:21
_florent_tpw_rules: can you provide the generated files (build/sqrl_acorn/gateware)? I'd like to check them and try a compilation on my machine07:23
_florent_tpw_rules: otherwise, you can just comment the constraints that are causing this issue: https://github.com/litex-hub/litex-boards/blob/master/litex_boards/targets/sqrl_acorn.py#L107-L11107:24
_florent_tpw_rules: it's setting a false path between the sys_clk and pcie_clk, it will work without it but will take more time for P&R07:25
_florent_somlo: I started porting LiteSATA to ECP5, but haven't really put that much efforts in it for now so it's not yet working. I was planning to put more efforts into it while working on the Acorn base board (since it also has an ECP5 with 2 SATA connectors)07:26
_florent_Melkhior: LiteSATA only implement a minimal subset of SATA commands and has a simple interface, we tried to avoid AHCI when designing the core to keep things simple07:27
_florent_Melkhior: The Linux driver should be really easy since the core is handling a lot internally and the data interface is very similar to LiteSDCard07:28
_florent_Melkhior: you can look at https://github.com/enjoy-digital/litex/blob/master/litex/soc/software/liblitesata/sata.c :)07:30
_florent_Melkhior: but otherwise I agree with you on the fact to reuse standard driver for Linux systems, just not sure how complex it would be for SATA07:31
*** pftbest <[email protected]> has quit IRC (Ping timeout: 252 seconds)07:34
Melkhior_florent_: I'm biased, with my design I need the drive in NetBSD rather than Linux :-)07:46
MelkhiorAnd OHCI was 'miraculous': just needed a very small SBus -> OHCI shim (*very* similar to the existing PCI -> OHCI shim)07:47
MelkhiorBut of course, being standard-compliant is a lot more work, in particular with recent "feature-rich" standards...07:48
MelkhiorYour SATA code looks reasonably easy; I already have a driver to DMA blocks to/from the SDRAM controller, I'm guessing a single-port SATA driver would be somewhat similar07:50
MelkhiorDarn, another box ticked on the 'should i do a high-speed version' checklist :-)07:51
_florent_Melkhior: For LiteSATA, the initial aim was to be able to write/read data at maximum speed directly from the FPGA without CPU/driver, so we naturally avoided AHCI :)07:51
Melkhiormake sense07:56
*** pftbest <[email protected]> has joined #litex08:11
*** pftbest <[email protected]> has quit IRC (Ping timeout: 245 seconds)08:15
futarisIRCcloudhttps://www.linkedin.com/posts/iwansmith_learning-hackathon-activity-6838391572703281152-4wHF08:28
tpbTitle: Iwan Smith on LinkedIn: #learning #hackathon (at www.linkedin.com)08:28
*** pftbest <[email protected]> has joined #litex08:32
*** pftbest <[email protected]> has quit IRC (Ping timeout: 240 seconds)08:36
*** pftbest <[email protected]> has joined #litex08:53
*** pftbest <[email protected]> has quit IRC (Remote host closed the connection)08:55
*** pftbest <[email protected]> has joined #litex08:55
tntI'm considering trying out litex (litepcie + litejesd specifically) on a ZU11EG (and talking to an ADVRV9009). Anyone got experience with that ?  I'm wondering what kind of gotcha I can expect.08:57
_florent_tnt: I'm using LiteX with LitePCIe/LiteJESD on 7-series with AD937X chips. Both LitePCIe and LiteJESD already support Ultrascale+, so if you are using a JESD configuration close to the one I already validated, I don't expect too much troubles09:28
_florent_I'm also interested to explore the ADRV9009, so could provide help setting up the infrastructure/cores09:29
*** Martoni42 <Martoni42!~Martoni@2a03:d604:103:600:2ad2:44ff:fe23:2f72> has quit IRC (Ping timeout: 252 seconds)09:32
*** C-Man <[email protected]> has joined #litex09:34
_florent_With the AD937X/ADVRV9009, ADI no longer provide the full register map of the chip (as it was the case for the AD9361 for example) but only the software lib that has to be used as a reference. I found that a bit painful while working on the AD937X since it was difficult to get a clear status of the JESD link. But the JESD block is probably very similar between the AD937X/ADRV900909:34
tnt_florent_: yeah, I've seen this "HAL" thing :/  But good to know this should be mostly supported. I'll get working on the "boring" part of writing the platform file with all the pins this afternoon or tomorrow.09:37
_florent_which JESD config are you planning to use?09:40
_florent_I'm not sure there are that much example provided with LiteJESD but I can provide you some09:41
_florent_I would first recommend getting LitePCIe working (with the DMA loopback)09:41
_florent_Then setup the SPI link for the ADRV9009 clocking/configuration09:42
tnt_florent_: ATM this is really more tech exploration more than anything, so I'll start by using whatever config is supported :)09:42
_florent_adapt the HAL for this09:42
tntAnd yeah, getting litepcie working first, then litedram was the plan.09:42
_florent_then get the JESD lanes up and test with the PRBS09:42
tntAnd finally tackle the ADRV and JESD.09:43
_florent_and once PRBS is validated, get the JESD link up09:43
_florent_and then connect everything :)09:43
tntSounds so easy :)09:43
_florent_yeah :) (I spent quite some time on it for the AD937X since I was also developing the JESD RX part...)09:45
tntOh yeah, this is RX only btw, not TX.09:46
_florent_OK,  it will probably be easier to also setup the TX path09:47
_florent_This way you can use the internal loopback of the ADRV9009 for tests of the digital chain09:48
tntoh right, that makes sense.09:48
_florent_LitePCIe has a DMA loopback test that can be useful for this09:49
_florent_with just LitePCIe, you can enable the loopback in the DMA and do: Host --> LitePCIe (loopback) --> Host09:50
_florent_but you can then extend this to the digital chain of your design09:50
_florent_ex: Host --> LitePCIe --> JESD TX --> ADRV (digital loopback) --> JESD RX --> LitePCIe --> Host09:51
tntyup got it.09:51
_florent_but yeah, the cores are here, but integration can still require some time/work09:52
*** michalsieron <[email protected]> has joined #litex10:00
_florent_tnt: BTW for this, if you don't want to use LiteX for the integration it's possible to generate the cores as standalone verilog cores. LitePCIe/LiteDRAM already have their generators but LiteJESD204B's generator hasn't been created yet (probably not too complicated to do but I haven't had a use case for it now).10:14
tnt_florent_: Good to know it's an option. But I was actually planning to also use this to give LiteX a better try. A lot of the time I work on pre-existing stuff that already has a code base/build system, or on stuff for the ice40 where every lut count and I want to control every little detail. Here since it's a bit exploration and on a giant FPGA, I want to give the "plug and play" thing a try :)10:17
*** FabM <[email protected]> has joined #litex11:07
*** cr1901 <cr1901!~William@2601:8d:8600:911:cf1:8507:720a:c17> has joined #litex12:01
*** pftbest <[email protected]> has quit IRC (Remote host closed the connection)12:14
*** pftbest <[email protected]> has joined #litex12:15
*** pftbest <[email protected]> has quit IRC (Remote host closed the connection)12:15
*** pftbest <[email protected]> has joined #litex12:15
_florent_tnt: I see, i'm a big fan of your optimizations. In LiteX the approach is a indeed bit different, we first try to favor simplicity/portability and then optimize when really useful/required (and we have the opportunity/budget :)) This is sometimes less optimal (but should still not be too bad) but gives a higher level of abstractions and can simplify creating more complex systems12:21
_florent_tnt: is it the hardware you are going to use? https://wiki.analog.com/resources/eval/user-guides/adrv9009-zu11eg12:28
tpbTitle: ADRV9009-ZU11EG RF System-on-Module [Analog Devices Wiki] (at wiki.analog.com)12:28
tnt_florent_: yup12:29
tntplugged into a ADRV2CRR-FMC12:30
_florent_nice hardware with nice capabilities (and also a bit expensive :))12:40
tntyeah, just a tiny bit. I don't even have one, just a shell to a box that has one in it.12:42
gatecatmaybe the few of us that scored the 5G boards on eBay will have a cheap fun JESD204 platform13:20
gatecatif we find out the pinout13:20
gatecat(https://twitter.com/rombik_su/status/1432632453156454402?s=20)13:21
acathlaDon't you still need an expensive licence to program big FPGAs? 13:39
tntYes13:40
_florent_gatecat: That's indeed a good deal! I was going to also buy one when I saw the tweet yesterday just to study it, but too late... 14:01
gatecatyeah they went quickly :/14:02
Wolf0acathla: If you need one, DM me :P14:52
Wolf0(for linux)14:52
*** alainlou <[email protected]> has joined #litex14:52
Wolf0also, the Alveo ones don't require a license14:59
Wolf0fun fact14:59
promach[m]<_florent_> "fine delay was done using..." <- _florent_: for litedram on spartan-6, how do you exactly bypass single clock restriction for IDDR/ODDR ?15:13
promach[m]https://www.xilinx.com/support/documentation/user_guides/ug381.pdf#page=5115:13
*** FabM <FabM!~FabM@armadeus/team/FabM> has quit IRC (Quit: Leaving)15:30
acathlaWolf0, thank you, may be one day. I have some virtex4 on PCI boards and some virtex5 unsoldered (I'll probably never build anything with them).15:31
*** Martoni42 <Martoni42!~Martoni@2a03:d604:103:600:2ad2:44ff:fe23:2f72> has joined #litex17:29
kbeckmannsorry if this is covered in the documentation (couldn't find it) but what is the proper way to partition and format an sdcard so it works well with litesdcard and the code included in the bios?18:57
*** TMM_ <[email protected]> has quit IRC (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.)18:58
*** TMM_ <[email protected]> has joined #litex18:58
*** alainlou <[email protected]> has quit IRC (Quit: Client closed)18:58
*** alainlou <[email protected]> has joined #litex19:00
*** Martoni42 <Martoni42!~Martoni@2a03:d604:103:600:2ad2:44ff:fe23:2f72> has quit IRC (Ping timeout: 256 seconds)19:11
kbeckmannah i think i got it. msdos partition table, classic fat32 @ 1MB offset, then mkfs.vfat -F32 /dev/... seems to work.19:17
_florent_kbeckmann: FAT/FAT32 will work19:17
kbeckmannthanks19:17
_florent_https://github.com/enjoy-digital/litex/wiki/Load-Application-Code-To-CPU#sdcardsata-boot19:18
_florent_If you have troubles with the SD mode, you can switch back to SPI mode19:18
_florent_https://github.com/enjoy-digital/litex/blob/master/litex/soc/integration/soc.py#L153119:19
kbeckmanngood to know. i am having some trouble actually and had to comment out SDCARD_CMD18_SUPPORT and SDCARD_CMD25_SUPPORT, and also lower the frequency (might be because i use a PMOD)19:19
kbeckmannboot.json is so useful! it lets me load a big rom into SDRAM and boot my application from my second BRAM location. really cool stuff :)19:26
_florent_which PMOD are you using?19:29
kbeckmannthe digilent one, it doesn't have any level shifters.19:31
_florent_ok, I also have this one, it was fine on Arty with the default LiteX settings. I could do more tests on an ECP519:35
*** michalsieron <[email protected]> has quit IRC (Ping timeout: 252 seconds)19:35
kbeckmannit could also be my fpga board that has a bad ground plane or so19:43
kbeckmannactually now that i lowered the frequency by a lot, i don't need to disable CMD18/CMD2519:43
*** bluecmd <bluecmd!~bluecmd@2a07:5cc0:6:0:f72:821a:dfd2:921e> has joined #litex19:45
*** michalsieron <[email protected]> has joined #litex19:52
*** acathla <[email protected]> has quit IRC (Ping timeout: 248 seconds)20:00
bluecmdHello! I have an itch to reboot a gigantic FPGA project I started a few years back but use LiteX to build it this time to not be so bound to one vendor and use the nice IPs that it seem to have. The board I have is a DE5-Net so that means I would have to help contribute board files etc. Does this sound like a plan? Any gotchas with using LiteX with20:01
bluecmdStratix V?20:01
bluecmdThe project is https://github.com/bluecmd/fejkon - basically a thing that shoves Fibre Channel packets to a host over PCIe.20:01
bluecmdbrb, trying to join via matrix instead20:09
*** bluecmd <bluecmd!~bluecmd@2a07:5cc0:6:0:f72:821a:dfd2:921e> has quit IRC (Quit: Client closed)20:11
*** bluecmd <bluecmd!~bluecmdka@2001:470:69fc:105::1d44> has joined #litex20:11
*** bluecmd_ <bluecmd_!~bluecmd_@2a07:5cc0:6:0:f72:821a:dfd2:921e> has joined #litex20:16
*** bluecmd <bluecmd!~bluecmdka@2001:470:69fc:105::1d44> has quit IRC (Quit: Reconnecting)20:25
*** bluecmd <bluecmd!~bluecmd@2001:470:69fc:105::1d44> has joined #litex20:26
_florent_Hi bluecmd, interesting projet. LiteX will work on Stratix V but the cores clearly have better support for now on Xilinx/Lattice devices (just because most of the current projects uses Xilinx/Lattice devices).20:36
_florent_LitePCIe can probably be adapted for Stratix V without too much troubles. I ported it to Cyclone V a few years ago as an experiment and it was not too much work.20:37
bluecmdI also have a Kintex 7 board I could use I suppose, it's not as fancy if that's a huge deal20:37
bluecmdYeah, I looked at the Cyclone V PCIe and it looked pretty nice - requires some manual generation of the hard IP stuff I guess but that's acceptable20:38
_florent_For the Fibre Channel/SFP, the SerDes code is here: https://github.com/enjoy-digital/liteiclink/tree/master/liteiclink/serdes20:38
_florent_and the idea is to reuse this SerDes code for the different protocol (ex USB3-PIPE, JESD204B, etc...)20:38
_florent_but LiteICLink does not have support for Intel devices currently, so wrappers around the transceivers would have to be done20:39
_florent_or you could reuse your existing code20:39
_florent_but once this low level work is done, the framework can offer some nice flexibility and portability between FPGA boards20:40
bluecmdYeah, indeed - it would be great if other people can use my work as well20:41
bluecmdright now it's a bit monolithic, the fejkon project that is20:41
_florent_bluecmd: sorry it's late here, happy to discuss more another day20:43
*** michalsieron <[email protected]> has quit IRC (Ping timeout: 244 seconds)20:52
bluecmdofc :) Thanks!20:56
*** bluecmd_ <bluecmd_!~bluecmd_@2a07:5cc0:6:0:f72:821a:dfd2:921e> has quit IRC (Quit: Client closed)20:57
*** alainlou <[email protected]> has quit IRC (Quit: Client closed)22:18
*** alainlou <[email protected]> has joined #litex22:19
*** cr1901 <cr1901!~William@2601:8d:8600:911:cf1:8507:720a:c17> has quit IRC (Read error: Connection reset by peer)22:26
*** acathla <[email protected]> has joined #litex22:53
*** somlo <[email protected]> has quit IRC (Ping timeout: 248 seconds)23:13
*** pftbest <[email protected]> has quit IRC (Remote host closed the connection)23:15
*** somlo <[email protected]> has joined #litex23:18
*** alainlou <[email protected]> has quit IRC (Quit: Client closed)23:32
*** alainlou <[email protected]> has joined #litex23:32
*** pftbest <[email protected]> has joined #litex23:35
*** pftbest <[email protected]> has quit IRC (Ping timeout: 252 seconds)23:39

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