<wolfspraul>
larsc: [regarding mmu and arch choices] so what do you think? linux without mmu is an option? or mmu is a must-have prerequisite?
<wolfspraul>
once I get my fpgatools to some working degree, I'll have a deep look at softcores, arch options, compiler options, kernel options
<wolfspraul>
so not anytime soon, but I start thinking about it :-)
<wpwrak>
linux without MMU is possible
<wolfspraul>
that I know
<wolfspraul>
but in the past it was always "not an interesting option for anything, really"
<wolfspraul>
unfortunately there's a number of pieces/question marks:
<wpwrak>
but you lose a few things, among them demand paging and memory protection
<wolfspraul>
1) does a software in an fpga make any sense?
<wolfspraul>
2) which arch should be chosen, a totally new one, existing one that is 'not so patent encumbered', or right in the middle of the evil empires with mips, arm, etc?
<wpwrak>
i'd say that no mmu is perfectly fine if you have a single-purpose embedded system
<wolfspraul>
3) which compiler, I guess llvm and gcc are the two mainstream options
<wolfspraul>
4) which microkernel or kernel
<wolfspraul>
5) mmu is a must-have or not
<wolfspraul>
and all those kind of interdepend on each other as well
<wpwrak>
but if you're doing development or have a more complex mix of applications, then you want that mmu
<wolfspraul>
since if a softcore makes no sense anyway, #2-#5 become easy to answer :-)
<wpwrak>
0) make sense for what ? :)
<wolfspraul>
typo: 1) /software/softcore/
<wolfspraul>
yep, right :-)
<wolfspraul>
that's where I think most people say mmu-less makes no sense, since the point of Linux is to run typical linux sw, a lot of which will require a mmu directly or indirectly
<wolfspraul>
and without mmu you may then be better off with a microkernel and static binary that just links it all in...
<wolfspraul>
which also ties back to your #0 :-)
<wpwrak>
you may still want the linux APIs
<wolfspraul>
skipping "what is this all for", it comes down to picking things that are reusable or 'help': 1) compiler 2) softcore-impl 3) arch 4) kernel
<wolfspraul>
maybe #0 needs to be answered first
<wpwrak>
that's often the case :)
<wpwrak>
of course, regarding 4), i'd rather strongly favour linux on anything that actually has something one would call an operating system
<wolfspraul>
so if there are questions about what this thing is or is about, I would be more than happy to receive them so I can write some good few paragraphs there...
<wolfspraul>
as of right now, the only designs (and bitstreams) it can write are empty ones :-) (and even those won't load into the chip because I skipped auto-crc for now...) :-)
<wolfspraul>
but that's not what I plan to write about in the intro and faq, obviously.
<wpwrak>
hehe, UNLICENSE :)
<wolfspraul>
yes, public domain
<wolfspraul>
unlicense.org
<hellekin>
GPLLLLLLLLLLLLLLLLLLLLL!
<hellekin>
:)
<wolfspraul>
azonenberg made me switch to public domain a while back and I think it was a great idea, more freedom
<wolfspraul>
hellekin: if it's PD, does that mean you can take it and put it under a GPL? who knows. I don't care :-)
<wolfspraul>
the intro should write about what fpgatools/libfpga is good for
<wpwrak>
PD does actually have some pitfalls, too. e.g., there are countries with a "public domain payant". when something enters the public domain there, the right to collect royalties moves from the copyright holder to a government (or government-assigned) entity
<wolfspraul>
since nothing works today, that's more of a 'what it should/could be' wishlist
<wolfspraul>
wpwrak: I don't care :-)
<wolfspraul>
I'm deep in the routing right now, routing wires between IOB and logic blocks
<wolfspraul>
need to spend some more time back with the bit as well, soonish because understanding the routing comes before bits imho
<roh>
wolfspraul: well.. you could just use some bsd licence
<roh>
only for the legalese convenience... its easier to decide where to be able to use the code and what one can link against with what obligations or limitations (if any)
<wolfspraul>
I'm in happy pd land now
<roh>
as long as its a 'legal wise complete' license... thats ok
<roh>
the important part is that one can link it to bsd and gpl code in the end and that it doesnt generate complicated issues that way
<wolfspraul>
I think it doesn't
<roh>
like 'no licence' or custom crap like what djb used a long time
voidcoder has quit [Remote host closed the connection]
<hellekin>
wolfspraul: the problem of public domain is that anyone can put a copyright on it and use it as its own. Including suing people who can't hire a lawyer to demonstrate prior art. I guess.
<roh>
since djb switched from custom shit to public domain there are also packages for his stuff in debian :)
<hellekin>
In an ideal world, I would stick to DWTFYWWI licensing
<hellekin>
roh: heh, then it's a Good Thing(TM)
voidcoder has joined #milkymist
* roh
stays with gpl for sw and lgpl for libs, cc-by-nc-sa for physical works like schematics or layouts (hardware) and bsd for bsd-sw i extend/write plugins for
<wolfspraul>
roh: you do -nc now?
<roh>
pd shouldnt be an issue as long as you document properly
<wolfspraul>
I will do PD for everything from now on :-)
<roh>
wolfspraul: for stuff i am not payed for yes... i like the 'copyleft' idea and nc helps getting money in in case somebody does want to use something commercially
<hellekin>
nc for hardware schematics?
<wolfspraul>
I highly doubt that, but ok :-)
<wolfspraul>
I cannot imagine anything more broken than the -nc -nd stuff
<roh>
nc just means 'you need to talk to me and we will find a solution'
<wolfspraul>
it's a nifty loose-loose setup
<wolfspraul>
nobody will
<wolfspraul>
it's one of the stupidest ideas around the whole "let's use copyright the right way" idea (not your fault to use it, if that makes you feel good...)
<roh>
nc doesnt mean one cannot use it commercially. it just means you need to ask and do a deal first. much more inviting than the usual commercial world. simply because you know what you are buying before you do.
<wolfspraul>
but yes, the public perception of all of this stuff is "noncommercial" anyway
<wolfspraul>
free = non-commercial
<wolfspraul>
the public perception has long moved on beyond all this
<roh>
nope. sorry.. can't agree there.
<wolfspraul>
and you can quite commonly find 'non-profit' organizations now that pay their top-executives million-dollar salaries
<wolfspraul>
welcome to the new world :-)
<roh>
most gpl sw is written in a commercial way. people got paid for doing that.
<hellekin>
I didn't know nc meant you can go commercial with copyright holder's permission
<wpwrak>
when i run into anything "NC", i just ignore it
<wolfspraul>
hellekin: nobody understands it
<hellekin>
that's a wholly new interesting tihng
<wpwrak>
the implied message is "i want to see money"
<wolfspraul>
and in fact people now just think all cc = non-commercial
<wolfspraul>
just ask :-)
<wolfspraul>
it doesnt' matter anymore, I think those are all arguments of the past
<wolfspraul>
in the long run it's all pd anyway
<hellekin>
that would avoid shit like seeing your face in advertising because it's on a cc-by-sa picture
<wolfspraul>
that's yet another angle, unrelated to copyright
<roh>
wpwrak: thats ok. nc means you can use it as you please. as soon as you sell it, you need to share your winnings some way. i dont see anything wrong with that. it doesnt hurt or limit anyone. it just makes a certain level or fairness concept.
<wolfspraul>
model releases etc.
<wolfspraul>
roh: nobody will care :-)
<roh>
i will surely switch to a non-nc model as soon as there is no commercial sw on the market anymore ;)
<hellekin>
roh: +1
<wolfspraul>
all cc is assumed to be non-commercial nowadays, imho
<wpwrak>
roh: there you're wrong. it's not just about selling but any commercial use. no matter how peripheral.
<roh>
wolfspraul: not more than they do now for licenses. but you know what holes gpl-violations makes in some companies ;)
<wolfspraul>
and I doubt there ever has been a single -nc case that was actually enforced, if that is even possible
<wolfspraul>
since those is some very complicated legalese and who knows what it actually means in an individual case
<roh>
wpwrak: cc-by-nc means you need to do 'what bsd does + deal' which can be a one-time payment for example
<wolfspraul>
so people simplify and lump it all up
<roh>
sadly gpl and similar sw-stuff isnt working on hw at all properly
<hellekin>
lucky you! rms is not using IRC :)
<wolfspraul>
including me, who has switched to pd for good :-)
<wolfspraul>
roh: do you know a single case, yourself or worldwide, where a -nc licensing of anything led to money changing hands later?
<wolfspraul>
counting on that would make me want to look for my tombstone :-)
<roh>
wolfspraul: i dont know a single court proven case for any cc license so far (havent searched yet)
<hellekin>
wolfspraul: people would not have to pay to visit your tomb. That's neat.
<wpwrak>
wolfspraul: and then there's the question of whether the money wouldn't also have changed hands without an -nc
<roh>
for gpl and bsd there are. for gpl even german ones
<roh>
given that there are 'patterns' of what can be mixed with what and under which circumstances and limitations for cc, gpl and bsd like licenses i would even say that 'open source' licenses make the legalese madness _easier_ than what we have now with commercial licensing.
<wolfspraul>
wpwrak: as I said I admire those -nc -nd achievements in cc for the most backward anything I could imagine
<wolfspraul>
it's so broken that itself deserves an award
<roh>
that its 'not easy' is no argument. its complete mayham now for anyhing besides those free licenses.
<wolfspraul>
and without hopefully adding much conspiracies here, there is reason to believe that damage was done to cc on purpose, by interested parties with second agendas etc.
<wolfspraul>
welcome to the real world
<wolfspraul>
roh: ohsure, I agree. was just surprised you went -nc now :-)
<wolfspraul>
since I doubt you will ever make 1 penny from that, which is sad
<wolfspraul>
I wish you would
<wpwrak>
wolfspraul: i fully agree. -nc is bait, to lure the naive. i don't even know why -nd exists :)
<roh>
wolfspraul: then please tell me how you want to make the only ones earning money in a 'consumer electronics market' contribute to the development of hw as well as sw.
<roh>
-nd is plain stupid
<wolfspraul>
wpwrak: those things were added by interested people in the right positions, for exactly the outcome we are seeing now
<wolfspraul>
cc = nc
<roh>
wolfspraul: wrong.
<hellekin>
nd is non-d what?
<wpwrak>
non-distribution
<roh>
non-nc cc you can just build in numbers and nobody could even sue as long as you do the 'by' or 'sa' which is possible
<roh>
hellekin: no-derivates
<hellekin>
oh yes
<roh>
no modifications. which counters all the cc idea.
<wpwrak>
ah .. yes, sorry :)
* wpwrak
should not multitask :)
<hellekin>
that makes sense for personal email I guess
<roh>
nc really just limits the 'making money without contributing back _some_ way' part seen from my view. maybe some lawyer can explain that in more detail
<hellekin>
nc would have made Nina Simone rich then
<hellekin>
or would she ahve been ripped off the same way?
<wpwrak>
roh: -by-sa pretty much accomplishes that, too. plus, nobody has to ask you for permission.
xiangfu has joined #milkymist
<roh>
wpwrak: well..no. it doesnt make sure other people contribute back to me when they get rich with my work
<roh>
my plan is basically to license -by-sa-nc stuff -by-sa to paying parties.
<hellekin>
gplv3?
<wpwrak>
roh: neither does gpl make sure people contribute back financially ...
<roh>
hellekin: doesnt work for hardware.
<roh>
wpwrak: true. but usually people do not earn money with software
<wpwrak>
roh: well, good luck with your model. i hope you'll invite us all to campagne and caviar when you've made your first million :)
<roh>
if they do, they usually use no gpl code or violate the license
<wpwrak>
ah, people don't earn money with software ? interesting :)
<roh>
to be fair, i dont see a sane way for making money with sw alone a sane way
<wolfspraul>
it's something we have to hold the fsf up for highly - that they never fell for making a little gpl-nc sister, although I am sure they had very attractive donor offers at some point to do that...
<hellekin>
I don't see a sane way to make money.
<roh>
its either insane in lock-in, or insane in complications on buying
<roh>
or both
<wolfspraul>
finally something a stubborn guy like rms is good for :-)
<roh>
wolfspraul: gpl-nc is there.
<roh>
wolfspraul: its all the thousands of cool, well written gpl libs which have a section of 'if you want you can buy commercial licenses' in the readme.
<wolfspraul>
sure but like I said the fsf did not waiver :-) thankfully!
<roh>
wolfspraul: not their job. thats what dual licensing is for.
<roh>
also.. who should get the money if its a multi-person thing?
<wolfspraul>
so few people today think gpl = nc. you can just point to redhat for a billion USD business and the discussion is over
<roh>
thats why it makes no sense to put it into a license for sw.
<roh>
or having shared works in such stuff. i am only talking of _my_ works.
<roh>
wolfspraul: true ;)
<roh>
the gpl moneymaking business is 'paying for service'
rejon has joined #milkymist
xiangfu has quit [Ping timeout: 276 seconds]
<wpwrak>
wolfspraul: your README needs illustrations :)
wolfspra1l has joined #milkymist
<wolfspra1l>
wpwrak: what is missing?
<wolfspra1l>
what questions do you have when you start reading?
<wolfspra1l>
I need to write a 1-2 paragraph intro for sure, just to explain in a few sentences what this is (meant to be) for
<wolfspra1l>
maybe I try first...
wolfspraul has quit [Ping timeout: 245 seconds]
xiangfu has joined #milkymist
<wpwrak>
wolfspra1l: well, a high-level overview of the FPGA. and then how the tools connect to each other.
<wpwrak>
(... and how they connect to the FPGA)
<wolfspra1l>
to get started, I am planning small 'hello world' type designs
<wpwrak>
yeah. we're all waiting for your first blinking led :)
<wolfspra1l>
first design will be an AND gate
<wolfspra1l>
just two wires in, one out, no clock
<wolfspra1l>
I doubt many people are waiting, but that's not so important to me. after I get the AND working, there's a lot more 'guts' to be done
<wolfspra1l>
A LOT
<wolfspra1l>
too many to list here even, but I try to get a little mental overview map with the TODO section in the readme
xiangfu has quit [Ping timeout: 276 seconds]
xiangfu has joined #milkymist
<wpwrak>
well, not waiting in the sense of checking every two minutes. but looking forward to it
<wolfspra1l>
too exotic. I think the jury is still out on where fpgas make sense at all
<wolfspra1l>
the more I learn about them the more I think about that
<wolfspra1l>
yes there are very interesting aspects, sure. but then maybe not...
<wolfspra1l>
that's one main thing I will discover for myself surely
<lekernel_>
m1's problem is marketing, that's all
<wpwrak>
i think they make mainly sense as peripheral controllers. if they can also incorporate a memory interface, even better. for an actual cpu core, they seem to suck.
<wolfspra1l>
there's a built-in memory controller in every s6
<wolfspra1l>
wpwrak: actually zynq goes in that direction that you have a regular arm core and the entire chip is 'like an arm', plus the programmable fabric around it for peripherals...
<wolfspra1l>
it comes down to what you want to build, your famous #0...
<wolfspra1l>
:-)
<lekernel_>
I've developed pretty much everything I wanted to do on the M1
<lekernel_>
on LM32, with FPGA
<lekernel_>
ARM stuff also has its problems...
<lekernel_>
and it's irrelevant anyway
elldekaa has joined #milkymist
rejon has quit [Ping timeout: 252 seconds]
kilae has joined #milkymist
elldekaa has quit [Remote host closed the connection]
voidcoder has quit [Read error: Connection reset by peer]
<wpwrak>
wolfspra1l: the built-in memory controller would probably need a bit of reverse-engineering before you can actually use it with unencumbered gateware, i guess
<wolfspra1l>
why that? it's just a primitive/device in hardware, and you wire up the wires via ise verilog/templates etc. and then it will work and shuffle data out and in, I would think
<wolfspra1l>
barring a 1000 details, of course
<wolfspra1l>
but the primary question is whether someone wants to use it or not. if there is a will there is a way.
<wolfspra1l>
I'm pretty sure more real world fpga customers that want to interface with memory will take a long hard look at the mcb before any other options
<wolfspra1l>
s/more/most/
<wpwrak>
if you can abstract it such that one could use a competitor's memory controller without having to change the code a lot, it may become a viable option
<wolfspra1l>
well no probably not, I would assume you pull in a lot of 'bloat' or infrastructure with it
<wolfspra1l>
but what is the alternative?
<wolfspra1l>
m1 has shown one, which more or less ends up with museum ready computing :-)
<wpwrak>
sure. it would seem the natural choice to pick the thing that's already been optimized for the task. on the other hand, there's that lock-in ... :)
<wolfspra1l>
what lock-in is that exactly? the first lock-in is the chip, the tools, the world
<wpwrak>
the new memory controller of M1 seems pretty decent
<wpwrak>
you're working on the tools already :) once the tools and the "library" are free, the chip matters a lot less
<wolfspra1l>
I'm pressing my update button in vein :-)
<wolfspra1l>
I do stay away from the mcb right now
<wolfspra1l>
it's just too much already, since I already struggle with distributed and block ram, etc. etc. and pretty much everything else
<wolfspra1l>
but the mcb definitely stands out a lot in how xilinx tries to increase performnace of their chips for their customers
<wolfspra1l>
so dismissing it is quite bold imho
<wpwrak>
think of it as their GPU :)
<wolfspra1l>
the larger fpgas has various other 'special high-performance' features I still know little about, but the mcb exists all the way to the smallest regular xc6
<wpwrak>
and then the basic rule applies: if you can't use it in a Free way, it doesn't exist
<wolfspra1l>
(it's disabled in the slx4 but the slx4 is not practically on sale)
<wpwrak>
well, if you can figure out how to integrate it, then it would be a viable choice
<wpwrak>
if not, it doesn't exist
<wpwrak>
"you" = wolfgang or someone else
<wolfspra1l>
I won't get to the mcb in months, at best
rejon has quit [Ping timeout: 276 seconds]
<wolfspra1l>
I would be happy to route one single wire from an IOB to the nearest logic block and back out, no clock, nothing
<wpwrak>
there's a lot of fun to be had elsewhere first, for sure :)
<wpwrak>
yes, that would already be a breakthrough
<wolfspra1l>
to get the mcb to do meaningful work, i think you have to route hundreds of not thousands of wires around
<wolfspra1l>
gee s/of/if/
<wpwrak>
i would say the mcb is currently very much at the edge of the map
<wolfspra1l>
definitely
<wolfspra1l>
but I want to see a real-world customer who dismisses the built-in mcb and decides to go with one manually written in programmable fabric...
<wolfspra1l>
unless some people are carrying forward old 'known good' designs that nobody wants to touch, I have a hard time seeing how that could make sense
<wolfspra1l>
other than for study/academic etc of course
<wolfspra1l>
prototyping
<wpwrak>
well, the current "real-world customer" will probably take a while to appreciate your work
<wolfspra1l>
anyway I know little about the mcb and it's not on my radar to learn about anytime soon
<wolfspra1l>
there are really thousands of detailed features in the fpga all over, that will keep me busy
<wpwrak>
fair enough. and if anyone asks for a memory controller, we can just suggest them to try sebastien's
<wolfspra1l>
sure
<larsc>
being able to switch a LED on and off with a switch and the 'wire' between them going through a FPGA would indeed be an great first step :) I'm looking forward to it full of excitement
elldekaa has quit [Read error: Operation timed out]
aeris- has joined #milkymist
voidcoder has quit [*.net *.split]
aeris has quit [*.net *.split]
xiangfu has joined #milkymist
elldekaa has joined #milkymist
xiangfu has quit [Ping timeout: 276 seconds]
xiangfu has joined #milkymist
mumptai has joined #milkymist
elldekaa has quit [Remote host closed the connection]
lekernel_ is now known as lekernel
<lekernel>
wolfspra1l: the milkymist-ng memory controller is probably faster than the mcb
<lekernel>
feel free to collect some hard numbers if you're interested :)
<lekernel>
the current one was brought up in the international space station earlier this week, so maybe it's not that bad after all
<lekernel>
if you want to criticize milkymist, look at the marketing, which is probably a much more fertile ground for such things than engineering
<larsc>
the milkymist-ng memory controller runs on the iss?
<lekernel>
no, the older one
<lekernel>
it takes years to get stuff approved ;)
<larsc>
still quite cool
<lekernel>
wolfspra1l: if milkymist is museum ready computing, then what is atmel avr?
<larsc>
lekernel: btw. any news on the final ehsm location?
<lekernel>
yes, berlin
<larsc>
ok
voidcoder has joined #milkymist
voidcoder has quit [Read error: Connection reset by peer]
voidcoder has joined #milkymist
voidcoder has quit [Client Quit]
voidcoder has joined #milkymist
xiangfu has quit [Ping timeout: 265 seconds]
jimmythehorn has quit [Quit: jimmythehorn]
<GitHub8>
[linux-milkymist] larsclausen pushed 1 new commit to master: http://git.io/WEw2rw
<GitHub8>
[linux-milkymist/master] lm32: Some signal handling cleanups - Lars-Peter Clausen
jimmythehorn has joined #milkymist
voidcoder has quit [Remote host closed the connection]
voidcoder has joined #milkymist
<GitHub111>
[linux-milkymist] larsclausen pushed 2 new commits to master: http://git.io/kYiPkA