#milkymist IRC log for Tuesday, 2013-04-16

wpwrakfunny. there doesn't seem to be a "simple" tftp server. well, there's Net::TFTPd ... long live Perl :)13:48
wpwrakit's probably a bad sign if (unsuccessfully) searching for a simple tool takes longer than just writing it yourself14:06
wpwraktoo late :)14:07
wpwrakand that's one of the inetd-based ones, probably with tons of security features. just what gets in the way.14:08
wpwrakhere's my counterproposal: https://github.com/wpwrak/ming-ddc-debug/blob/master/tftpd/tftpd.pl14:09
wpwraklet's see if writing works, too ...14:10
wpwrakyup. perfect.14:11
wpwraklekernel: mind if i convert all your unsafe types, especially shorts, to uintXX_t ?14:53
lekernelyou can do that14:56
wpwrakthanks ! :)14:57
sh4rm4wpwrak, we have arpa/tftp.h, this is probably to encourage you to roll your own16:28
wpwrakin milkymist-ng ?16:34
sh4rm4in glibc16:37
sh4rm4and anything that wants to stay compatible... *sigh*16:37
wpwraki don't think there's much of a glibc either :)16:38
wpwrakit's a very NIH-heavy environment16:38
lekernelcome on, copy and paste isn't NIH16:39
sh4rm4well, i was just arguing about the rationale of arpa/tftp.h's inclusion into our libc's16:39
lekerneland I did look for a bare metal environment that did not suck, but could not find one16:40
lekernelwhat do you recommend instead? newlib lol?16:40
sh4rm4i ? musl of course16:40
lekernelisn't it linux only?16:41
lekernelso. I said bare metal.16:41
lekernelu-boot is horrible, rtems mediocre at best, ...16:44
sh4rm4how about a linux syscall emulation layer ? shouldnt be too hard to add to your kernel of choice16:45
sh4rm4of course only the important ones16:45
sh4rm4nuttx seems to be interesting as well16:51
lekernelsome of the "NIH" code is actually copy and paste from nuttx ;)16:56
lekernelbut nuttx doesn't have a LM32 port, and it was faster to just copy and paste the needed bits16:56
wpwrakpatches are coming ...16:57
wpwraki didn't touch the (bla & 0xff00) >> 8 critters. they're usually unnecessary was well, unless you strive to make your code -Wconvert clean, but that's usually a rather grueling uphill battle17:06
wpwrak(unnecessry) in the sense that bla >> 8  is just equivalent17:07
lekernel-strcpy(buf, filename);17:22
lekernel-buf += strlen(filename);17:22
lekernel+memcpy(buf, filename, len);17:22
lekernel+buf += len;17:22
lekernelhaha, such attention to detail ;) thanks wpwrak17:22
GitHub69[milkymist-ng] sbourdeauducq pushed 10 new commits to master: http://git.io/7OppWA17:25
GitHub69milkymist-ng/master 0d21711 Sebastien Bourdeauducq: dvisampler/chansync: use Record.raw_bits()17:25
GitHub69milkymist-ng/master 65b807b Werner Almesberger: microudp.c: avoid redundant accesses into multi-level structures17:25
GitHub69milkymist-ng/master 36613c7 Werner Almesberger: tftp.c: use symbolic constants for protocol opcodes17:25
wpwraki actually did it to avoid the uint8_t vs. char conflict that would otherwise require a cast ;-017:29
wpwrakoh, the patches sent someone running ;-)18:25
larscHe'll be back18:28
larschm, the internet doesn't seem to know -Wconvert, what does it do?18:31
wpwrakah, sorry, it's -Wconversion18:32
wpwrakit warns you when you may chop off bits18:32
larscYou probably don't want to have it enabled by default, but building your code with it once in a while might help to uncover hidden bugs18:35
larscespecially the -Wsign-conversion part will probably trigger quite often18:36
lekernelgrmbl... connecting the logic analyzer on chB makes it work19:17
lekernelI HATE BUGSA19:18
wpwrakwe should find some bugs that need a new hw revision. then you could send me your non-chB board ;-) well, it may just magically work here. i've seen that before :)19:20
lekerneladdress phase non-acked... same crap as before19:22
wpwrakodd. it looked exactly like chan A here.19:23
wpwrakmaybe your overcooked some chip :)19:24
lekernelthis hdmi stuff is cursed for maximum wastage of my time19:24
lekernelah it works correctly with the 50MHz clock19:26
lekernelmayble the oversampling needs to be > 64 with the 83Mhz19:26
wpwrakhmm, could be. the margin is fairly generous, but yes, at almost twice the speed, you may hit some outliers19:27
wpwrakmaybe it needs to be calculated based on the system clock. else, we may run into conflicts with the I2C clock cycle19:28
wpwrakthere are also bidirectional level-shifter chips that produce faster edges than this single-transistor solution. but then, almost everyone seems to be happy with this sort of approach. and i didn't find anything obviously wrong or even marginal with your implementation19:30
larscthe bidirectional level-shifter make good oscillators19:32
wpwrakgee, dual-use technology ;-)19:34
lekernelwpwrak, have you tested it with the 83MHz clock?19:34
lekernel128 downsampling does not solve the problem19:34
wpwrakno, i only tested with the rather simple build.py19:35
wpwrak... that you say runs at 50 MHz19:35
lekernelI guess you have built milkymist-ng for the TFTP... it has the EDID on both ports19:36
lekerneland that very problematic 83MHz clock19:36
wpwrakwhat i tested wasn't full mi-ng19:37
lekernelwell it could even be something different than the clock, in good maximum time wastage tradition more downsampling does nothing19:37
wpwrakdon't stress yourself :)19:37
wpwrakrunning. mi-ng, i ddc works in port b (without signal)19:39
wpwrakenabling signal19:39
wpwrakthere's no pixel clock blinking, but xrandr still things it can talk to the m119:39
lekernelyeh, it does not blink anything on the pixel clock...19:40
wpwraklooking good here then19:40
lekernelyay, a non reproducible bug19:40
wpwraka problem that a) may solve itself, or b) will show up in more controlled experiments as well19:41
wpwraknothing to worry about this far. you already have a number of other problem indicators, like not being able to get a stable frame19:42
wpwrakthey may or may not be related19:42
lekernelmeh, now it doesn't work anymore with the 50MHz clock...19:44
wpwrakit's having fun with you ;-)19:44
wpwrakmaybe just write off your chB19:44
lekernelmaybe this is just yet another mega time wastage schrödinbug that has in fact nothing to do with the clock or mi-ng vs. edid tester19:44
wpwrakyeah. you may later discover that some bonding wire in a chip broke. i've actually had that.19:45
wpwrakoh, and if you did any recent soldering, just let it rest for a while. some types of flux are VERY conductive and easily override pull-ups. i've had a board that never came out of reset before the flux dried.19:46
lekernelwhat's really strange is I see signals with the saelae20:07
lekernelbut sometimes the M1 acks, usually it does not20:08
lekernellarsc, do you have any plans to assemble your boards?20:08
wpwraklekernel: you may want to get a "real" oscilloscope. considering that the basic but decent ones are ~EUR 1k and the "professional" ones are well in the 10k+ range, i think little is lost if you get a low-end one now, even with the understanding that you're already operating beyond its range20:15
wpwrakthis will allow you to make at least a coarse assessment. with just digital signals, you're basically blind. i'm actually amazed that you got as far as you did20:17
GitHub56[mibuild] sbourdeauducq pushed 2 new commits to master: http://git.io/f_S1Vw20:57
GitHub56mibuild/master 31b1960 Sebastien Bourdeauducq: xilinx_ise: add --no-source option to disable sourcing of ISE settings file20:57
GitHub56mibuild/master 29eaf06 Sebastien Bourdeauducq: xilinx_ise: do not attempt to source settings file on Windows20:57
--- Wed Apr 17 201300:00

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