<kristianpaul> cool, the openwrt toolchain for lm32 seems to work
<wolfspraul> kristianpaul: can you try to download this zip file?
<wolfspraul> it's linked on the right side
<wolfspraul> supposedly it's easy, but I am unable to successfully login, it keeps complaining about my password even though I successfully reset it with their own server etc. stupid.
<kristianpaul> mom
<kristianpaul> You do not have permission to access this content. You can choose to register to gain access to the protected content, or you can return to your originating page.
<kristianpaul> (i already loged in with my xilinx user)
<kristianpaul> illregister, let see
<kristianpaul> oh, i acept a doc about XILINX CONFIDENTIAL ;-)
<wolfspraul> if you don't want to, don't do it
<kristianpaul> got it :-)
<wolfspraul> this zip file contains some source snippet that lekernel was considering using in the Milkymist SoC
<wolfspraul> the problem is that the source comes with restrictions that do only allow redistribution in binary format inside a binary bitstream
<wolfspraul> so anybody who would want to build the Milkymist SoC from source would need to download the zip file from Xilinx first, which I am currently unable to do even
<wolfspraul> so it looks like that would create quite a high barrier of entry for contributors, in reality I would think you loose 80% of people over a step like this :-)
<kristianpaul> heh
<kristianpaul> check your mail
<wolfspraul> but then Sebastien has to weigh the benefits of that code to Milkymist today...
<kristianpaul> an not yet
<wolfspraul> best is if more Verilog hackers join and help on the hundreds of things that can be improved :-)
<kristianpaul> still need to learn more verilog..
<kristianpaul> but yes
<kristianpaul> i dont see bitstreams..  actually there is source code
<kristianpaul> at least is all blobs embeded in .v files ;-)
<kristianpaul> haha, lekernel want to drop its hpdmc :-), what nasa will say now ..
<kristianpaul> (kidding of course)
<kristianpaul> now check email wolfspraul
<wolfspraul> we were just discussing the implications of using a source like this in Milkymist
<wolfspraul> everything has pros and cons. Sebastien is the only one with deep overview of the Milkymist SoC architecture today and how it could evolve in the future, right now.
<kristianpaul> sure,hes is the only one as always.. :)
<wolfspraul> this source snippet which Xilinx created to support its customers would clearly raise the barrier of entry for new contributors, but I guess it would also improve performance
<wolfspraul> it would make us depend on proprietary Spartan-6 specific features
<kristianpaul> yeah,it seems (performance)
<kristianpaul> well, take advantage is hardware is good
<wolfspraul> but then I do share Sebastien's belief that we have to make great functioning products today, and not just theoretically 'free' but crappy and uncompetitive stuff
<kristianpaul> :-)
<wolfspraul> the best would be as I said if more developers join and help lift the free parts up, no doubt.
<kristianpaul> may be you can ask to Northwest Logic, Inc, for let you distribute the DDR2 controoler
<wolfspraul> unlikely that we ever get a response
<wolfspraul> you can email them too :-)
<kristianpaul> :-)
<wolfspraul> it's not even because they are bad or anything, but simply because no other of their important customers ever has a request like that
<kristianpaul> well, i dont complain yet about ddr controller made by sebastien :-D
<wolfspraul> and at the volume we are buying chips at, all of these companies would be out of business tomorrow, so they are wise to ignore our strange requests :-)
<kristianpaul> sure
<kristianpaul> i agree that take advange of our hardware is the best
<kristianpaul> sadlt the only way is using xilinx specific libraries for their propietary software,
<kristianpaul> like then using specific intel instructions, etc...
<wolfspraul> it will be a middle path for a long time
<kristianpaul> so the only practical problem, distribution for profit
<wolfspraul> copyleft hardware is clear to me ;-) push 100% free software and tools to the point that all remaining parts can be sourced from 2 or more independent parties
<wolfspraul> but that's a long term goal
<kristianpaul> yeah, sure
<kristianpaul> the concern now a fast and fool prove Milkymist One, i understand :)
<lekernel> we're not using the NWL DDR controller, just the PHY, i.e. some non-portable spartan6-specific design they made to tame the pesky I/O and clocking system of that particular FPGA
<lekernel> you can read the spec document of the PHY ...
<Alarm> I can not find "sys/ioct1.h" ?
<roh> wolfspraul: maybe we are looking at this the wrong way around.. why is xilinx again not sponsoring sebastien?
<roh> ;)
<kristianpaul> (only PHY) oh, nice :-)
<kristianpaul> he, yeah roh :)
<GitHub88> [flickernoise] sbourdeauducq pushed 1 new commit to master: https://github.com/milkymist/flickernoise/commit/33091c15e2e8864b09e2e0b03899155a1fb5e39e
<GitHub88> [flickernoise/master] Do not include curl/types.h - Sebastien Bourdeauducq
<lekernel> omg... lm32 is so so broken in rtems head
<lekernel> semaphores are fucked up, interrupts are probably fucked up, termios is fucked up, ... upstreaming wtg ...not
<lekernel> and of course, everything works in QEMU or when you add printk() to track down issues
<larsc> time to switch to linux, i guess ;)
<kristianpaul> :-)
<lekernel> haha, don't tell me such things do not happen all the time with linux :)
<larsc> sometimes
<larsc> took me almost a day to figure out why the rootfs could not be mounted anymore with 3.0
<larsc> turns out there is a function called user_strnlen, which returns the number of characters in a string including the null byte. somebody accidentally changed it to not include the null byte
<larsc> and thus the last byte was always truncated when copying the rootfs path
<Alarm> lekernel: I can not find "sys/ioct1.h" ?
<mwalle> lekernel: components arrived
<mwalle> i guess the middle pin of the ir receiver is GND :)
<lekernel> mwalle, just drop it instead of the existing sensor
<lekernel> it's the same P/N
<lekernel> you shouldn't need to care about pinout
<lekernel> Alarm, it works for me (and everyone else). please give more information.
<mwalle> lekernel: na because the heat is sucked up by the plane :)
<lekernel> also, flickernoise does use this include file, and you said you were able to recompile it... so have a look at how it's done
<lekernel> e.g. check compiler command like
<lekernel> also, it's <sys/ioctl.h> and not "sys/ioct1.h" (l != 1; " != <)
<lekernel> mwalle, does this look good to you? http://pastebin.com/5q8GmNq5
<lekernel> the internal interrupt/context switch management API was changed in RTEMS and broken for LM32, which created all sort of problems (stack corruption etc.)
<lekernel> I have copied the current Nios code and added _exception_stack_frame
<mwalle> lekernel: whats the difference between this and the old handling?
<mwalle> #if( CPU_HAS_SOFTWARE_INTERRUPT_STACK == TRUE) << shouldnt this be always true?
<lekernel> yes, it should be always true
<lekernel> and I checked it is :)
<lekernel> _Context_Switch_necessary was renamed to _Thread_Dispatch_necessary
<lekernel> they removed _ISR_Signals_to_thread_executing (I do not understand what it does atm)
<lekernel> the new Nios code also calls _Thread_Dispatch_in_critical_section()
<lekernel> the pastebin code seems to work correctly ...
<lekernel> at least much better than the other which froze the board some 20ms after boot
<lekernel> i get weird behaviour after trying to render in flickernoise though...
<lekernel> not sure if it's related
<lekernel> but after I have run rendering it takes several seconds to input one character on the shell, the mouse cursor lags, etc.
<mwalle> mh there seems to be two differences, _Thread_Dispatch_{in,de}crement_disable_level is called before and after the stack switch
<mwalle> i guess its just a wrapper around the former _Thread_Dispatch_disable_level--;
<lekernel> yeah, or should be...I saw a Changelog entry about that
<Alarm> lm32-rtems4.11-gcc -O2 -mbarrel-shift-enabled -mmultiply-enabled -mdivide-enabled -msign-extend-enabled -I $RTEMS_MAKEFILE_PATH/lib/include  -B  $RTEMS_MAKEFILE_PATH/lib -specs bsp_specs -qrtems -o VGA VGA.c
<Alarm> VGA.c:3:23: fatal error: sys/ioct1.h: No such file or directory
<lekernel> Alarm, ioctL.h
<Alarm> oh sorry
<mwalle> and the context switch was changed
<mwalle> last time i touched that code was 2 years ago :)
<mwalle> bbl
<kristianpaul> there is no current way to boot linux from flash right?
<lekernel> kristianpaul, no but should be an easy exercise for you :-)
<kristianpaul> good !
<kristianpaul> wtf Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(1,0)
<kristianpaul> last owrt-milkymist revision..
<kristianpaul> ah, thats what initrd for..
<kristianpaul> ;)
<GitHub192> [rtems-yaffs2] sbourdeauducq pushed 1 new commit to master: https://github.com/milkymist/rtems-yaffs2/commit/875d6f89d85cc4a4c4dd6bf649b83230cf2db144
<GitHub192> [rtems-yaffs2/master] added missing file - Sebastien Bourdeauducq
<GitHub199> [rtems-yaffs2] sbourdeauducq pushed 1 new commit to master: https://github.com/milkymist/rtems-yaffs2/commit/3dc866a6f0c5f286ca81924d93c242747934b617
<GitHub199> [rtems-yaffs2/master] Remove references to non-existing bits - Sebastien Bourdeauducq
<kristianpaul> haha
<kristianpaul> very easy, at least a boot from mecard load the simpleImage.milkymist_one
<kristianpaul> now lets fill CMDLINE.TXT :-)
<kristianpaul> no need boot from flash after all lekernel :9
<kristianpaul> :)*
<kristianpaul> ah, you already diccused about it.. well wasnt so obvious too me
<kristianpaul> larsc: rootfstype is ext2 even when in the target image said ext4?
<kristianpaul> hum.. E: File size larger than the blocks read (corrupted FS or IO error ?)
<kristianpaul> agrhrhrh i formated the flashmemory , write bios.bin and such again and now the bios cant  find it ....
<kristianpaul> arggg
<GitHub119> [rtems-yaffs2] sbourdeauducq pushed 1 new commit to master: https://github.com/milkymist/rtems-yaffs2/commit/083cf978d030a6c841203bb5390a9952b952d07a
<GitHub119> [rtems-yaffs2/master] Compile needed yaffs_summary - Sebastien Bourdeauducq
<GitHub0> [rtems-yaffs2] sbourdeauducq pushed 1 new commit to master: https://github.com/milkymist/rtems-yaffs2/commit/3849a105e3fe4606704609d96a6025385598cdba
<GitHub0> [rtems-yaffs2/master] Add memory management - Sebastien Bourdeauducq
<GitHub74> [flickernoise] sbourdeauducq pushed 1 new commit to master: https://github.com/milkymist/flickernoise/commit/8e7aa92cceb96bd6e1b3356c66b4031da80a6971
<GitHub74> [flickernoise/master] Use new YAFFS API - Sebastien Bourdeauducq
<kristianpaul> arghgh ERROR:Place:1108 - A clock ..
<kristianpaul> damn, there are not more clock deticated input in the mm1? at least router trought the exp connector..
<kristianpaul> routed*
<kristianpaul> hum, may be i can still it from some TP, bad thing i can search text in the pdf... oh wel..
<kristianpaul> s/still/steal
<kristianpaul> hum where is B9..
<lekernel> clocks in spartan 6 are a major source of trouble. i spent two weeks or so getting them to work for milkymist soc.
<lekernel> the tools have improved since then, however
<lekernel> ISE 11.x had a hefty dose of bugs that made any non-trivial clocking a complete nightmare
<mwalle> i hate that fucking toolchain
<mwalle> narf!
<mwalle> ls
<mwalle> lol..
<wpwrak> mwalle: mmh, toolchain build time ? or did you find some binutils/gcc/... bugs ?
<mwalle> i just want to rebuild it
<mwalle> now everything is broken, lol
<kristianpaul> openwrt toolchain?
<mwalle> no own one
<kristianpaul> ok, best wishes :-)