Friday, 2020-06-19

*** tpb has joined #litex00:00
somlo_florent_: re. spi- vs lite- sdcard booting, I added an unconditional return here: https://github.com/enjoy-digital/litex/blob/master/litex/soc/software/bios/boot.c#L58900:11
tpbTitle: litex/boot.c at master · enjoy-digital/litex · GitHub (at github.com)00:11
somlothen I did `mr 0x80000000 0x200` to compare what got loaded from the sdcard via spi- vs lite-00:12
somloand the first 0x200 bytes are the same :)00:12
somloso now I'm back to not knowing why booting with litesdcard hangs at "Liftoff!" whereas booting with spi-sdcard doesn't hang...00:13
somloI actually did have it working with both spi- and lite- before the fatfs switch-over; but now that spi- works with fatfs, litesdcard should too, but doesn't. That's the question currently nagging me...00:15
somlowell, doing a `crc 0x80000000 13126480` gets me different values on the boot.bin blob loaded via SPI (d0505b43) vs. litesdcard (f3aefc83)00:45
somlothat'd be the same boot.bin blob loaded from the same sdcard... So nothing as obvious as consistently swapped bytes... Maybe it's a failed-by-too-much timing problem, I should try at slower Fmax...00:46
*** futarisIRCcloud has quit IRC01:54
mithro@benh_ - I've been meaning to reply to your email but just haven't gotten around to it because of the other stuff happening () --  The include "trick" for having two separate modules can be done a large number of different ways -- I *think* it could just be done with a bunch of consts function pointers and the compiler should be able to optimize away the indirection02:04
*** Skip has quit IRC02:06
benh_mithro: any reason why the if()  would be a problem though ?02:07
benh_I would assume on linux-capable SoCs the cost would be negligible compared to the IO02:07
mithro@benh_ I less worried about the performance and more worried about certain developers complaining about regmap "infecting" the "nice clean MMIO version" -- It becomes much harder to complain if there is no runtime cost02:11
*** Degi has quit IRC02:14
*** Degi has joined #litex02:15
benh_mithro: :-)02:32
benh_mithro: #including C file is usually frowned upon... there are good reasons to occasionally do it but in this case I suspect it won't fly02:33
mithro@benh_ -- I thought I said that I wouldn't suggest we should use that exact implementation -- just something which has the same runtime cost as that -- as I mentioned I'm pretty sure there are multiple ways to make that happen?02:35
mithroI'm not good enough in C to get a const function pointer version close to right when typing directly into an email02:37
benh_mithro: fundamentally, either we have a runtime cost and a single driver, or no runtime cost and two builds of the driver02:43
benh_mithro: now we could build the drivers as some kind of .a and then have two variants provide different accessors and link against it02:44
benh_mithro: but I wouldn't even try to do that with the kernel build system02:44
benh_mithro: my idea for now is to just have the call into the litex code to "map" the csrs and have the  opaque object etc...02:45
benh_mithro: but with no conditionals and no regmap path, just direct mmio *for now*02:45
benh_and when somebody wants to add regmap, it can be done without modifying the drivers02:45
benh_by just updating the map call and the accessors02:45
*** futarisIRCcloud has joined #litex03:02
*** kgugala has quit IRC06:23
keesj_pretty serious stuff being done using nmigen https://harmoninstruments.com/blog/06:24
tpbTitle: Harmon Instruments (at harmoninstruments.com)06:24
*** keesj_ has quit IRC07:02
*** keesj has joined #litex07:02
*** futarisIRCcloud has quit IRC08:32
*** st-gourichon-fid has quit IRC08:56
*** CarlFK has quit IRC09:58
*** CarlFK has joined #litex10:02
*** CarlFK has quit IRC10:20
*** st-gourichon-fid has joined #litex11:21
*** proteusguy has quit IRC11:44
*** CarlFK has joined #litex12:02
benh__florent_: I was wondering ... would it be realistic to run litedram at 128Mhz instead of 100 ? (so about 1Ghz out of the DRAM)12:03
benh_I don't think we would make timing with microwatt at that speed with our current design (we struggle enough at 100) but just curious12:03
benh_(it's a nice round divisor of our architected timebase freq which is 512Mhz)12:04
*** CarlFK has quit IRC12:12
_florent_benh_: IIRC 125MHz is working correctly on Arty/Vexriscv, so 128MHz should also work12:21
_florent_benh: https://hastebin.com/qigoyequhu.rb (there are some timings violations in the SoC, but the DRAM is working)12:36
tpbTitle: hastebin (at hastebin.com)12:36
_florent_somlo: i also want to get current litesdcard version working but i've not been able to look at it yet. From the tests i did, i also had some data corruption.12:44
*** proteusguy has joined #litex12:57
*** st-gourichon-fid has quit IRC12:59
somlo_florent_: just for completenes, after dropping FMax to 60MHz (and passing timing in vivado) I still had data corruption with litesdcard, so it wasn't a side effect of failing timing (by *too* much)13:22
keesjis there some documentation / example somewhere of creating a hello world c file (possibly reusing the software/* libraries (like the bios)13:34
keesjif possible .. I would like to keet it minimal (e.g. include the platform header and .. wire a simple hello world)13:35
*** st-gourichon-fid has joined #litex14:29
*** CarlFK has joined #litex14:38
_florent_keesj: this should be useful: https://github.com/litex-hub/fpga_101/tree/master/lab00415:10
tpbTitle: fpga_101/lab004 at master · litex-hub/fpga_101 · GitHub (at github.com)15:10
*** NickTern has joined #litex15:30
*** daniellimws_ has quit IRC15:32
*** NickTern has quit IRC15:32
*** NickTern has joined #litex15:32
*** daniellimws_ has joined #litex15:32
NickTernHello. Can u  tell me how i can build litehhyperbus core? at the output I will get a Verilog file and roughly speaking I can use it in my design as an ip? recently started studying litex sorry if the question is simple15:32
*** futarisIRCcloud has joined #litex15:33
*** futarisIRCcloud has quit IRC15:33
*** futarisIRCcloud has joined #litex15:33
*** leons has quit IRC15:35
*** xobs has quit IRC15:36
*** CarlFK[m] has quit IRC15:37
*** john_k[m]1 has quit IRC15:38
*** sajattack[m] has quit IRC15:38
*** nrossi has quit IRC15:38
*** david-sawatzke[m has quit IRC15:38
*** disasm[m] has quit IRC15:39
*** bunnie has quit IRC15:39
*** fitzsim has joined #litex15:42
*** NickTern has quit IRC15:55
*** Nicktern has joined #litex16:02
*** CarlFK has quit IRC16:36
*** david-sawatzke[m has joined #litex17:10
*** disasm[m] has joined #litex17:42
*** nrossi has joined #litex17:42
*** sajattack[m] has joined #litex17:42
*** CarlFK[m] has joined #litex17:42
*** xobs has joined #litex17:42
*** john_k[m] has joined #litex17:42
*** leons has joined #litex17:42
*** bunnie has joined #litex17:42
*** CarlFK has joined #litex18:00
*** st-gourichon-fid has quit IRC19:55
*** Skip has joined #litex21:46
*** Skip has quit IRC22:52
*** tpearson-mobile has joined #litex23:33
tpearson-mobilehas the Wishbone 32 bit master to 8 bit slave automatic downconverter received any real testing?23:33
tpearson-mobileso far I'm seeing some really odd behavior out of it, including only ever getting data from the last byte in a 32-bit master bus word23:34
tpearson-mobileI also don't really see a short-circuit if the CPU is doing an 8-bit read, it literally looks like it tries to read 32 bits, one byte at a time, from the slave, then masks off the unwanted bytes?23:35
*** tpearson-mobile has quit IRC23:46
*** awordnot has quit IRC23:58
*** awordnot has joined #litex23:59

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