Wednesday, 2017-12-06

*** tpb has joined #timvideos00:00
FelixViwhich is where we're pulling the firmware code from?00:00
FelixVibut why is the flash boot address flash + gateware + bios?00:01
FelixViisn't bios part of gateware when it's stored in BRAM?00:01
mithroFelixVi: Yes00:02
FelixViso shouldn't I get rid of gateware size as we're counting that twice now?00:02
mithroFelixVi: But we leave a gap in the flash image so that we have a consistent flash layout00:02
FelixVioh, nvm00:03
FelixVinow I get it00:03
FelixVibut then what's the bios size for?00:03
mithroFelixVi: Also makes it easier to switch to a bios from flash at a later date00:04
FelixViI'd upload to 0x200000 and isn't that where we'd start executing?00:04
FelixVioh, so bios_size should be 0 for now - and if there's flash bios that will change00:04
FelixVior i need to upload firmware to 0x200000 + 2000000:05
FelixVithat way, I can just leave space for a flash bios if I want that later on?00:05
FelixViso, if I synthesized this now, I'd upload top.bit with bios to 0x0 and firmware to 0x204E2000:06
FelixVialright, bios is talking with me00:10
FelixViand it's trying to boot from flash00:10
FelixVibut it says flash boot image length is invalid (0x0000000)00:11
mithroFelixVi: Great!00:11
FelixVithanks! This would have taken me weeks00:12
mithroFelixVi: I would upload the firmware to 0x200000 + 2000000:12
FelixViyeah, that's what i did00:12
mithroFelixVi: So, the next thing is to figure out if your flash is working at all00:12
mithroFelixVi: This is where cr1901_modern comes in00:12
FelixViwhere is the flash image length defined?00:12
FelixViif that was correct, we'd know in a sec00:12
FelixVioh, or is it trying to read the length from flash to begin with?00:13
FelixViI suppose I could try to write/read from flash if I knew how it's mapped00:14
FelixViso, at 0x20000000, I just see all zeroes00:16
FelixViand using mw 0x20000000 1 2 3 4 and then reading back with mr 0x20000000 yields all zeroes00:17
FelixViif I'm using the commands correctly, flash is not working00:17
FelixViI don't seem to be able to write to 0x0 either, though00:18
*** sb0_ has quit IRC00:19
FelixVithis seems to be where flashboot fails: https://github.com/m-labs/misoc/blob/master/misoc/software/bios/boot.c#L27600:24
tpbTitle: misoc/boot.c at master · m-labs/misoc · GitHub (at github.com)00:24
FelixViI am not exactly positive on "length = *flashbase++;" and why it's written like that00:27
cr1901_modernmithro/FelixVi: Not available right now, sorry00:30
shorneshenki: I think I got it now, it looks like calling convention issues with syscall(2).00:30
mithroFelixVi: You won't be able to write to the flash00:30
mithroFelixVi: (from the BIOS that is)00:31
FelixViah, that explains that00:31
FelixVicr1901_modern: Do you think you'll be around later today?00:31
FelixViI'm basically trying to figure out if I want to stay at work or drive home00:32
*** sb0_ has joined #timvideos00:33
cr1901_modernFelixVi: By all means, drive home. I have other things to check off my todo list personally00:33
FelixVicr1901_modern: Cool, should I place an issue report about flash or is that the same as letting you know in here?00:34
cr1901_modernFelixVi: I'll take care of that when we diagnose the problem00:34
FelixViwell, I guess I did that already in misoc anyways - but if you think it's worthwhile I can add detail there00:34
cr1901_modernFelixVi: Can you work from home at all?00:34
FelixVicr1901_modern: Yeah, I can be on later tonight if that's helpful00:35
FelixViI just need to take the working saturn board as mine at home is shot - that was a painful lesson00:35
cr1901_modernFelixVi: That would work better if we could continue work when you get home00:36
FelixVior we can continue tomorrow if that works better for you00:36
FelixVialright, I'll take it and let you know when I'm around00:36
cr1901_modernAlright cool00:37
cr1901_modernmithro: Did you ever take a look at my PR for flash updates as-is?00:38
mithrocr1901_modern: No I haven't had a chance -- lots of things to do00:38
cr1901_modernWe agreed to merge it in despite having simulation issues00:38
cr1901_modernmithro: Good, that makes two of us00:38
cr1901_modernNo rush at all00:38
mithrocr1901_modern: Oh, I needed to chat with you about the xmodem support in flterm -- it seems to be causing problems, can we move it behind a flag?00:38
cr1901_modernmithro: Yes00:39
cr1901_modernGo for it00:39
cr1901_modernProb no need for it to be mutually exclusive w/ sfl either00:39
cr1901_modern(it == the flag)00:39
*** FelixVi has quit IRC00:42
*** sb0_ has quit IRC00:42
*** CarlFK has quit IRC00:45
*** felix_ has quit IRC01:11
*** felix_ has joined #timvideos01:11
*** sb0 has joined #timvideos01:40
*** FelixVi has joined #timvideos01:53
FelixVicr1901_modern: k, got everything setup here again - getting "Error: Invalid flash boot image length 0x00000000" again02:04
cr1901_modernFelixVi: Ack, give me a few minutes please02:09
FelixVicr1901_modern: No rush, just wanted to give you a heads up02:09
FelixViI'm looking to switch over to mitex - it doesn't fix misoc but might work out of the box and also seems to be better commented02:10
FelixVi*litex02:10
cr1901_modernI mean, it should work. But I would prefer that your changes are contributed/test on both to avoid divergence.02:11
cr1901_modern(Do as I say, not as I do)02:11
FelixVicr1901_modern: yeah, whatever we get fixed I'll write up as a PR02:12
mithrocr1901_modern: https://gist.github.com/mithro/289c5dce5fd1c4ea2c0d352e1d511d0b02:15
tpbTitle: Prepare an upstream migen/misoc for merging into litex · GitHub (at gist.github.com)02:15
cr1901_modernmithro: Okay, this makes me feel _much_ better. I have no idea how/why it works, but clearly you put thought into it.02:19
mithrocr1901_modern: The aim there is to try and get LiteX / migen+misoc closer together again02:20
cr1901_modernmithro: So my intent was to at the very least make litex PRs for the two platforms I added to migen/misoc since I started my current round of PRs. >>02:21
cr1901_modernif you decide to run this script later, would the end merge of my two PRs be equivalent as if I never bothered sending the PRs at all?02:21
cr1901_modern(and just let your script add the new platforms instead)02:22
cr1901_modernEasier q: Should I just keep making PRs to migen/misoc and let your script handle merging in changes? Or should I make equivalent PRs for each migen/misoc feature I need to get tinyfpga running?02:29
cr1901_modern(Some PRs I made to migen/misoc are irrelevant to litex)02:29
* cr1901_modern is afk for a bit02:38
mithrocr1901_modern: Could you get stuff into LiteX sooner rather than later?02:42
FelixVimithro: is it OK to ask you a question or two about targets in litex? I'm trying to port Saturn to litex so that we can work on that directly02:48
FelixVihere's me trying to add Saturn to litex - what I can't figure out is how to just build the basesoc: https://github.com/FelixVi/HDMI2USB-litex-firmware/commit/c024ee58fd4047986962a90580d601b78273b3d203:02
tpbTitle: Adding Saturn · FelixVi/[email protected] · GitHub (at github.com)03:02
* FelixVi is also back in a little while03:03
mithroFelixVi: export TARGET=base03:06
mithroFelixVi: You don't want lines 207/208 -- https://github.com/FelixVi/HDMI2USB-litex-firmware/commit/c024ee58fd4047986962a90580d601b78273b3d2#diff-47bed5475599814fcc3cdcebe4b02429R20703:11
tpbTitle: Adding Saturn · FelixVi/[email protected] · GitHub (at github.com)03:11
*** rohitksingh_work has joined #timvideos03:38
FelixViNameError: name 'BaseSoc' is not defined04:00
FelixViwhat might this be about?04:00
cr1901_modernIt's BaseSoC* I think04:01
FelixVihmm, it works in mimasv2 but not saturn04:02
cr1901_modernOf course it does ._.04:03
cr1901_modernJust once, I would like _one_ solution I propose these past 2 weeks to be right XD.04:03
FelixViwell, you got more right than me so far ;)04:04
FelixViI'm slowly getting used to misoc/litex though - FWIW04:04
FelixVidoh - I think it's the 'c' which needs to be "C"04:05
FelixVithat's progress - now it complains about the uart phy04:06
FelixVihttps://pastebin.com/4X9Sgmxz04:07
tpbTitle: python3 make.py --platform saturn Traceback (most recent call last): File " - Pastebin.com (at pastebin.com)04:07
FelixVithis is the traceback04:07
FelixViI'll see if I can figure this out - mimasv2 didn't complain about this04:08
* cr1901_modern stares at Felix04:09
cr1901_modern(11:03:16 PM) FelixVi: doh - I think it's the 'c' which needs to be "C"04:09
cr1901_modern(10:59:16 PM) cr1901_modern: It's BaseSoC* I think04:09
cr1901_modern:P04:09
FelixViwell, point is that it works now ;)04:10
*** skay_ has joined #timvideos04:12
cr1901_modernFelixVi: I am not exactly positive on "length = *flashbase++;" and why it's written like that <-- flash image is supposed to embed the length of the image04:13
cr1901_modernas well as a checksum04:13
FelixViI think it takes the length from the first object at the base pointer and increments it by 104:13
FelixVithen takes the crc from there04:14
FelixVibut why it's written like that is a mystery to me04:14
cr1901_modernB/c it works :P04:14
*** skay has quit IRC04:14
*** skay_ is now known as skay04:14
FelixViyou need to know the operator priority to figure out what it does04:14
*** skay is now known as Guest5765304:15
FelixViso IMO writing it in explicit notation makes it easier to read04:15
cr1901_modern++ has low priority. It's one of the last things done04:15
FelixVibut either way, it does not find a valid length, so I assume we're not actually reading from flash :P04:15
cr1901_modernDid you update the flash to use spiflash1x?04:15
FelixViwhen it's on the right yes, but I think on the left it would get resolved before dereferencing04:16
FelixVieither way, the fact that we talk about it means the notation is not readable04:16
FelixViunless the mantra is to minimize lines in the code04:16
cr1901_modern*b++ = *a++ is a common memcpy idiom04:17
cr1901_modernbut that's not really important04:17
FelixViagreed04:17
cr1901_modernI want to know whether you changed the spiflash to use 1x04:17
FelixVispi_flash.SpiFlashSingle is what I use04:18
FelixVibut we get hung up on serial configuration as of now04:18
cr1901_modernplease show me your code04:18
FelixVihold on - is it more convenient for you to work on misoc or litex?04:18
cr1901_modernfocus on litex for now04:19
FelixVihttps://github.com/FelixVi/HDMI2USB-litex-firmware/blob/120c39e8c5c2b16c034e31141ae3bc8d72ba7cf2/targets/saturn/base.py04:19
tpbTitle: HDMI2USB-litex-firmware/base.py at 120c39e8c5c2b16c034e31141ae3bc8d72ba7cf2 · FelixVi/HDMI2USB-litex-firmware · GitHub (at github.com)04:19
FelixViand the traceback as seen above is what I got from this04:20
FelixViI think line 169 is likely the problem04:20
FelixViwell, but it defaults to 115200 in soc_core.py04:22
cr1901_modernI have no idea, I've never seen this error before04:23
FelixViit seems like tx is not assigned04:24
cr1901_modernIt clearly is though, since it's in your platform file04:25
FelixVibut one of the terms in uart.py L85-89 is not recognized as migen statement04:25
FelixViyou should be able to pick up my platform and target and recreate it on your machine04:26
FelixViit wouldn't be unheard of if that's a cygwin issue -.-04:27
FelixVior python 3.6 :)04:27
cr1901_modernOf course you remembered to update the litex provided w/ hdmi2usb. Of course you did.04:28
FelixVieither way, I claim " self.submodules.uart_phy = uart.RS232PHY(platform.request("serial"), clk_freq, uart_baudrate)" has all the right arguments04:28
cr1901_modernIt would be too easy if you forgot04:28
FelixVior does litex not like fractional clk_freq?04:28
cr1901_modernNo! All of this stuff has worked before! Just not when you use it ._. I'm sorry, but it's driving me nuts lmao04:28
FelixVi-.-04:28
FelixViI did not update litex04:29
FelixVijust changed the tracer b/c the old version is python 3.6 incompatible04:29
FelixVibut that is fixed in my litex repo04:29
cr1901_modernRight, that was my point.04:29
FelixViah OK, I've done that04:29
FelixViI'm war past the auto CSR issue04:29
FelixVi*way04:30
cr1901_modern"(11:24:37 PM) FelixVi: you should be able to pick up my platform and target and recreate it on your machine" It is currently inconvenient to duplicate your setup04:34
FelixVioh, I mean in your environment04:34
FelixViyou should just need the target and platform, right?04:34
FelixViif I disable uart, I get another error complaining about another signal not being a migen value04:37
cr1901_modernFelix In RS232PHYTX, could you put a "print(type(pads.tx.eq(0))" before the offending error?04:37
FelixViso I think the problem is in my environment somewhere04:37
FelixVi<class 'migen.fhdl.structure._Assign'>04:39
FelixVidoes litex rely on a present migen installation?04:43
cr1901_modernNo04:44
FelixViwhy do we have a migen object then?04:44
cr1901_modernBecause you must've imported it from somewhere04:44
FelixVishouldn't this be litex.fhdl04:45
cr1901_modernhttps://github.com/FelixVi/HDMI2USB-litex-firmware/blob/120c39e8c5c2b16c034e31141ae3bc8d72ba7cf2/platforms/saturn.py#L1-L304:45
tpbTitle: HDMI2USB-litex-firmware/saturn.py at 120c39e8c5c2b16c034e31141ae3bc8d72ba7cf2 · FelixVi/HDMI2USB-litex-firmware · GitHub (at github.com)04:45
cr1901_modernDon't mix migen and litex like that.04:46
FelixViyeah, just found it04:47
cr1901_modernEventually Subsignals will "resolve to" something that can be used in a migen.fhdl._Statement or litex.fhdl._Statement04:47
FelixVinow it doesn't know Pins?!?04:47
cr1901_modernhttps://github.com/FelixVi/litex/blob/7df6c9110da7f43f8555539074d9314b68d4687d/litex/build/generic_platform.py#L1404:48
tpbTitle: litex/generic_platform.py at 7df6c9110da7f43f8555539074d9314b68d4687d · FelixVi/litex · GitHub (at github.com)04:48
cr1901_modernI really should stop hiding the fact that _I'm_ annoyed. Why. Are. The. Errors. Cascading?!04:50
FelixVihttps://github.com/FelixVi/HDMI2USB-litex-firmware/commit/c024ee58fd4047986962a90580d601b78273b3d2#diff-47bed5475599814fcc3cdcebe4b02429R10304:50
tpbTitle: Adding Saturn · FelixVi/[email protected] · GitHub (at github.com)04:50
FelixVithis is what it doesn't like04:50
FelixViadding a reset pin as extension04:50
cr1901_modernYou need to import litex.build.generic_platform into base.py04:51
cr1901_modernI don't see it04:51
FelixVik, it builds04:54
cr1901_modernGood. Now commit that. And we can work from there04:55
FelixViit doesn't find a platform definition in the firmware makefile04:56
cr1901_modernAdd it? :)04:57
FelixVihttps://github.com/FelixVi/HDMI2USB-litex-firmware/blob/master/firmware/Makefile#L504:57
tpbTitle: HDMI2USB-litex-firmware/Makefile at master · FelixVi/HDMI2USB-litex-firmware · GitHub (at github.com)04:57
FelixVithat's just export right?04:57
cr1901_modernyes, ideally what you're supposed to do is run a shell script provided w/ hdmi2usb04:58
cr1901_modernbut I never actually do that04:58
cr1901_modernPLATFORM=saturn TARGET=base CPU=lm32 should work04:58
xfxfwhoa, you support building for sega saturns now? :P04:59
cr1901_modernYes, we decided to create a new Sega Saturn soft core using the j-core CPU04:59
cr1901_modernAnd then add HDMIUSB functionality to our PCB prototype for marketing purposes04:59
cr1901_modern(I wish)04:59
FelixVicouldn't we use hdmiusb to emulate a sega genesis and play some sonic?05:00
FelixVibut let's tackle that tomorrow05:00
cr1901_modernSure, but I wouldn't trust aa 50MHz core to emulate a 68k reliably05:01
cr1901_modernfast, accurate, pick one05:01
FelixVihttps://pastebin.com/rVUg4LuJ05:01
tpbTitle: python3 make.py --platform saturn --cpu lm32 --target base (at pastebin.com)05:01
cr1901_modernnever seen that one either05:03
cr1901_modernin fact I have no idea what that file is05:03
FelixVipretty sure that's cygwin having an issue with bash files05:03
cr1901_modernI'll check05:04
FelixVimy best guess is that some package is missing05:04
cr1901_modernmithro: When all's said and done, might as well add Saturn to HDMI2USB as a permanent target. It doesn't have I/O built-in but there are definitely cheap PMODs to add HDMI05:04
FelixVicr1901_modern: I literally just cut a HDMI cable cable and retrofit it with molex headers - works fine on my TFT05:05
cr1901_modernFelixVi: do "less firmware/hdmi_in.sh" is it in DOS format?05:08
cr1901_modern(Yes, yes it is most likely; I get the same error in Cygwin)05:09
cr1901_modernrun dos2unix -i firmware/hdmi_in.sh and try again05:09
FelixVii tried to remove bom05:09
cr1901_modernPlease don't do that.05:09
FelixVik, it's reset05:10
cr1901_modernI strongly suspect this indeed is cygwin choking on line endings, so change the line endings to Unix05:10
FelixVithis is just unbelievable05:11
FelixVithanks for staying with it05:11
FelixViit says 49 0 0 no_bom test *filename*05:12
cr1901_modernthe hell?05:12
cr1901_modernwhat are you viewing it in?05:12
FelixViit has CR LF line endings05:12
FelixVishould I flip it to CR only?05:13
cr1901_modernYes, that is why I said run dos2unix on it05:13
cr1901_modern"49 0 0 no_bom test *filename*" Where did this output come from?05:13
FelixViI did, but it still had CR LF05:13
FelixVifrom dos2unix05:13
cr1901_moderndos2unix -i (for in place)05:14
cr1901_modernUmmm, I apologize05:14
cr1901_modernthat's wrong05:14
cr1901_modern"dos2unix firmware/hdmi_in.sh" will do in-place05:15
cr1901_modernThat was totally my fault05:15
cr1901_modern"-i" is "info" not "in-place"05:15
FelixVihttps://pastebin.com/munDB5G005:16
tpbTitle: python3 make.py --platform saturn --cpu lm32 --target base (at pastebin.com)05:16
FelixViyeah, I used my editor to change line endings with the same result05:16
FelixVithat's actually not cygwin, but git under windows05:16
FelixVione can change that when git is installed and you can opt to keep unix line endings - but most people don't05:17
cr1901_modernFelixVi: That compiler error is known to happen on recent gccs. Haven't gotten around to committing the actual fix. You're gonna most likely get an error in pll.c next after this one05:18
FelixVishould I go ahead and compile an old gcc version?05:19
cr1901_modernNo not at all05:19
cr1901_modernJust turn ((token = ...) into (*(token = ...)05:19
FelixViyeah, then I had to fix line endings again05:21
FelixViand now I got the pll_config_10x error05:21
cr1901_modernwhat line endings (again?)05:22
cr1901_modernwhy did they change back?05:22
FelixVifor firmware/version_data.sh05:22
FelixViit's another file05:23
cr1901_modernoh05:23
cr1901_modernright05:23
cr1901_modernYou can comment out the pll_config_10x for now05:23
cr1901_modernIIRC the error is that it isn't used05:23
FelixViI'll get that worked out - when one clones the repo there must be an optioni to checkout LF line endings05:23
cr1901_moderncore.autocrlf=false05:23
FelixVilm32-elf-ld: firmware.elf section `.bss' will not fit in region `sram'05:24
FelixVilm32-elf-ld: region `sram' overflowed by 4708 bytes05:24
FelixViI'll test and verify the fix for git - ideally we don't change settings05:25
cr1901_modernIncrease the integrated_sram_size05:25
FelixVithere is none as of now - that's commented out05:25
cr1901_modernThen paste your regions.ld file05:26
FelixViwhat is integrated sram vs integrated rom?05:26
cr1901_modernone's read-write the other's read-only05:26
cr1901_modernthey both use block RAM05:26
FelixVioh ok, got that fixed05:26
FelixVinow software is done05:26
cr1901_modernBut I want to see your regions.ld file05:26
cr1901_modernfrom before your fix05:26
FelixVixst is not recognized05:26
cr1901_modernAdd the cygwin fixes to litex05:27
cr1901_modernOr alternative just add Xilinx to your path05:27
* cr1901_modern doesn't remember where xst lives05:27
FelixVihttps://pastebin.com/Z1fzqxLk05:28
tpbTitle: MEMORY { rom : ORIGIN = 0x00000000, LENGTH = 0x00008000 sram : ORIGIN = 0x10 - Pastebin.com (at pastebin.com)05:28
FelixVithis is pre-fix05:28
cr1901_modernThat doesn't seem right... why would sram require over 32kb?05:29
cr1901_modernoh wait05:29
cr1901_modernhrm, sram shouldn't require 0x1000 + 4708 bytes IME05:30
cr1901_modernbut whatever, just increase the SRAM size for now05:30
cr1901_modernokay I guess I was wrong, mimasv2's sram_size is 0x400005:32
FelixViah, now we got the path stuff going on again05:33
FelixVisource file paths05:33
FelixViI think I know how to fix that05:33
cr1901_modernright, so add your path fixes to litex, or just add "wherever xst lives" to your Cygwin path05:33
FelixVithat I got fixed05:33
FelixViit's the POSIX thing05:34
FelixViERROR:Xst:2927 - "\cygwin64\home\dell\HDMI2USB-litex-firmware\build\saturn_base_lm32\gateware\top.prj" line 1: Source file /home/dell/HDMI2USB-litex-firmware/third_party/litex/litex/soc/cores/cpu/lm32/verilog/submodule/rtl/lm32_adder.v does not exist05:34
FelixViISE running in windows doesn't know /home/05:35
FelixViat least these things start to repeat - this is probably the last error before it builds gateware05:36
cr1901_modernoh right...05:37
FelixVialright, and we're up and running05:40
cr1901_modernpraise the lord05:40
FelixViphew, that was quite painful05:40
cr1901_modernI may or may not have spewed a few profanities in the past hour :305:41
FelixViyeah, sometimes I wish I had a boxing bag in the office...05:41
FelixViIt turnes out taking a 10 minute walk helps a lot :)05:42
FelixVik, it routed without hesitation05:42
FelixViI think it works05:44
FelixViinvalid length is 0xffffffff now - which is because I don't have a firmware image in flash05:44
cr1901_modernthink?05:44
cr1901_modernwell, that's good05:44
FelixViI suppose I could boot bios from flash05:44
FelixVilet me try that05:45
FelixViwhat's the boot address in flash now?05:45
cr1901_modernthat is likely to crash unless you build it w/ the correct relocations05:45
FelixVioh, nvm then :)05:45
FelixViI had some print statement in a loop05:45
cr1901_modernAnd I don't remember... too fried to remember right now05:46
FelixVilet me just commit and push everything we did05:46
FelixViand I'll test with the loop when I get to work tomorrow05:47
FelixViunless you really want to know now ;)05:47
cr1901_modernLet me know now so I have something to use to sob into my pillow tonight05:48
FelixVisure, this is the new repository: https://github.com/FelixVi/HDMI2USB-litex-firmware/commits/master05:50
tpbTitle: Commits · FelixVi/HDMI2USB-litex-firmware · GitHub (at github.com)05:50
FelixVishould have all the changes to get it going05:50
FelixViI'll clean up history for a PR tomorrow05:50
cr1901_modernYou're gonna want to _not_ commit the litex changes in your PR05:50
FelixVioh yeah, I use my own one for now05:51
FelixVirelocated mitex to my git05:51
cr1901_modernin other words please keep that local to your repo05:51
cr1901_modernAhhh I see05:51
cr1901_modernyou changed where the submodule points to05:51
FelixViyeah, for now05:51
cr1901_modernwell don't commit that relocation :305:51
FelixVihehe, I'll check with you when I got everything staged05:52
cr1901_modernWelp, now we can play Sega Saturn using hdmi2usb now05:52
cr1901_modern(except the 'Sega' part)05:52
FelixVi;) man, there was some messing around with libraries in the makefile I just remember05:52
FelixVito get the print example going05:53
xfxf\o/05:53
FelixViI hope litex is not different from misoc as far as compiling software goes05:53
cr1901_modernit's not05:53
FelixViphew, this should be easy then05:53
cr1901_modernthey use the same dir structure and libraries. Just different package hierarchy05:54
FelixVibuilder.add_software_package("test_print")05:55
FelixViwhat's the equivalent for that?05:55
cr1901_modernit should be the same?05:56
FelixViat least that's how I got misoc to compile my test code along with the rest05:56
FelixVibut for misoc that was under _main_05:56
FelixVihttps://github.com/FelixVi/misoc/commit/e11bb8d884f14486e8c4c054b3982f2b29037875#diff-7cf59b233c36902d34e2f277c8c22223R15905:56
tpbTitle: targets/saturn: Adding target for Numato Saturn board · FelixVi/[email protected] · GitHub (at github.com)05:56
cr1901_modernhttps://github.com/enjoy-digital/litex/blob/master/litex/soc/integration/builder.py#L5105:57
tpbTitle: litex/builder.py at master · enjoy-digital/litex · GitHub (at github.com)05:57
cr1901_modernI understand it's literally quicker for me to find it, but I'm out of energy. Please do a grep for missing identifiers for the time being, b/c I'm pretty shot right now :P05:58
FelixViWell, I found it but didn't get it to work06:01
FelixVilet me check on it in the morning as I'm also pretty shot06:01
FelixViI am sure I can figure it out when not completely fried06:01
cr1901_modernwonder if migen stuff got imported in again by accident06:02
FelixVinot that I can see06:02
FelixVibut I'll doublecheck that, too06:03
FelixViI got gateware and do get a bios prompt though06:03
FelixViand it doesn't get all zeroes from flash06:03
FelixViso I feel pretty good about this working06:03
cr1901_moderndid you get something besides all ones from flash too?06:04
FelixViall other litex targets appear to have main() defined - so I'm confused one more time as mimasv2 doesn't06:04
FelixViI got all ones06:04
FelixViwhich I really hope is flash default when not overwritten06:05
FelixVihttps://github.com/enjoy-digital/litex/blob/99f2e31b2e673f8a5a977e5a62ebb4ae1c9f19c6/litex/boards/targets/de0nano.py#L11306:05
tpbTitle: litex/de0nano.py at 99f2e31b2e673f8a5a977e5a62ebb4ae1c9f19c6 · enjoy-digital/litex · GitHub (at github.com)06:05
FelixVithis i.e. calls builder.build(), but we don't as of now06:05
cr1901_modernI'm gonna have to retire for the night, sorry06:09
FelixVisame here -.-06:09
FelixViI'll try one more thing, but it might have to wait until tomorrow morning06:09
FelixVithanks for all the help!06:09
FelixVihave a good night!06:09
FelixViif anything comes out of this, I'll post it here06:09
cr1901_moderncool06:10
FelixVik, it doesn't seem to boot either my test code (compiled with misoc) or the bios - but I'll check on that in the morning06:18
FelixViactually, I think I'll be in a bit late tomorrow, but will try to jump right on this06:18
*** FelixVi has quit IRC06:19
*** sb0 has quit IRC07:04
*** sb0 has joined #timvideos07:16
*** sb0_ has joined #timvideos07:32
*** sb0__ has joined #timvideos07:33
*** sb0 has quit IRC07:33
*** sb0_ has quit IRC07:37
*** sb0__ has quit IRC08:01
*** rohitksingh_work has quit IRC08:11
*** rohitksingh_work has joined #timvideos08:13
*** sb0 has joined #timvideos10:11
*** CarlFK has joined #timvideos10:24
*** ChanServ sets mode: +v CarlFK10:24
*** sb0 has quit IRC10:37
*** sb0 has joined #timvideos11:22
shenkishorne: nice work with the varargs find!11:28
shenkishorne: i wrote a patch and ping works now11:28
*** rohitksingh_work has quit IRC12:31
shorneshenki: great, let me look at the patch I was just going to log in and write one too12:48
shorneshenki: the mail is to the uclibc maintainer, he might just accept the patch as is12:48
shorneI am good with the patch as is, now to move onto liteeth12:58
*** rohitksingh has joined #timvideos13:08
*** sb0_ has joined #timvideos13:13
*** sb0 has quit IRC13:17
shorneshenki: I tested your patch it works good for me too13:17
*** sb0__ has joined #timvideos13:50
*** sb0_ has quit IRC13:50
*** sb0_ has joined #timvideos14:11
*** sb0__ has quit IRC14:11
*** sb0__ has joined #timvideos14:11
*** sb0_ has quit IRC14:15
*** Guest57653 is now known as skay14:35
*** skay has joined #timvideos14:35
*** ChanServ sets mode: +v skay14:35
mithroshenki / shorne: \o/15:57
mithroshorne: I believe shenki has a bunch of stuff going on liteeth15:57
*** tsglove has quit IRC16:50
*** tsglove has joined #timvideos16:50
*** tsglove has quit IRC16:51
*** CarlFK has quit IRC18:16
*** FelixVi has joined #timvideos18:32
mithroMorning FelixVi18:42
FelixVimorning, we had pretty good success yesterday18:43
mithroFelixVi: that's great!18:43
FelixVitoolchain is up and running in Windows, but I see why appveyor might be the way to go in the future18:43
FelixVijust setting up, trying to get flashboot to work18:43
mithroI found https://github.com/joaope/LocalAppVeyor18:44
tpbTitle: GitHub - joaope/LocalAppVeyor: Run your AppVeyor builds, locally (at github.com)18:44
FelixVithat looks awesome, I just starred it and will take a look at it18:45
FelixViif lm32-gcc can be build with it, life will be easy on the windows end18:45
mithroFelixVi: If we can get conda building the Windows packages automatically it makes setting up windows very easy18:45
FelixVimithro: I'm interested - my plan is to show that litex is useful as of now18:46
FelixViwhen people realize how much user control that enables, they will ask for a compiler toolchain pretty soon18:47
mithroFelixVi: great! :-)18:47
FelixViso I think a Windows extension is the only option if you want to allow people to program their CPU18:47
FelixViTo get started, cygwin is probably OK - but I'll start looking at appveyor18:49
FelixViI think it might be useful for distributing other packages as well, so there could be a pretty big benefit18:49
FelixViHow is it different from travis ci?18:49
FelixVishould I look at different alternatives or are we going to go with appveyor no matter what?18:50
mithroAppVeyor is basically the "windows" version of Travis-CI - Travis only supports Linux/Mac18:50
FelixViah, so that's a pretty good argument18:50
FelixViI know too little to have a preference - I'll play with the local version18:51
mithroFelixVi: We would still keep Travis for Linux/Mac18:51
FelixViYeah, It seems to be the standard for most projects18:53
FelixViI'm a scientist by training, so software development is something I'm trying to pick up on the side18:54
FelixVino excuse, but hopefully that gives a little context why I don't know a lot of these things already18:54
*** rohitksingh has quit IRC18:58
FelixVihttps://github.com/timvideos/HDMI2USB-litex-firmware/blob/89f5b6604ac921866ca5a7d6dae83f5882d3902a/make.py#L12018:59
tpbTitle: HDMI2USB-litex-firmware/make.py at 89f5b6604ac921866ca5a7d6dae83f5882d3902a · timvideos/HDMI2USB-litex-firmware · GitHub (at github.com)18:59
FelixViis there a way to add a software package from the command line?19:00
mithroFelixVi: not at the moment19:00
FelixViI'm trying to compile some test firmware along with the project and this seems to be the only place where one has access to the builder19:00
mithroFelixVi: Feel free to add a command line argument to make.py19:01
FelixVithat's something I might add19:01
FelixViI think ultimately I'll make it standalone so that people can compile firmware with default libraries easily19:02
mithroFelixVi: at some point soon I'm going to rename the current firmware in firmware/ to something like "firmware/hdmi2usb" -- we now have Linux and MicroPython firmwares in development as well19:05
FelixViis that on openrisc or risc-v?19:07
FelixVior are you using the lm32 mmu?19:07
FelixVii'm curious about the embedded risc-v variety, but things don't seem very stable at the moment - not sure if there's even a spec yet19:07
mithroFelixVi: or1k19:08
mithroFelixVi: I hope to add sh2 and risc-v to LiteX in the near future19:08
FelixVimy hope is to have a student work on risc-v next spring - but that's still up in the air19:09
*** tsglove has joined #timvideos19:21
mithroFelixVi: I'm more then happy to merge the saturn + waxwing support into the HDMI2USB-litex-firmware repo19:48
FelixVimithro: I think that's useful to people - I'm still stuck with the Makefile, but should have something to report back by the end of the day19:54
cr1901_modern"not sure if there's even a spec yet" user mode spec is done, but privileged spec is under revision (which includes interrupts).20:21
cr1901_modernpicorv32 opts not to use the privileged spec to implement interrupts20:21
*** msantana has quit IRC20:33
*** jea[m] has quit IRC20:33
*** medicalwei has quit IRC20:33
*** CarlFK[m] has quit IRC20:37
*** mikal has quit IRC20:41
*** CarlFK has joined #timvideos20:42
*** ChanServ sets mode: +v CarlFK20:42
*** mikal has joined #timvideos20:45
*** msantana has joined #timvideos20:49
*** medicalwei has joined #timvideos20:49
FelixVicr1901_modern: Ah, so I think early next year might be a good time to start21:08
FelixViif you're after linux, though, you're gonna run the integer version I assume?21:09
FelixVieither way, I generated some firmware that I'll test now - but not sure about the flash offsets still21:10
FelixVimemory_region,spiflash,0x20000000,16777216,21:20
FelixVithis is in csr.csv - isn't the flash region very much on the small side?21:20
FelixVithe saturn has 128Mbit flash21:21
FelixVioh nvm, that's in MByte21:22
FelixVicr1901_modern: I'm really sorry but I just realize that the Numato schematics aren't accurate21:29
FelixViit says it's a M25P16 but those don't come in 128Mbit21:29
mithroFelixVi: you can use openocd to read the flash ID to figure out what it is21:34
mithroshenki: Can you look at https://github.com/timvideos/HDMI2USB-litex-firmware/pull/377 ?21:34
FelixViN25Q128A13ESE40 is what I got21:34
tpbTitle: Better parallel make support by mithro · Pull Request #377 · timvideos/HDMI2USB-litex-firmware · GitHub (at github.com)21:34
mithroCarlFK: When this build finishes -> https://travis-ci.org/timvideos/HDMI2USB-litex-firmware/builds/312632988 -- can you try the download firmware script?21:36
*** froztbyte has quit IRC21:41
*** juliusb has quit IRC21:41
mithrolol - no programmers using travis - watch the first 5 minutes of https://www.youtube.com/watch?v=lG5AIeFaeLk :-P21:50
FelixVicr1901_modern: Is there a good way to see if we can write/read from flash?21:55
*** froztbyte has joined #timvideos22:04
*** juliusb has joined #timvideos22:04
FelixVicr1901_modern: I'm sorry, I have to switch projects - I pushed all the latest files and should be able to get back to this soon22:25

Generated by irclog2html.py 2.13.1 by Marius Gedminas - find it at mg.pov.lt!