Tuesday, 2017-03-14

*** tpb has joined #upy-fpga00:00
shenkijimmo: nice! it works for me00:12
shenkiit felt faster to flash the gateware+bios than it was to load the micropython payload00:12
mithroshenki: How big is the micropython payload00:42
jimmoshenki: woo!! glad it's working :D00:50
shenkimithro: 180732 bytes01:02
shenkijimmo: good work. it's super fast :)01:02
shenkiAttributeError: 'Record' object has no attribute 'd'05:20
shenkimithro: is the sdcard written against an older version of litex?05:20
mithroshenki: Dunno, possibly -- you got the full traceback?05:21
shenki$ python -u ./make.py --platform=mimasv2 --target=base --cpu-type=lm32 --iprange=192.168.10005:21
shenkiTraceback (most recent call last):05:21
shenki  File "./make.py", line 82, in <module>05:21
shenki    main()05:21
shenki  File "./make.py", line 51, in main05:21
shenki    soc = SoC(platform, **soc_sdram_argdict(args), **dict(args.target_option))05:22
shenki  File "/home/joel/dev/timvideos/mimasv2/targets/mimasv2/base.py", line 231, in __init__05:22
shenki    self.submodules.sdcard = SDCard(platform, platform.request("mmc"))05:22
mithroshenki: pastebin? :-P05:22
shenki  File "/home/joel/dev/timvideos/mimasv2/gateware/sdcard/core.py", line 26, in __init__05:22
shenki    self.specials += self.dat.get_tristate(pads.d)05:22
shenkiAttributeError: 'Record' object has no attribute 'd'05:22
shenkino. it's because i don't have a signal called d05:22
shenkiirc is easier :)05:22
mithroshenki: It's because your mmc object in platform/mimasv2.py doesn't have a 'd' signal :-P05:22
shenkiyep05:25
shenki15:43 < shenki> no. it's because i don't have a signal called d05:25
shenki      ("mmc", 0,05:25
shenki~         Subsignal("d", Pins("K14 G18 J13 L13"), IOStandard("LVCMOS33"),05:25
shenki                    Misc("SLEW=FAST")),05:25
shenki05:25
shenki          Subsignal("cmd", Pins("G16"), IOStandard("LVCMOS33"),05:25
shenki                    Misc("SLEW=FAST")),05:25
shenki05:25
shenki          Subsignal("clk", Pins("L12"), IOStandard("LVCMOS33"),05:25
shenki                    Misc("SLEW=FAST"))),05:25
shenkithat's what mine looks like05:25
shenki    ("sd_card", 0,05:25
shenki        Subsignal("cmd", Pins("AB22"), Misc("PULLUP")),05:25
shenki        Subsignal("clk", Pins("AB23")),05:25
shenki        Subsignal("cd", Pins("AA21")),05:25
shenki        Subsignal("d", Pins("AC20 AA23 AA22 AC21"), Misc("PULLUP")),05:25
shenki        IOStandard("LVCMOS25"), Misc("SLEW=FAST")05:25
shenki    )05:25
shenkithat's what the sdcard module looks like05:25
shenkii can fix the names05:25
shenkibut should i change the style to match how sdcard does it?05:25
shenkii assume the IOStandard apples to all of the subsignals?05:25
shenkimithro: ^05:31
mithropears!05:48
mithroThe LVCMOS25/LVCMOS33 is set by the voltage level of the FPGA bank05:49
mithroshenki: Yes, outer things apply to the whoe group05:50
mithroshenki: So - what is the question again?05:50
shenkimithro: which style do we prefer?06:06
shenkimithro: also, why does this fail?06:07
shenki  File "./make.py", line 51, in main06:07
shenki    soc = SoC(platform, **soc_sdram_argdict(args), **dict(args.target_option))06:07
shenki  File "/home/joel/dev/timvideos/mimasv2/targets/mimasv2/base.py", line 232, in __init__06:07
shenki    self.add_wb_master(self.submodules.sdcard.master)06:07
shenkiAttributeError: '_ModuleSubmodules' object has no attribute 'sdcard'06:07
shenkii do this on the line before:06:07
shenki+         self.submodules.sdcard = SDCard(platform, platform.request("mmc"))06:07
mithroshenki: Need to see the full code06:14
shenki+         # sdcard06:18
shenki+         self.submodules.sdcard = SDCard(platform, platform.request("mmc"))06:18
shenki+         self.add_wb_master(self.submodules.sdcard.master)06:18
shenkithat's all i do06:18
mithroshenki: no - the full code06:18
shenkihow does _ModuleSubmodules work?06:20
shenkinvm, worked it out06:29
mithroshenki: Get anywhere?08:01
shenkimithro: i got a bitstream08:58
shenkiloading it on now08:59
mithroshenki: Cool!09:02
mithroshenki: I should have something else to show you in about 30 minutes09:02
shenkimithro: https://github.com/shenki/opsis-soc/commits/sdcard09:09
tpbTitle: Commits · shenki/opsis-soc · GitHub (at github.com)09:09
shenkii need to write some test software09:09
shenkiand find a sdcard09:09
mithroshenki: Did I give you an Digilent PMOD-USBUART thingy at LCA2017?09:10
shenkimithro: i don't think so09:10
mithroshenki: Okay, I have one here for you then + plus a microsd card09:10
mithrojimmo: is all your rewritten pic stuff pushed?10:06
jimmomithro: on the new-protocol branch, yes. including a prebuilt image10:13
mithroGreat! Enjoy the boating :-)10:13
jimmonot til Saturday :(10:15
jimmoi might as well merge it into master hey, do we care about being backwards compatible with the MimasV2Config uploader?10:17
mithroshenki: run "conda install flterm"10:35
shenkimithro: what did you fix?10:41
shenkiflterm                    0+git20160123_1               0    timvideos10:42
shenkiall packages already installed10:42
mithroshenki: Did it say "Fetching package metadata" ?10:42
shenkiyep10:44
mithroTry again? I wonder if you got an old cached version or something...10:47
shenkisame result10:49
mithroshenki: Does "conda config --show" have "timvideos" under the channels section?10:51
shenkichannels:10:59
shenki  - timvideos10:59
shenki  - defaults10:59
shenkiyup10:59
mithroshenki: If you go to https://anaconda.org/TimVideos/flterm/files do you see the two versions there?10:59
tpbTitle: Files :: Anaconda Cloud (at anaconda.org)10:59
shenkimithro: yes11:05
mithroshenki: Try again maybe? "conda update flterm" ?11:10
shenkimithro: no good11:13
shenkiit's a new conda install from yesterday, as i accidently deleted my entire directory11:13
mithrohrm... It should look like this -> http://pastebin.com/Gbxx4RjV11:14
tpbTitle: (H2U P=netv2 T=pcie R=nextgen-netv2) [email protected]:~/foss/timvideos/hdm - Pastebin.com (at pastebin.com)11:14
shenkii removed it and reinstalled, same result11:16
mithroDo you have some type of caching proxy server or something?11:17
shenkinope11:18
mithroI just tested on a totally different machine and its working for me...11:19
mithroand its working on travis11:19
shenkihrm. not sure11:19
shenkiwhat url does it hit?11:19
mithroadd --debug to the command line11:20
shenki$ rm /home/joel/dev/timvideos/mimasv2/build/conda/pkgs/cache/*11:22
shenkithat did the trick :)11:22
shenkiwhat's changed in flterm?11:22
mithroIt works with micropython11:31
shenkinice!11:31
shenkiit does too :)11:32
mithroHopefully I haven't borked anything else11:32
shenki>>> for i in range(0, 8*4, 4): chr(umachine.mem32[0xe0006070+i])12:39
shenki...12:39
shenkiGC: total: 1984, used: 1680, free: 30412:39
shenki No. of 1-blocks: 2, 2-blocks: 5, max blk sz: 32, max free sz: 712:39
shenki'm'12:39
shenki'i'12:39
shenki'm'12:39
shenki'a'12:39
shenki's'12:39
shenki'v'12:39
shenki'2'12:39
shenki'\x00'12:39
mithro?12:40
shenkiit works :)12:40
mithroshenki: What works?12:40
shenkireading memory12:42
mithroshenki: I would hope reading memory would work - otherwise how would micropython?12:43
mithroshenki: Or am I missing something?12:48
mithrojimmo: btw - just so this is in the IRC logs, This page has some stuff about doing PIC sdcc stuff12:53
mithrojimmo: And getting the interrupt vector / hid bootloader stuff working on that12:53
mithroCould people also proof read https://hdmi2usb.tv/gsoc/fpga/hardware/python/linux/2017/03/15/gsoc-announcement/ ?12:55
shenkimithro: we needed a micropython module to be able to read arbitary memory13:15
shenkimithro: whenever i try to access the sdcard address space the cpu hangs13:15
shenkior maybe it does some kind of hardware abort. but either way it breaks13:15
shenkiamusingly, the sdcard core has a python test script that is designed to be run over the wishbone<->uart debug bridge13:18
shenkibut with micropython, i can run it on the softcore13:19
shenkithis is a pretty cool feature - write test code that works on the software or on a host via the debug interface13:19
mithroshenki: isn't that what ctypes is for? (The read any memory location?)13:20
shenkimithro: sure. i'll use that once you've implemented it for micropython13:22
mithroDone - https://docs.micropython.org/en/latest/pyboard/library/uctypes.html13:30
tpbTitle: uctypes – access binary data in a structured way MicroPython 1.8.7 documentation (at docs.micropython.org)13:30
mithroWe should get this working with the VGA output too -> https://docs.micropython.org/en/latest/pyboard/library/framebuf.html :-P13:36
tpbTitle: framebuf — Frame buffer manipulation MicroPython 1.8.7 documentation (at docs.micropython.org)13:36
mithroshenki: So, it's likely the wishbone bus is asserting some type of error when you are reading from it?13:38
shenkimithro: i would assume. not sure how to debug it tho13:43
mithroshenki: I would start by using the bridge version without the CPU13:43
mithroshenki: IIRC _florent_ mentioned something about getting it working in verilator - but there doesn't seem to be anything like that in his sdcard_test repo...13:55
mithroIt's kind of weird that the sdcard is both a wishbone master and a wishbone slave... I guess it must do some type of DMA or something?13:58
mithroanyway, bed time for me14:00
*** IRCFrEAK has joined #upy-fpga20:04
*** IRCFrEAK has quit IRC20:06

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