*** tpb has joined #timvideos | 00:00 | |
*** phlipped has quit IRC | 00:09 | |
shorne | CarlFK: I was out yesterday | 00:21 |
---|---|---|
shorne | checking ... | 00:21 |
shorne | CarlFK: its saying, assert len(bios_data) < make.BIOS_SIZE | 00:23 |
CarlFK | shorne: mithro came up with a good plan for the include <> and I may have that working: | 00:23 |
shorne | how big is the build/arty_net_or1k//software/firmware/firmware.fbi that got generated | 00:23 |
CarlFK | CFLAGS=" \ | 00:24 |
CarlFK | -I$TOP_DIR/third_party/litex/litex/soc/software/include" \ | 00:24 |
shorne | I think its saying to bigger than the BIOS_SIZE i.e. wont fit on the board | 00:24 |
shorne | CarlFK: right, using -I will work, but since the hw/common.h was in qemu, the qemu way is to use -iquote | 00:25 |
CarlFK | shorne: but mithro said it will break something else | 00:25 |
shorne | anyway... we need a solution for including/overriding the csr.h files | 00:25 |
shorne | yeah, I think it will be OK for now to get it working | 00:26 |
shorne | I think we need something else when upstreaming... just thinking about that part | 00:26 |
CarlFK | https://mail.google.com/mail/u/0/#inbox/FMfcgxvzKQrNLcDBjbpVSCXlMFSWjnvd | 00:29 |
tpb | Title: Gmail (at mail.google.com) | 00:29 |
CarlFK | derp | 00:29 |
CarlFK | https://github.com/timvideos/litex-buildenv/issues/49 | 00:29 |
tpb | Title: qemu complier flags changed, #include needs to be "" · Issue #49 · timvideos/litex-buildenv · GitHub (at github.com) | 00:29 |
shorne | I see | 00:37 |
CarlFK | shorne: back on filesize: 75556 Sep 6 17:00 build/arty_net_or1k//software/firmware/firmware.fbi | 01:07 |
*** futarisIRCcloud has joined #timvideos | 01:41 | |
futarisIRCcloud | https://github.com/benfred/py-spy looks pretty nifty | 01:42 |
tpb | Title: GitHub - benfred/py-spy: Sampling profiler for Python programs (at github.com) | 01:42 |
*** rohitksingh has joined #timvideos | 02:07 | |
*** rohitksingh has quit IRC | 02:13 | |
*** rohitksingh has joined #timvideos | 02:13 | |
mithro | CarlFK: I feel dejavue with https://github.com/timvideos/litex-buildenv/pull/47/files -- I'm sure I did exactly that change previously... | 02:18 |
tpb | Title: implement QEMU_REMOTE and QEMU_BRANCH. and CPU=or1k by CarlFK · Pull Request #47 · timvideos/litex-buildenv · GitHub (at github.com) | 02:18 |
CarlFK | mithro: welp, I tripped all over it trying to set vars to use shorne's repo/branch | 02:19 |
*** rohitksingh has quit IRC | 02:35 | |
*** rohitksingh has joined #timvideos | 02:38 | |
*** rohitksingh has joined #timvideos | 02:38 | |
*** rohitksingh has quit IRC | 03:02 | |
shorne | CarlFK: mithro: fwiw the change looks good to me | 03:07 |
mithro | CarlFK: that git pull is bad | 03:09 |
CarlFK | mithro: I was wondering about that | 03:09 |
mithro | Back to writing emails for me... | 03:16 |
*** froztbyte has quit IRC | 03:23 | |
*** froztbyte has joined #timvideos | 03:30 | |
*** froztbyte has joined #timvideos | 03:30 | |
*** rohitksingh_work has joined #timvideos | 03:39 | |
*** sc00bz1 has joined #timvideos | 04:17 | |
*** sc00bz has quit IRC | 04:20 | |
shorne | ah, I missed, yes fetch, since we checkout later | 05:47 |
*** sc00bz1 is now known as Sc00bz | 05:57 | |
xobs | Hooray, just submitted a PR for CSR support in openocd-vexriscv. Now it's /actually/ possible to do things like investigate whether IRQs are enabled. | 06:03 |
xobs | Relatedly: rasm2 (from radare2) is a fantastic resource. | 06:04 |
*** rqou has quit IRC | 06:09 | |
*** rqou has joined #timvideos | 06:10 | |
cr1901_modern | When it works, which is not usually, r2 is a good tool | 07:17 |
cr1901_modern | tinyfpga: --program-image just disables the checks that you're within program/user data region, _except_ for the bootloader check, correct? | 07:28 |
tinyfpga | cr1901_modern: it makes sure your image is contained within the beginning of the user image area and the end of the user data area | 07:30 |
tinyfpga | cr1901_modern: it should complain if you try to program outside that area | 07:31 |
cr1901_modern | excellent. Then I'll update migens tinyprog class as follows: | 07:31 |
cr1901_modern | If addr passed in is None, use "-p" if user_data=False, "-u" if user_data=True | 07:31 |
cr1901_modern | otherwise addr is not None, so use "--program-image" | 07:32 |
cr1901_modern | does that sound reasonable? | 07:32 |
cr1901_modern | tinyfpga: ^^ | 07:33 |
*** rohitksingh_wor1 has joined #timvideos | 07:41 | |
*** rohitksingh_work has quit IRC | 07:42 | |
tinyfpga | cr1901_modern: yeah, that sounds reasonable...I could take a look at it when you submit the pull request or you have it pushed to your GitHub repo | 07:54 |
cr1901_modern | tinyfpga: I'll push it in 2 mins literally :P | 07:58 |
cr1901_modern | I think | 07:58 |
cr1901_modern | Make that 5 minutes while Atom loads itself from swap | 07:59 |
cr1901_modern | tinyfpga: https://github.com/cr1901/litex/commit/c812321a937c95abed5b233619d8043fcae7c1a5 | 08:12 |
tpb | Title: lattice/programmer: Use --program-image option with tinyprog if addre… · cr1901/litex@c812321 · GitHub (at github.com) | 08:12 |
cr1901_modern | Or rather, here: https://github.com/cr1901/litex/blob/c812321a937c95abed5b233619d8043fcae7c1a5/litex/build/lattice/programmer.py#L64-L87 | 08:12 |
tpb | Title: litex/programmer.py at c812321a937c95abed5b233619d8043fcae7c1a5 · cr1901/litex · GitHub (at github.com) | 08:12 |
*** rohitksingh_work has joined #timvideos | 08:27 | |
*** swalladge has quit IRC | 08:27 | |
*** swalladge has joined #timvideos | 08:28 | |
*** rohitksingh_wor1 has quit IRC | 08:29 | |
*** futarisIRCcloud has quit IRC | 09:11 | |
*** CarlFK has quit IRC | 09:31 | |
xobs | In litex, how do I request a connector? | 09:54 |
xobs | I'm trying to map pins on the Arti "pmoda" to a GPIO block, but platform.request("pmoda", 0) gives me a "Resource not found" error. | 09:54 |
xobs | I've also tried platform.request("V14") to e.g. get one random pin from pmodc. | 10:29 |
xobs | Hmm... I'm getting somewhere. I can try platform.constraint_manager.connector_manager.resolve_identifiers(["pmoda:0"]) and get an error that "G13 ... is not a Migen value", so I'm at least able to go from a connector name to a pad name. | 10:39 |
cr1901_modern | xobs: plat.add_extension([("foo", 0, Pins("CONNECTOR_NAME:0 CONNECTOR_ NAME:1"))]) | 10:41 |
cr1901_modern | then plat.request("foo") | 10:41 |
xobs | cr1901_modern: These pins are already part of _connectors[]. Do I have to add them again? | 10:42 |
xobs | Or I suppose I could pull the pads out by iterating through platform.constraint_manager.connector_manager.resolve_identifiers("pmoda:X") and building them into a string, then passing them to platform.add_extension(). | 10:43 |
cr1901_modern | xobs: No, the syntax "CONNECTOR_NAME:[0-9]*" within Pins() constructor is reserved precisely so you don't need to add the pins again | 10:43 |
cr1901_modern | Or do I misunderstand what you're asking? | 10:44 |
xobs | Ohh, so I need do: platform.add_extension([("pmoda", 0, Pins("pmoda:0 pmoda:1 pmoda:2 pmoda:3 pmoda:4 pmoda:5 pmoda:6 pmoda:7"))]) before I do platform.request("foo")? | 10:44 |
cr1901_modern | yes | 10:44 |
cr1901_modern | Grep for "my_i2c_device" in my blog post for another example: https://www.wdj-consulting.com/blog/migen-port.html | 10:45 |
tpb | Title: WDJ - migen-port (at www.wdj-consulting.com) | 10:45 |
cr1901_modern | xobs: a PMOD helper library for migen/litex (miconn) was in my plans to make it easier to attach PMODs, but b/c I haven't figured out how to clone myself I haven't gotten around to it | 10:46 |
xobs | I see, thanks. Now I'm adding all of those pins into a single `pmod` connector, and it seems to be doing the right thing. | 11:02 |
xobs | I have to add another parameter IOStandard("LVCMOS33"), because on Arty it's on the same bank as the Ethernet, at it appears to default to the 1.5V domain otherwise. | 11:25 |
cr1901_modern | right I omitted that, sorry. That works too. But why does it default to 1.5V? | 11:29 |
*** Kripton has quit IRC | 11:29 | |
*** Kripton has joined #timvideos | 11:30 | |
xobs | I'm not sure. Maybe it just picks a random domain? | 11:30 |
cr1901_modern | is Ethernet 1.5V domain? | 11:30 |
cr1901_modern | I thought 100MB Ethernet used 3.3V... | 11:31 |
* cr1901_modern doesn't actually know for sure | 11:31 | |
xobs | Ethernet is in the 3.3V domain. Maybe 1.5V is DDR? | 11:31 |
cr1901_modern | Mainly asking b/c you said: "because on Arty it's on the same bank as the Ethernet, at it appears to default to the 1.5V domain otherwise." | 11:32 |
cr1901_modern | And b/c I went to bed at 9 and woke up at 12, I'm inferring a cause and effect relationship | 11:32 |
cr1901_modern | between Ethernet and 1.5V | 11:32 |
xobs | I think the error is that it's defaulting to 1.5V, but PMODA:0 and one of the Ethernet pins share an IO bank, and the Ethernet pin is at 3.3V, hence the error. | 11:33 |
cr1901_modern | ahhh | 11:33 |
cr1901_modern | that sounds logical | 11:33 |
cr1901_modern | in any case yea, adding IOStandard works just fine. I omitted it for the sake of keeping the example minimal :) | 11:34 |
cr1901_modern | Ideally I would implement that PMOD library | 11:34 |
cr1901_modern | and ask ppl to help me | 11:34 |
cr1901_modern | xobs: Which PMOD, out of curiosity | 11:50 |
xobs | All of them. It gave 0, 16, and 24 as examples. | 11:52 |
cr1901_modern | xobs: I meant the actual PMOD module :P | 11:53 |
cr1901_modern | and examples? | 11:53 |
cr1901_modern | what tutorial are you using? | 11:53 |
xobs | Ohhh. No tutorial. I'm trying to import a gpio module into litex so I can access it from Wishbone. | 11:57 |
xobs | I can tell you about it more later. I just left the office. | 11:57 |
*** CarlFK has joined #timvideos | 12:03 | |
*** ChanServ sets mode: +v CarlFK | 12:03 | |
*** rohitksingh_work has quit IRC | 12:06 | |
*** rohitksingh_wor1 has joined #timvideos | 12:06 | |
*** rohitksingh_work has joined #timvideos | 12:16 | |
*** rohitksingh_wor1 has quit IRC | 12:18 | |
*** rohitksingh_work has quit IRC | 12:35 | |
*** rohitksingh_work has joined #timvideos | 12:37 | |
*** rohitksingh_work has quit IRC | 12:45 | |
*** rohitksingh has joined #timvideos | 13:42 | |
*** rohitksingh has quit IRC | 13:51 | |
xobs | cr1901_modern: I'm doing what lots of others want to do -- an SoC. At the very least, I'll need a GPIO block. Maybe a SPI and I2C block. Then eventually it would be nice to have an IOMUX in front of it all. | 13:54 |
xobs | But for now I'm still getting familiar with litex. Hence doing "simple" projects like integrating a wishbone GPIO block. | 13:55 |
*** tinyfpga has quit IRC | 14:27 | |
shorne | CarlFK: did you fix the 'assert len(bios_data) < make.BIOS_SIZE' failure? | 15:53 |
shorne | I am also getting it, bios is about 34k, but max size allowed is 32k | 15:53 |
CarlFK | shorne: no - do we know what needs to be done? | 15:53 |
shorne | CarlFK: it seems we need to trim some code | 15:54 |
CarlFK | shorne: mine is 75556 Sep 6 17:00 build/arty_net_or1k//software/firmware/firmware.fb | 16:02 |
shorne | -rw-rw-r--. 1 shorne shorne 163300 Sep 7 20:44 build/arty_net_or1k/software/bios/bios.elf | 16:03 |
shorne | -rw-rw-r--. 1 shorne shorne 34288 Sep 7 20:44 build/arty_net_or1k/software/bios/bios.bin | 16:03 |
shorne | this is the bios file that causes the assert failure | 16:03 |
shorne | bine is 34k | 16:03 |
shorne | "mine is 34k" | 16:04 |
shorne | I added some prints to the mkimage.py to understand which file caused the assert failure | 16:04 |
CarlFK | ok, that one is 34288 too | 16:08 |
shorne | hmm, seems like there has been a lot of work on it recently | 16:14 |
shorne | i.e. sdram.o | 16:17 |
*** rohitksingh has joined #timvideos | 16:23 | |
CarlFK | shorne: who did work on it last? | 16:30 |
*** rohitksingh has quit IRC | 16:33 | |
shorne | _florent_: seems to have been working on it | 16:35 |
shorne | _florent_: it seems bios.bin has passed the 32k limit on OpenRISC ^ (Maybe due to new commands or the sdram work?) | 16:36 |
shorne | Can we either, do any refactors to reduce code size, or change the limit of 32k? | 16:36 |
CarlFK | shorne: do you know why the limit is 32k? | 17:50 |
CarlFK | like, is it because something won't work, or trying to manage resources | 17:51 |
CarlFK | what is the verb to describe what we are doing with this qemu code and scripts? migrating, porting, recovering? what is the opposite of bit-rot? | 18:11 |
*** tac-tics has joined #timvideos | 18:39 | |
CarlFK | shorne: is this that? https://github.com/timvideos/litex-buildenv/issues/43 | 18:55 |
tpb | Title: or1k bios is too large to fit in ROM region · Issue #43 · timvideos/litex-buildenv · GitHub (at github.com) | 18:55 |
CarlFK | tac-tics: or1k = Open RISC 1000. thus my .. um.. something. fix all the bugs please thank you. | 18:55 |
tac-tics | indeed | 18:56 |
tac-tics | wat | 18:56 |
CarlFK | mithro: where is the spreadsheet of fpga board survey you wanted filled in? (that I saw now has a nexis-video row) | 19:01 |
*** Kripton has quit IRC | 19:25 | |
*** Kripton has joined #timvideos | 19:26 | |
*** hyadez has quit IRC | 21:26 | |
*** Kripton has quit IRC | 21:44 | |
*** Kripton has joined #timvideos | 21:56 | |
mithro | CarlFK: https://github.com/timvideos/litex-buildenv/wiki/Boards | 23:40 |
tpb | Title: Boards · timvideos/litex-buildenv Wiki · GitHub (at github.com) | 23:40 |
CarlFK | mithro: spreadsheet - google doc. lots of color coded cells | 23:41 |
mithro | CarlFK: Go to that page | 23:42 |
CarlFK | ah that's a link | 23:42 |
CarlFK | mithro: can you .. freeze I think it is called, the first column: "Code" | 23:44 |
CarlFK | so that when I scroll it stays visible | 23:44 |
mithro | CarlFK: Hrm, it's already frozen in the edit view | 23:45 |
CarlFK | swell :p | 23:45 |
CarlFK | never mind, not that importatn | 23:45 |
CarlFK | nexys_video has Artix 7 - should the lca linux build scripts work? | 23:46 |
mithro | CarlFK: I added an "Edit" link | 23:46 |
CarlFK | mithro: weird. I was going to ask to freeze the column headers too, but yeah, they are in edit mode. someone should log an issue somewhere :p | 23:48 |
mithro | CarlFK: I think it's because I linked to the "published" version... | 23:48 |
mithro | CarlFK: Yes, the nexys_video should work with the Linux stuff | 23:48 |
CarlFK | mithro: tac-tics has a nexys_video and said "what should I do?" so I am trying to give him something to do. | 23:49 |
mithro | CarlFK: I thought he had a Nexys 4 DDR? | 23:49 |
CarlFK | tac-tics: A) what do you have? and B) did you download the 20+ gig of tarball? | 23:50 |
mithro | cr1901_modern: How is the ice40 SoC going? | 23:51 |
CarlFK | mithro: i'm blocked testing the PR, I think because of https://github.com/timvideos/litex-buildenv/issues/43 | 23:51 |
tpb | Title: or1k bios is too large to fit in ROM region · Issue #43 · timvideos/litex-buildenv · GitHub (at github.com) | 23:51 |
mithro | CarlFK: which platform are you building for? | 23:52 |
CarlFK | mithro: well... prompt says: (LX P=arty C=or1k) but I think I am trying to build qemu | 23:54 |
mithro | CarlFK: The line you need to fix is https://github.com/timvideos/litex-buildenv/blob/master/targets/arty/net.py#L31 then? | 23:54 |
tpb | Title: litex-buildenv/net.py at master · timvideos/litex-buildenv · GitHub (at github.com) | 23:54 |
Generated by irclog2html.py 2.13.1 by Marius Gedminas - find it at mg.pov.lt!