*** tpb has joined #timvideos | 00:00 | |
xobs | mithro: I would expect that yes. | 00:06 |
---|---|---|
xobs | I know not all devices implement all commands, so I read as many as I can find. | 00:09 |
mithro | xobs: https://git.xobs.io/xobs/fomu-flash/issues/4 | 00:09 |
tpb | Title: #4 - Support Adesto flash - Gitea: Git with a cup of tea (at git.xobs.io) | 00:09 |
mithro | xobs: It does look like the device should support 0x02 write command? https://github.com/tinyfpga/TinyFPGA-Bootloader/blob/master/programmer/tinyprog/__init__.py#L357 | 00:11 |
tpb | Title: TinyFPGA-Bootloader/__init__.py at master · tinyfpga/TinyFPGA-Bootloader · GitHub (at github.com) | 00:11 |
mithro | xobs: The current behaviour I see is https://git.xobs.io/xobs/fomu-flash/issues/4#issuecomment-20 | 00:12 |
tpb | Title: #4 - Support Adesto flash - Gitea: Git with a cup of tea (at git.xobs.io) | 00:12 |
mithro | xobs: Would be first good to know if I'm using it right :-P | 00:14 |
CarlFK | mithro: can you either accept my PR as is, or reply to my questions about: grep 'timvideos/litex-buildenv|timvideos/HDMI2USB-litex-firmware' | 00:15 |
CarlFK | mithro: and maybe some #comments about why it is grepping remote's would be nice so I have a better idea what it is doing | 00:17 |
mithro | CarlFK: It's trying to figure out what is the latest revision in your tree that is also upstream on the builder | 00:18 |
mithro | CarlFK: So, actually it should only be looking for timvideos/HDMI2USB-litex-firmware as that repo is the only one which pushes to the prebuilt repo | 00:19 |
CarlFK | mithro: then it should not be grepping "git remote", right? | 00:20 |
mithro | CarlFK: it needs to find out what the local name is for the upstream repo? | 00:22 |
*** samsagaz has quit IRC | 00:23 | |
CarlFK | mithro: I don't get it. https://github.com/timvideos/litex-buildenv/wiki/HowTo-FuPy-on-a-Digilent-Arty-A7#download-the-build-environment has: | 00:37 |
tpb | Title: HowTo FuPy on a Digilent Arty A7 · timvideos/litex-buildenv Wiki · GitHub (at github.com) | 00:37 |
CarlFK | git clone https://github.com/timvideos/litex-buildenv.git | 00:37 |
tpb | Title: GitHub - timvideos/litex-buildenv: An environment for building LiteX based FPGA designs. Makes it easy to get everything you need! (at github.com) | 00:37 |
CarlFK | cd ... ; ./scripts/download-env.sh | 00:37 |
CarlFK | why would "git remote" show HDMI2USB-litex-firmware ? | 00:38 |
mithro | CarlFK: litex-buildenv and HDMI2USB-litex-firmware actually have the same contents | 00:38 |
CarlFK | mithro: im still lost. /litex-buildenv$ git remote -v | 00:42 |
CarlFK | originhttps://github.com/timvideos/litex-buildenv.git (fetch) | 00:42 |
CarlFK | originhttps://github.com/timvideos/litex-buildenv.git (push) | 00:42 |
tpb | Title: GitHub - timvideos/litex-buildenv: An environment for building LiteX based FPGA designs. Makes it easy to get everything you need! (at github.com) | 00:42 |
tpb | Title: GitHub - timvideos/litex-buildenv: An environment for building LiteX based FPGA designs. Makes it easy to get everything you need! (at github.com) | 00:42 |
CarlFK | no HDMI2USB-litex-firmware | 00:42 |
mithro | CarlFK: Sure - something should do a "git remoate add tv-h2u https://github.com/timvideos/HDMI2USB-litex-firmware.git" | 01:00 |
CarlFK | mithro: how about for now have the HowTo-FuPy use my repo: git clone repo https://github.com/CarlFK/litex-buildenv/ | 01:03 |
tpb | Title: GitHub - CarlFK/litex-buildenv: An environment for building LiteX based FPGA designs. Makes it easy to get everything you need! (at github.com) | 01:03 |
mithro | CarlFK: ? | 01:07 |
CarlFK | mithro: this section https://github.com/timvideos/litex-buildenv/wiki/HowTo-FuPy-on-a-Digilent-Arty-A7#download-the-build-environment | 01:11 |
tpb | Title: HowTo FuPy on a Digilent Arty A7 · timvideos/litex-buildenv Wiki · GitHub (at github.com) | 01:11 |
CarlFK | - git clone https://github.com/timvideos/litex-buildenv.git | 01:11 |
tpb | Title: GitHub - timvideos/litex-buildenv: An environment for building LiteX based FPGA designs. Makes it easy to get everything you need! (at github.com) | 01:11 |
CarlFK | + git clone https://github.com/CarlFK/litex-buildenv/ | 01:11 |
tpb | Title: GitHub - CarlFK/litex-buildenv: An environment for building LiteX based FPGA designs. Makes it easy to get everything you need! (at github.com) | 01:11 |
mithro | CarlFK: change it to "git clone https://github.com/timvideos/HDMI2USB-litex-firmware.git" if you want to use the prebuilt firmware for now | 01:13 |
mithro | xobs: https://docs.google.com/drawings/d/1jr1GA0f9aSGsO-cZbMaKLTKsMyf7a11hyPqtgNesKKI/edit | 01:14 |
tpb | Title: valentyusb Endpoint FSM - Google Drawings (at docs.google.com) | 01:14 |
mithro | xobs: https://docs.google.com/drawings/d/1olpdWXglPGzJdW_R1DwWviBumlCetyuSZjl-luO_Xe8/edit | 01:15 |
tpb | Title: valentyusb - Parts - Google Drawings (at docs.google.com) | 01:15 |
mithro | tinyfpga: ping? | 01:16 |
CarlFK | mithro: that only gets past problem #1. #2 is the 404: svn: E170000: URL 'https://github.com/timvideos/HDMI2USB-firmware-prebuilt/trunk/archive/master/v0.0.4-444-gf271c2a/arty/base/lm32' doesn't exist | 01:30 |
mithro | CarlFK: correct - looks like there isn't any lm32 in https://github.com/timvideos/HDMI2USB-firmware-prebuilt/tree/master/archive/master/v0.0.4-444-gf271c2a/arty/base | 01:31 |
tpb | Title: HDMI2USB-firmware-prebuilt/archive/master/v0.0.4-444-gf271c2a/arty/base at master · timvideos/HDMI2USB-firmware-prebuilt · GitHub (at github.com) | 01:31 |
CarlFK | mithro: I have to run, I'll get back on this in an hour, and for sure tomorrow morning | 01:31 |
mithro | https://travis-ci.org/timvideos/HDMI2USB-litex-firmware/jobs/469620651 | 01:32 |
tpb | Title: Travis CI - Test and Deploy Your Code with Confidence (at travis-ci.org) | 01:32 |
mithro | svn: E160024: MERGE failed | 01:32 |
*** CarlFK has quit IRC | 01:40 | |
mithro | xobs: https://docs.google.com/drawings/d/1srX-CqYGcCHrSrwacdKM-4Ir_ptvMbKja0NggQfmsLM/edit | 02:00 |
tpb | Title: valentyusb Endpoint Bits - Google Drawings (at docs.google.com) | 02:00 |
xobs | mithro: ooh, those are super useful | 02:30 |
*** CarlFK has joined #timvideos | 02:33 | |
*** ChanServ sets mode: +v CarlFK | 02:33 | |
mithro | I'm going to grab dinner | 02:47 |
*** samsagaz has joined #timvideos | 03:17 | |
mithro | back now | 03:20 |
mithro | xobs: Any luck? | 03:20 |
xobs | mithro: got fomu-flash to work, so now I'm working on fixing some quirks. | 03:20 |
mithro | \o/ | 03:21 |
xobs | The Winbond part I'm using requires you send either 50h OR 06h, but most other parts require 06h AND 50h. So I'm adding that now. | 03:21 |
CarlFK | mithro: Gateware downloaded! thank you!!! | 03:23 |
mithro | xobs: Have you been able to talk to the iCE40? | 03:24 |
xobs | mithro: I haven't done that yet on your board, since I'm still qualifying the SPI flash stuff. | 03:25 |
xobs | But you should be able to generate a top.bin file that e.g. does blinky LED and upload it with "fomu-flash -f top.bin" | 03:25 |
CarlFK | wee!!! MicroPython v1.9.4-534-gd2bd404 on 2018-12-18; litex with lm32 | 03:34 |
CarlFK | mithro: how much is 100 fumos? | 03:42 |
mithro | CarlFK: That is a question for xobs | 03:43 |
CarlFK | xobs: : how much is 100 fumos? | 03:43 |
xobs | CarlFK: $1999 | 03:43 |
xobs | Interesting, you're not the first person to call it "Fumo". | 03:44 |
*** rohitksingh_work has joined #timvideos | 03:44 | |
CarlFK | fomu? | 03:45 |
xobs | Fomu! The FPGA version of Tomu! | 04:03 |
CarlFK | you assume I can remember how to spell tomu ;) | 04:15 |
CarlFK | oh wait... wat? | 04:16 |
mithro | xobs: I'm thinking I might bring the Fomu Jig to CCC | 04:52 |
xobs | mithro: okay, that'll be fun to see. | 04:53 |
mithro | I'm going to head out now | 04:55 |
xobs | sounds good. I'm just adding the ability to update security registers. | 04:56 |
mithro | xobs: For the USB firmware you want | 04:56 |
mithro | cd third_party/valentyusb/third_party/tinyusb | 04:56 |
mithro | make -C examples/device/cdc_msc_hid BOARD=valentyusb clean && make -C examples/device/cdc_msc_hid BOARD=valentyusb | 04:56 |
mithro | xobs: then in the top level directory | 04:56 |
mithro | ln -s $PWD/third_party/valentyusb/third_party/tinyusb/examples/device/cdc_msc_hid/build-valentyusb/valentyusb-firmware.bin build/tinyfpga_bx_usb_lm32.lite//software/tinyusb/firmware.bin | 04:56 |
mithro | and export FIRMWARE=tinyusb | 04:57 |
*** CarlFK has quit IRC | 05:34 | |
xobs | mithro: security register stuff should work now. | 05:43 |
xobs | I just added the ability to dump security registers, not save them. | 06:13 |
*** CarlFK has joined #timvideos | 06:52 | |
*** ChanServ sets mode: +v CarlFK | 06:52 | |
xobs | general question: is there any existing litex project that uses icebram to replace the bios without rebuilding everything? | 06:54 |
_florent_ | xobs: i'm not aware of that (but would also be interested :)), maybe mithro or cr1901_modern have tested it | 07:06 |
CarlFK | MicroPython v1.9.4-757-g39eef27 on 2018-12-19; linux version - yay. | 07:26 |
xobs | _florent_: is there an easy way to write random data to rom? my integrated_rom_size is 0x2000, and I'd like to fill it full of random data. | 10:29 |
xobs | woo! good news: I managed to patch the bios without rebuilding anything? | 11:32 |
xobs | bad news: icebram looks like it uses heuristics to figure out which memory blocks to patch, so I had to hack up migen to fill ram with random data. | 11:32 |
*** Kripton has quit IRC | 11:38 | |
*** Kripton has joined #timvideos | 12:00 | |
*** rohitksingh_work has quit IRC | 12:14 | |
_florent_ | xobs: nice, can you share your hack and explain the steps? | 12:47 |
xobs | _florent_: would it be better if I opened an issue? largely, it involves filling the rom with random data. | 12:48 |
xobs | I have a C program I've written that massages things into a format that makes the icestorm tools happy, and I'd like some help porting that to python. | 12:49 |
_florent_ | xobs: an issue is fine yes, thanks | 12:49 |
xobs | https://github.com/enjoy-digital/litex/issues/142 | 13:40 |
tpb | Title: Support patching ICE40 SRAM images · Issue #142 · enjoy-digital/litex · GitHub (at github.com) | 13:40 |
xobs | I had to add byteswapping to get it working on lm32, but it works now! | 13:40 |
_florent_ | thanks | 13:47 |
xobs | mithro: \o/ "New USB device found, idVendor=cafe, idProduct=4001" | 13:47 |
xobs | This is very very good! | 13:48 |
xobs | I'm building a bitstream with a random ROM, then I'm building a USB example from tinyusb and replacing the random BIOS with that image. | 13:49 |
xobs | This way I'm able to quickly iterate on the software without rebuilding the entire bitstream. | 13:49 |
xobs | Furthermore, reloading bitstreams is much faster than reflashing spi. it shows as 0.211s according to "time". | 13:50 |
*** rohitksingh has joined #timvideos | 14:38 | |
xobs | The Fomu campaign is live now: https://www.crowdsupply.com/sutajio-kosagi/fomu/ | 14:43 |
tpb | Title: Fomu | Crowd Supply (at www.crowdsupply.com) | 14:43 |
cr1901_modern | xobs: I'm working on the icebram thing | 16:09 |
xobs | cr1901_modern: cool, what's your approach? | 16:09 |
cr1901_modern | make it a Makefile target that generates a dummy bram image, inject that into make.py using a special FIRMWARE= target to create a base image. Then everytime you just want to reload new firmware, you call "make firmware" and "make reload-bram" or something | 16:12 |
cr1901_modern | xobs: This is for litex-buildenv specificallyt | 16:12 |
xobs | that sounds super useful, and close-ish to what I'm doing. | 16:16 |
xobs | One problem I've run into right now is that I'm not sure how to rebuild e.g. libbase.a without having it start regenerating the bitstream, which re-randomizes the memory block. | 16:16 |
cr1901_modern | Oh I may have to manually modify litex to get this to work | 16:19 |
CarlFK | xobs: Fomu Q: hef: it has no output pins? | 16:19 |
cr1901_modern | I haven't ran into a problem you described, but if I do, I'll force litex to do the right thing lol | 16:19 |
xobs | CarlFK: I was thinking of how to phrase that. Technically no, but you could wire things up to the touchpads. They're not really designed for output. | 16:20 |
cr1901_modern | it doesn't have an LED? | 16:20 |
xobs | I have outputs listed as "One RGB LED" | 16:21 |
cr1901_modern | ahh | 16:21 |
xobs | mithro: good news! I'm getting USB traffic, and I've got my USB Beagle working. I see lots of string descriptors going by. | 16:23 |
CarlFK | xobs: notes for v2 in 2020: loans: without at least one or two decent GPIO my interest is pretty low | 16:24 |
CarlFK | xobs: can the usb lines be hijacked? | 16:25 |
xobs | mithro: I see a packet "80 06 00 06 00 00 0A 00" going by just after it sets the device descriptor. That packet is never acked (which you should do by sending a zero-length DATA packet), which I think is the source of some issues. Anyway, I'll have to look at it more tomorrow. | 16:26 |
xobs | CarlFK: I'm not sure how you'd have a GPIO on something that fits inside a USB port. It's an ongoing challenge. | 16:26 |
cr1901_modern | xobs: Very interesting you got vexriscv minimal to work... I haven't been able to get it to work at all myself. | 16:27 |
xobs | cr1901_modern: I can share more with you tomorrow, if you like. | 16:28 |
xobs | I'm going to head to bed now. Goodnight! | 16:28 |
cr1901_modern | xobs: Sure | 16:28 |
*** rohitksingh has quit IRC | 18:35 | |
*** cr1901_modern has quit IRC | 21:41 | |
*** cr1901_modern has joined #timvideos | 22:40 | |
mithro | xobs: When you get up, I'm interested in understanding your results as I was pretty sure the USB didn't meet timing? | 23:14 |
CarlFK | didn't meet timing - typo? | 23:15 |
mithro | CarlFK: no? | 23:15 |
daveshah | Doesn't meet timing ≠ doesn't work at room temperature on a good chip | 23:15 |
mithro | daveshah: By like 50% | 23:15 |
daveshah | Maybe Vcc is on the high side | 23:16 |
mithro | daveshah: Anyway, I'm interested in understanding the results better | 23:17 |
xobs | mithro: morning | 23:57 |
mithro | xobs: So - how are you building stuff? | 23:58 |
xobs | well, for one thing I had to strip out all but EP0 to get it to fit. the last few commits made the gate size very large. | 23:59 |
xobs | I've also heavily patched libbase to remove all calls to printf() and replaced the crc functions with non-table-based versions. As a result, bios.bin fits in 8kB. | 23:59 |
Generated by irclog2html.py 2.13.1 by Marius Gedminas - find it at mg.pov.lt!