IRC logs for #openrisc Friday, 2014-09-26

--- Log opened Fri Sep 26 00:00:10 2014
poke53282                === libffi Summary ===03:49
poke53282# of expected passes            108603:49
poke53282# of unexpected failures        81103:49
poke53282# of unresolved testcases       13503:49
stekernat least it's less than half ;)04:34
poke53282I get points even if if the file can be executed.04:37
poke53282but not for successful compilation.04:38
poke53282The counting is strange04:41
stekerneven though I 'figured out' the underruns, the output is 'all messed up'04:49
stekernmaybe I have some endianness issues04:49
stekern~200 test fixes/h05:10
stekernlooks like my data fetching is getting out of sync, I get left data on the right channel05:11
poke53282If I return a struct, why does the argumnts start with r4 and not with r3?05:25
poke53282I can't see it in the spec05:26
stekernI think I clarified something related to that in the spec05:26
stekernA function that returns a structure by value expects the location where that structure is to be placed to be supplied in function parameter word 0 (R3)05:28
stekernfrom 16.2.505:29
poke53282I see05:31
stekernyou're keeping the 200 fixes/h pace ;)05:34
poke53282the problem is, that I have to take a shower and sleep soon.05:45
olofkstekern: Could it be problem reading from the stream fifo?06:17
olofkYou could replace your i2s core with a pattern detector and put a known pattern in the RAM to see what comes out on the other side06:18
stekernolofk: I noticed one problem with my read enable logic, it's a bit random which edge of the lrclk latch the first value out of the FIFO06:27
stekernbut I see inconsistency in the middle of transitions as well, so I don't think it's the only problem06:28
stekernand my test setup is basically what you described06:29
stekernso I should get 0x01234567 on one channel and 0x89abcdef on the other06:33
poke53282sorry, 1778/247/13506:43
poke53282Enough for today06:43
poke53282I think the only missing feature is the gap between registers and stack for 8 byte types.06:44
olofkpoke53282: But the day just started. Giving up already? ;)06:58
poke53282no, in two minutes is 12pm.06:58
poke53282Pacific Tim06:58
olofkYou should come over to my time zone. Plenty of day left here :)06:59
olofkstekern: What's the relationship between clocks?07:00
poke53282In two weeks I am int your time zone.07:00
olofkIs travelling between time zones dangerous? Like, can it change the future in unintended ways?07:01
poke53282Depends on what your definition of "intended ways" I guess.07:04
olofkFor example, if I'm travelling to a time zone where my parents haven't met, and I intervene. Will I cease to exist then?07:05
olofk...or was that time travelling..? I should probably stop watching Back from the future07:08
olofkTimezones are still weird07:08
olofkEven weirder that timezone-data seems to be one of my most frequently updated packages. Seriously, get your shit together people07:09
poke53282there are also half an hour time zones07:09
poke53282And the shift between sommer and winter time is different. Normally by around 2 weeks.07:10
olofksummer and winter time is an extraordinarily stupid idea07:11
stekernI agree07:14
olofkI think the idea is that you should get some more sun in the morning in the winter, but seriously, who the fuck needs that? I'd much prefer a slight chance of daylight when I get home from work instead07:15
stekernolofk: there's potentially problems in the clock crossing07:16
stekernor rather, there are clock crossings going on, and that's always a potential source of problems07:16
olofkstekern: I'm thinking of updating wb_intercon_gen a bit to spit out a third file with just constants, like localparam UART0_ADDR =0x91000000; UART0_AW = 307:17
olofkstekern: Yeah. I'm going to need a proper async fifo for my somewhat similar case. Got any handy?07:17
olofkThis file can then be included both in the top level and in wb_intercon.v. Benefits : 1) Named constants in wb_intercon.v 2) We can use the params in orpsoc_top07:18
stekernsounds good07:19
stekern(async fifo) I've used the one from vga_lcd07:19
olofkvga_fifo_dc.v ?07:20
olofkI could put through my FIFO tb and try different read and write speeds07:21
stekernwhich is basically the same as vga_fifo_dc.v07:21
olofkNot sure anything will turn up though07:21
stekernI think I changed something07:22
olofks/changed/broke ? ;)07:22
stekernpossibly ;)07:22
stekernmight have fixed something too07:22
stekernit's a 50/60 chance of either07:23
olofkGahh.. Quartus schematic editor must be the most braindead tool ever07:30
olofkThank god. There's a HDL export option07:33
olofkstekern: Did you do anything more with your bare-metal wb_streamer test? I'm thinking of making a bare-metal driver out of it that can be shipped with the core09:20
stekernnot really, I turned it into a SID player to the point where I noticed tinysid broke when compiled with optimisations on09:21
olofkThat's quite handy too. Maybe mount it at /dev/sid009:23
ed-jonesGeneral question; what work has there been to test the llvm/clang toolchain for openrisc?09:23
olofkRelated general question; Are any of the italian LLVM guys showing up at orconf?09:50
stekernrelated general question; has anyone been able to clone their repos?09:54
stekerned-jones: there's a set of target specific tests09:55
stekernnot much more, apart from some attempts to run gcc regression tests against it, and then some "real-world use" tests09:55
stekern(like compiling the Linux kernel, uclibc and busybox)09:56
ed-jonesokay, I'm trying to test with the gcc regression tests as well10:12
olofkDoes the gcc testsuite contain much gcc-specific stuff?10:40
olofkI guess that tests that look for specific errors won't work10:41
ed-jonesyeah, looks like quite a few tests fail due to clang writing more to output10:45
stekernI just noticed this:
olofkWhy do they still bother with that thing?13:12
stekernI've added bullet-proof cdc and proper clock generation from pll's now, let's see if that helps13:23
stekernthing *look* a lot better at least14:10
stekernno right channel data in the left channel and vece versa14:11
stekernvice too14:12
stekernand things14:12
stekernyay, swapping the bytes and everything works16:04
poke53282That means, that you get finally reliable sound output?16:29
stekernpoke53282: yup16:57
poke53282Finally it's worth playing Day of the Tentacle again :)17:09
poke53282what's the latency if you play prboom?17:09
stekerndon't know, it wants to set the format to S16_BE17:10
stekernand I don't support that yet ;)17:10
stekernS16_LE is ok, so I've just changed prboom to use that17:11
poke53282just to make it sure. alsa doesn't do any format conversion itself. Either the program support the format or not?17:12
stekernalsa does format conversion17:12
stekernbut not between LE and BE I think17:12
stekern44.1kHz -> 48kHz it does at least17:13
poke53282Hmm, that's bad.17:13
stekernthat's why I got underruns when I tried to play a 44.1kHz .wav file17:13
poke53282linear interpolation or just cutting?17:14
poke53282probably you don't know.17:14
stekernno idea17:15
stekernhmm, still got this: I_InitSound: couldn't open audio with desired format17:15
poke53282a very rudimentry linear interpolation algorithm17:17
poke53282All sounds which are played are converted to 48kHz (by default) and mixed in software17:17
stekernah, of course... your Makefiles extract things over my changes ;)17:20
poke53282:)  sed or patch?17:21
poke53282echo "#define WORDS_BIGENDIAN 1" >> src/prboom/config.h17:21
stekernno, #if ( SDL_BYTEORDER == SDL_BIG_ENDIAN ) audio_format = AUDIO_S16LSB;//MSB;17:22
poke53282otherwise I don't see anything else, which could interfere.17:22
stekernwell, it untars the tar17:22
stekernanyway, it still complains17:23
poke53282my makefile always overwrite as first the old src. $(call extractpatch,$@,$($@_VERSION))17:23
poke53282just remove this line17:23
stekernmaybe I should just add the wishbone configuration core, so I can have support for all kinds of endians and samplerate17:24
stekernyes, I already did17:24
poke53282That makes sense.17:26
poke53282the last problems in libffi will take more time. An I have realized that in the git version, more than 115 tests fail anyhow (complex number types) on every system. So the current number is 1773/107/017:36
stekernyeah, I really need to get multiples of 44.1kHz working, I just get underruns in prboom19:14
poke53282                === libffi Summary ===20:08
poke53282# of expected passes            190020:08
poke53282# of unexpected failures        520:08
poke53282the last one is hard20:08
poke53282what values are important for unwind?20:09
poke53282stack pointer, frame pointer?20:10
poke53282how does unwind work?21:30
--- Log closed Sat Sep 27 00:00:12 2014

Generated by 2.15.2 by Marius Gedminas - find it at!