lekernel changed the topic of #milkymist to: Milkymist One, Migen, Milkymist SoC & Flickernoise :: Logs: http://en.qi-hardware.com/mmlogs :: EHSM Berlin Dec 28-30 http://ehsm.eu
lekernel has quit [Read error: Operation timed out]
lekernel has joined #milkymist
sh4rm4 has quit [Ping timeout: 276 seconds]
sh4rm4 has joined #milkymist
wolfspraul has quit [Quit: leaving]
wolfspraul has joined #milkymist
pablojavier has joined #milkymist
<kristianpaul> anyone tried this http://plunify.com/ ?
<kristianpaul> lekernel: ^ :-)
pablojavier has left #milkymist [#milkymist]
<kristianpaul> ahh just altera..
<sh4rm4> it seems lekernel is currently putting together a new libc....
<sh4rm4> kristianpaul, maybe you should tell him about musl :)
<kristianpaul> ah yeah..
<kristianpaul> well
<kristianpaul> i guess he know about it, doubt it if evaluated
<sh4rm4> it uses the same math library, but it was heavily reworked to meet the standards
bkero has quit [Quit: WeeChat 0.3.7]
elldekaa has quit [Read error: Connection reset by peer]
rejon has joined #milkymist
rejon_ has joined #milkymist
rejon_ has quit [Client Quit]
rejon has quit [Client Quit]
voidcoder has quit [Read error: Connection reset by peer]
aeris has quit [Ping timeout: 245 seconds]
aeris has joined #milkymist
voidcoder has joined #milkymist
rejon has joined #milkymist
bkero has joined #milkymist
bkero has joined #milkymist
kilae has joined #milkymist
lekernel has quit [Ping timeout: 245 seconds]
lekernel has joined #milkymist
<lekernel> kristianpaul: received a few ads about it, never tried
<lekernel> sh4rm4: "to power a new generation of Linux-based devices"...?
<sh4rm4> the linux specific code is not that much, only a couple of syscalls...
<lekernel> anyway, I got most stuff to work with copy-and-paste from Linux (kernel)/NuttX/Newlib ...
rejon has quit [Ping timeout: 240 seconds]
<lekernel> by the way, anyone tried drawing arbitrary (ie not from a font) vector graphics with freetype? seems they already have a nice polygon/curve rasterizer with anti aliasing...
rejon has joined #milkymist
rejon has quit [Ping timeout: 256 seconds]
voidcoder has quit [Read error: Connection reset by peer]
kristianpaul has quit [Ping timeout: 272 seconds]
kristianpaul has joined #milkymist
xiangfu has joined #milkymist
voidcoder has joined #milkymist
xiangfu has quit [Ping timeout: 245 seconds]
xiangfu has joined #milkymist
rejon has joined #milkymist
xiangfu has quit [Remote host closed the connection]
elldekaa has joined #milkymist
Gurty has quit [Ping timeout: 265 seconds]
elldekaa has quit [Read error: Connection reset by peer]
elldekaa has joined #milkymist
elldekaa has quit [Remote host closed the connection]
elldekaa has joined #milkymist
Gurty has joined #milkymist
<Fallenou> OK, DTLB exceptions (on page faults) tests are passing on real FPGA :)
<Fallenou> same test that is passing on ISim
<wpwrak> coolness ! :)
Gurty has quit [Ping timeout: 265 seconds]
Gurty has joined #milkymist
<lekernel> Fallenou: great!
<roh> Fallenou: nice :)
<Fallenou> will post bios binary ready-to-be-flashed and mmu-enabled bitstream so that you could give it a try :)
* lekernel needs to post -ng instructions too
<lekernel> [{#{{[!! opencores login wall
<lekernel> I thought they were going to remove it...
<Fallenou> 10k luts
<Fallenou> seems to have quite a bit of functionalities though
<Fallenou> here you go :)
<Fallenou> for the bitstream you only need system.bit
<Fallenou> first flash the bios into nand, and then just load the bitstream into the fpga through jtag
<Fallenou> you will be able to test "detest" and "dtlbtest" commands (listed in the "help" command)
<Fallenou> you should get something like this : http://sionneau.net/mmu/page_fault_handling/tlb_tests_log.txt
<Fallenou> will push the corresponding bitstream and bios code to github in a few minutes
<GitHub144> [milkymist-mmu] fallen pushed 1 new commit to mmu: http://git.io/-BVhjQ
<GitHub144> [milkymist-mmu/mmu] MMU DTLB page fault handling working on FPGA - Yann Sionneau
<GitHub97> [milkymist-mmu] fallen pushed 1 new commit to mmu: http://git.io/kY6xzA
<GitHub97> [milkymist-mmu/mmu] Clearing data before reading it back from memory - Yann Sionneau
<Fallenou> coffee time !
<Fallenou> I more than welcome comments on the verilog or C code (even if C code is just there for testing purposes, to validate the hardware/gateware part)
<lekernel> i'll have a look
<Fallenou> ok thanks :)
voidcoder has quit [Read error: Connection reset by peer]
lekernel has quit [Quit: Konversation terminated!]
voidcoder has joined #milkymist
elldekaa has quit [Ping timeout: 244 seconds]
lekernel has joined #milkymist
<kristianpaul> Fallenou: great post !
<Fallenou> thanks :)
elldekaa has joined #milkymist
rejon has quit [Ping timeout: 245 seconds]
<Fallenou> bbl diner :)
<GitHub177> [milkymist-ng] sbourdeauducq pushed 1 new commit to master: http://git.io/3-YLeg
<GitHub177> [milkymist-ng/master] software/libbase: add fseek+ftell decls - Sebastien Bourdeauducq
<GitHub73> [misp] sbourdeauducq pushed 1 new commit to master: http://git.io/Kus77w
<GitHub73> [misp/master] Add light version of the Lua I/O library - Sebastien Bourdeauducq
<GitHub171> [misp] sbourdeauducq pushed 1 new commit to master: http://git.io/ovEn3g
<GitHub171> [misp/master] Lua I/O test - Sebastien Bourdeauducq
mumptai has joined #milkymist
<lekernel> kristianpaul: bare metal lua for your personal pleasure
<kristianpaul> wee :-)
<lekernel> lol http://dmitry.co/index.php?p=./04.Thoughts/07.%20Linux%20on%208bit
<kristianpaul> ah yes
elldekaa has quit [Ping timeout: 250 seconds]
<kristianpaul> eww seems i need llvm..
<lekernel> I'm writing complete instructions... mom
<lekernel> and yes, you need llvm. but not gcc anymore.
<GitHub46> [milkymist-ng] sbourdeauducq pushed 1 new commit to master: http://git.io/8qLoWg
<GitHub46> [milkymist-ng/master] README: software instructions - Sebastien Bourdeauducq
<lekernel> kristianpaul: you can start with that :)
elldekaa has joined #milkymist
<kristianpaul> Sure, readint now, Thanks !
<kristianpaul> reading*
<kristianpaul> compiler-rt ?
<GitHub49> [milkymist-ng] sbourdeauducq pushed 1 new commit to master: http://git.io/IhFTig
<GitHub49> [milkymist-ng/master] m1nor, FJMEM and UrJTAG clarifications - Sebastien Bourdeauducq
<lekernel> oh no! new lib! ;)
<kristianpaul> ahh
kilae has quit [Quit: ChatZilla 0.9.88.2 [Firefox 12.0/20120420145725]]
<kristianpaul> ok need to deliver a gift, bbl
<Fallenou> is this mother's day in your country too ? :)
<kristianpaul> that was may
<kristianpaul> now is father's day
<kristianpaul> may 13 for the record
<Fallenou> ok :)
<GitHub32> [misp] sbourdeauducq pushed 1 new commit to master: http://git.io/5lTmkw
<GitHub32> [misp/master] README - Sebastien Bourdeauducq
<Fallenou> Lua... python ... lekernel how many languages do you know ? :)
<wpwrak> Fallenou: "detest" ... nice command name :)
<Fallenou> omfg
<Fallenou> you just make me realize that :)
<wpwrak> heh :)
* Fallenou had a good idea to write down what the command name means in his e-mail
<Fallenou> did you test the binaries ? :)
<mwalle> what is misp?!
<mwalle> ah and congrats Fallenou :)
<Fallenou> it's a mips with a typo :p
<Fallenou> thanks !
<Fallenou> hi mwalle !
<Fallenou> it's the new software stack I think
<mwalle> for what to do?
<lekernel> acronym of milkymist software platform
<lekernel> also mips with a typo ;)
<lekernel> it will be a Lua environment with graphics/renderer/UI capabilities
<lekernel> to write the next MM software
<Fallenou> to ease development ? in comparison with C ?
<lekernel> yes
<lekernel> there are lots of cases where you don't need the speed of C...
<lekernel> and among other nice features, lua makes it trivial to have plugins/modules... which are a mess (to different degrees) to have with rtems/linux/fn
<lekernel> you just need a text editor. no toolchain, no FDPIC, etc.
<Fallenou> but you will have other threads running in parallel of the lua interpreter, right ?
<Fallenou> like dhcp, shell etc
<Fallenou> threads or processus
<lekernel> I plan to use nested interrupts for those
<lekernel> also for the real-time rendering
<mumptai> no more rtems?
<lekernel> the UI will use collaborative multitasking
<lekernel> no, no more RTEMS, no more autocrap, no more gcc
<Fallenou> collaborative multitasking ? :)
<lekernel> yes, with lua coroutines
<lekernel> or something similar
<mumptai> better watch out that your trash-can is big enough to take all that old stuff ;)
<Fallenou> it's alreay full
<Fallenou> USB takes room in the trash-can
<Fallenou> lekernel: so basically each task has to willingly sleep() to let other tasks being scheduled ?
<lekernel> yes
<Fallenou> ok
<Fallenou> does it have some kind of priority management ?
<lekernel> UI code is typically event driven... basically you feed the event to the appropriate thread
<Fallenou> yes, but sometime you have to do some compute heavy stuff in background
<lekernel> which runs until it has completely processed that event (no preemption, except by real-time interrupts)
<lekernel> like what?
<lekernel> in fact I don't :)
<Fallenou> if you want to move the mouse while doing a screenshot ?
<mumptai> typically that would be a call of library function that becomes implicitly atmoic, and take a lot of time to complete
<mumptai> (if scheduling is done explicitly in the code)
<Fallenou> for just the UI part I think it's OK, but sometimes the UI can need to trigger a big time consumming task
<lekernel> not here
<Fallenou> in this case everything would be frozen
<Fallenou> if you're sure such a case never happen then ok ^^
<lekernel> and still there's a solution - run the UI in some (low-priority) interrupt handler :)
<lekernel> and that compute intensive thread in non-interrupt mode
<lekernel> but we won't even need that
<mumptai> had that problem in control loop once, a soft-float operation took too long and it broke the scheduling of the mainloop (but the time scale was 10's of microseconds)
<Fallenou> why not using Lua interpreter as a RTEMS thread ?
<Fallenou> what's the problem ?
<Fallenou> so that you could easily have other threads scheduled by RTEMS
<mumptai> well, rtems
<Fallenou> and play with priorities
<Fallenou> and you still have nice Lua to do the UI, and capability to extend it
<lekernel> that would also work, yes. but with the rtems overhead and other problems.
<mumptai> is there a threading support in lua?
<Fallenou> mwalle: does interrupt support helps for the softusb stack ?
<lekernel> there are coroutines http://lua-users.org/wiki/CoroutinesTutorial
<Fallenou> mwalle: makes the softusb code use more efficiently the navre core ?
<lekernel> I wouldn't really call those threads though
<lekernel> it's a bit like python generators, if you're familiar with those
<mumptai> i am
<Fallenou> it's a non preemptive environment, the scheduler cannot preempt a task, funny scheduler :)
<mumptai> which is really annoying with python and its foreign function interface ...
<mwalle> Fallenou: actually its slower than polling, but i'm trying to implement usb device support and i need to to main work (eg assemble response, calc crc etc) and respond to usb packets quickly in the meantime
<mwalle> lekernel: btw the irqs worked for me ;)
<Fallenou> slower than polling ? that's counter intuitive ^^ ok
<Fallenou> but ok it allows to answer quickly when you really need to
<mwalle> Fallenou: well with polling you have almost no overhead; in, tst, branch
<Fallenou> and then return to your current work
<mwalle> if your using irq you have to save all used register to the stack etc.. :)
<Fallenou> sure
<Fallenou> are we supporting 1 kHz SOF ? 8 kHz SOF ?
<mwalle> the current mm? or my devicsupport?
<Fallenou> both
<mwalle> i'm dropping them really early atm ;)
<Fallenou> what does it mean "usb device support", aren't we already supporting at least some kind of usb devices ?
<Fallenou> hid, midi etc ?
<mwalle> and i guess mm generates them as required by the spec
<Fallenou> sorry for dumbs questions
<Fallenou> I'm not a USB pro :)
<mwalle> Fallenou: mm is a usb host, where you can usb devices
<mwalle> i'm trying to connect mm to a usb port on my pc
<Fallenou> oh right ... it's being late here (at least I'm tired ...)
<Fallenou> indeed device ... host ... ok
<Fallenou> afaik being a usb device is less cpu intensive than being a usb host. isn"t it ?
<mwalle> Fallenou: the challenge is to respond to requests in a timely manner
<Fallenou> you don't have to schedule between pipes , endpoints, isochronous / bulk transfers etc
<Fallenou> ok
<mwalle> for the acutal processing the spec grants you much time, like seconds for a reply
<Fallenou> what is your longer term goal when you will achieve usb device support ?
<Fallenou> oh ok
<mwalle> but you have to reply to usb packets with a NAK in a short time (if the device isnt finished with the processing)
<wpwrak> ah, cooperative multitasking fallacy. it's been a while that i've see that one. i guess each generation is entitled to their youthful mistakes :)
<Fallenou> ahah :)
* Fallenou is too young to approve
<wpwrak> it's an elegant and efficient concept. very pretty in textbooks :)
<mwalle> Fallenou: responding with NAKs would normally be the task of the HW, but since i'm doing that in sw.. ;)
<wpwrak> they loved to teach it at the university, and work on their own little system that had all this, and a lot more NIH. if there was work to do, we used a sun with unix ;-)
* mwalle imaging wprak as a very old white bearded grandpa
<mwalle> :b
* Fallenou would like a nice linux on his M1 :'
* Fallenou has to hurry to finish the mmu
<wpwrak> the good thing about IT is that things move quickly enough for you to be able to see quite a bit without having to much of your life on it ;-)
<wpwrak> Fallenou: yeah ! :)
<wpwrak> codename "steamroller" - a massive inexorable force that seems to crush everything in its way (according to WordNet)
azonenberg has joined #milkymist
<mwalle> lekernel: btw whats the difference between minimac2 and minimac3?
<Fallenou> wpwrak: (steamroller) a codename for what ?
elldekaa has quit [Remote host closed the connection]
voidcoder has quit [Read error: Connection reset by peer]
voidcoder has joined #milkymist
<wpwrak> for linux on the m1 :)
<kristianpaul> i had to admit coroutines are a joke, but is the best lua can provide afaik...
<kristianpaul> also you need to be clear on what is baremetal and in wich point become an os..
<roh> wpwrak: codenames are good ;)
<Fallenou> hehe I like this codename =)
<kristianpaul> any way, in my case i dont suffer from the last i hope, and filesystem support just got handy :-)
<roh> wpwrak: i am currently doing a networking project, where where my counterpart and i were really fast to agree in using 'nuclear disaster sites' for hostnames
<Fallenou> "fukushima is down, do you copy ?"
<wpwrak> roh: bikini ? :)
<Fallenou> pshhht noise
<roh> thats what the first host is named (fukushima)
<Fallenou> :)
<wpwrak> roh: japanese city names tend to be awkwardly long
<Fallenou> roh: and you use a steam punk decorated laptop and wear a pip boy like in Fallout ?
<wpwrak> what was the place again where the french did their heavily criticized tests ...
<roh> we will stick to energy and medical city/statenames first.. goiania chernobyl mayak windscale
<roh> Fallenou: hopefully not ;)
<Fallenou> wpwrak: a japanese place ?
<wpwrak> harrisburg
<roh> when we are done on the civillian sector we will continue with energy and war
mumptai has quit [Quit: Verlassend]
<wpwrak> roh: you can have kraftwerk sing some of the host names for you :)
<Fallenou> time to sleep here
<Fallenou> gn8 !
<wpwrak> ah, Moruroa
<mwalle> yeah here too
<mwalle> gn8
<roh> anyhow.. if you need a reliable source of sorted random lists.. choose something on wikipedia which starts with List_of_
<Fallenou> OpenRisc seems to have a MMU, maybe I could have a look at it, don't know where to find the souce code though
<Fallenou> *zZzZ*
rejon has joined #milkymist