#milkymist IRC log for Thursday, 2011-04-28

azonenberglekernel: http://code.google.com/p/homecmos/00:03
azonenbergsetting it up now00:03
terpstralekernel, "Normally, the entries in the x86 TLBs are not associated with any address space. Hence, every time there is a change in address space, such as a context switch, the entire TLB has to be flushed." -- even intel flushes the entire TLB on context switch!07:15
lekernelintel is no good example... the x86 architecture is slow, bloated and carries a staggering amount of cruft07:46
lekernelwho needs instructions for BCD arithmetic for example...07:47
azonenberglol07:50
azonenbergAnd that's why the softcore i'm writing is mips07:50
lekernelbut yeah, what else to do on a context switch with the TLB except rewrite all of it?07:54
wolfspraulazonenberg: from a freedom perspective, mips is a really bad choice. MIPS Inc. has made it clear many times, publicly, privately - they consider anything MIPS their territory and will defend it vigorously.07:56
wolfsprauljust for the record, and completeness. I'm not trying to discourage you.07:57
wolfsprauland that's also just from a freedom perspective and 'we want to be left in peace', not from a technical perspective.07:58
lekernelwolfspraul: btw you should check out azonenberg's work, it's awesome08:03
lekernelhttp://colossus.cs.rpi.edu/~azonenberg/papers/litho1.pdf08:03
lekernel(see also yesterday night's irc log)08:03
wolfspraulall the more reason for him to stay clear of mips :-) reading...08:04
wolfspraulI've read mips several times here in recent days, so I thought I bring in some of my experience. If you do anything mips without an architecture license, you are asking for trouble.08:13
wolfspraulyes, read azonenberg paper - EXCELLENT WORK! really fantastic stuff08:33
wolfspraulI will mention it in my upcoming 05/01 community news, give some people something to read :-)08:33
awxiangfu, have u built ethernet MAC successfully?08:45
xiangfuaw: what you mean? you mean write MAC address to BIOS?08:45
awyes. :-)08:45
xiangfuaw: yes. I can build that08:46
awxiangfu, great, teach me later. :-)08:47
juliusbwolfspraul: what about those longsoon processors?08:48
juliusbas far as I know they've paid MIPS not a cent, and it's kind of open season now with MIPS due to some patent on a particular set of instructions having expired08:48
juliusbah, i'm wrong - it looks like they caved and paid for a license in 200908:50
juliusbpussies08:50
juliusbbut that processor is particularly interesting as it contains some fancy x86 emulation stuff08:51
juliusband I think they did some work with QEMU so you could run x86 pretty quickly on the chips08:52
juliusbquite clever08:52
wolfspraulthey pay, I can google the press release if you like08:52
wolfspraulbbiab08:52
wolfsprauleverybody pays. mips will vigorously defend what they think is theirs.08:52
wolfsprauleverybody who wants to know can now, so it's up to everyone to decide.08:53
wolfsprauljust email them and ask :-)08:53
juliusbwhat a joke - OR1K is basicalyl MIPS-I08:54
juliusbyou extend OR1K and add the fancy things you want, you have MIPS basically08:54
juliusbwhy are they so protective over 25 year old crap08:54
juliusbit's not like we're stealing their silicon08:55
lekernelwell, no offense, but I do not think that OR1K is really used in the industry08:57
lekernelthat might explain partly the absence of trouble from MIPS you've had08:58
juliusbnone taken, but we wouldn't have any trouble from MIPS, though - it's similar but different enough09:03
juliusbif we were binary compatible you'd be in trouble but it's not09:03
juliusbanyway, it's just a thought - it's strange they protect their crap so much when it's really nothing special09:04
lekernelstrange? well, they want to make money :)09:04
lekernelat opencores too there are 'strange' things which are motivated by the desire to make money. that login wall for example. *grin*09:08
juliusbsure, but why flog a dead horse of some old architecture, make money off good implementations or something09:11
juliusbI guess they're in ARM's game now - selling licenses, except ARM sell good RTL, too09:11
terpstralekernel, you could keep tags in the TLB just like in L1 cache -- then you wouldn't need to flush it09:11
terpstraso if you had two very tightly cooperating processes passing data via a FIFO (and thus the kernel) you could rapidly switch from P1, kernel, P2, kernel, ...09:12
terpstraand not need to reload the TLB at all09:12
juliusblekernel: right now they don't even make enough from the site to cover the running costs, somehow09:12
juliusbmy argument is removing the login wall would make it more popular09:12
terpstrafrom what I've been reading, a fully associative tagged TLB would pretty much remove the penalty of reloading it from software.09:15
terpstrabut that costs area :-/09:15
wolfsprauljuliusb: do you have in writing that MIPS sees no IP overlap with OR1K?09:37
wolfspraulbasically first of all you need to stay away from their trademarks, let's start with 'MIPS'09:37
wolfspraulthe plasma guys found this out the hard way09:37
wolfspraulif you've done that, you have to be careful about the PDFs you are reading. pretty much all recent MIPS PDFs come with very explicit terms, 'strictly confidential', etc. etc.09:38
wolfspraulif you accidentially copy something from such a document, or draft some design after what you've read there - not good09:38
wolfspraulthen you have the patent issue, and the problem here is that MIPS will vigorously protect their 'ecosystem'. So this is not just "patents on our old instructions are all expired".09:39
wolfspraulyou can try that, let's just say this way - the Chinese government (!) tried this, and after years of struggling gave up.09:39
wolfsprauldo you seriously believe you have more power, financial backing, anything, than the Chinese government? :-)09:40
wolfspraulalso MIPS keeps filing for patents all the time, so even if you manage to implement something that can stand their legal tests (lawsuits against you) - you are still stuck in the past, because all paths forward will be patent-mined by MIPS.09:40
wolfspraulbottom line - not a good idea _from a freedom perspective_ (and only that)09:41
terpstrawow. now i hate mips.09:41
wolfspraulno need to hate them more than ARM, Intel, anybody else in semiconductor. They are all IP shops and vigorously defend their IP.09:42
wolfspraulMIPS is quite open and honest, I have no problem with them.09:42
wolfspraulit's more that some people hold this stubborn belief that MIPS is 'open' :-)09:42
terpstrahmm09:43
wolfspraulI have looked into this quite deeply for a while, my last updates were about a year ago or so. It was all clear then. MIPS Inc. can change course, but I doubt it. So that's my disclaimer. "Wolfie's news haven't been updated since mid-2010"09:43
wolfspraulI met with a very senior MIPS officer over this, I have first-hand relationships with Chinese MIPS licensees.09:44
wolfsprauland from the distance (as a news reader) I've seen plasma etc. and what was published there (which is sometimes not the whole story, but anyway I can just read...)09:44
wolfspraulso I was happy to see that Sebastien chose a Mico32 core for Milkymist :-)09:45
wolfsprauloh I'm just googling and read that the Chinese govt plans to buy a 20% stake in MIPS Inc.09:47
wolfspraulhttp://www.technologyreview.com/blog/mimssbits/25298/09:48
wolfspraulhttp://www.pcworld.com/article/166669/chinese_chip_project_licenses_mips_architecture.html09:48
wolfspraullet's hope that the 20% thing will not go through09:48
terpstraoh?09:48
wolfspraulworst case MIPS had to make that concession already when ICT (Chinese govt) accepted the architecture license.09:49
wolfspraulthose deals are dirty :-)09:49
wolfsprauland everybody just wants power and money, surprisingly :-)09:49
wolfspraulstay away from MIPS, that's all I can say09:50
wolfspraulif you care about freedom09:50
juliusbwolfspraul: very interesting, thanks for the comments09:53
juliusbthere's some MIPS clones on OpenCores09:53
juliusbwe've heard nothing about it09:53
wolfspraulMIPS tries to make money, not stir up emotions.09:55
wolfspraulthe plasma project renamed everything to 'plasma', which is good09:56
wolfspraulplasma is on opencores, no?09:56
wolfspraulwhat examples of commercial use of non-officially licensed MIPS implementations are you aware of?09:57
wolfspraulalso keep in mind - for a business signing that license may not be something that bad, after all09:58
wolfspraulit's just 5-10 cents per chip09:58
wolfspraulunless a business the intention of competing with MIPS, why would they opposed to paying this?09:58
wolfspraulthey will focus on their customers, value generation, etc. not on endless fights over 10 cents that everybody else is paying as well.09:58
wolfspraulMIPS will probably not approach you unless your sales reach 10 million units or so, it's not worth the effort for them to contact you before that :-)09:59
wolfspraulalso, let me say something in defense of MIPS. MIPS is not a patent troll.10:00
wolfspraulthey are a serious IP-based fabless semiconductor company10:00
wolfspraulthey will offer everybody very reasonable rates for licensing their technology, and they have different license levels10:01
wolfspraulI think it's a very professionally run, legit and honest company. Like ARM from the distance (I don't know much about ARM, much less than I know about MISP).10:01
wolfspraulMIPS just wants to be as successful as ARM, that's all :-)10:01
wolfspraulfair enough, I think. They are _NOT_ a patent troll.10:01
wolfspraulthey do hard work and continuously improve their stuff, which you will get access to if you sign their licenses.10:02
juliusbSure, I admit that probably both ARM and MIPS won't contact you until you're selling things in volume without a license10:26
lekernelas a matter of fact, ARM did that with nnARM ...10:27
juliusbI wonder, as well, if there's a case of people being hunted down who are suspected of having a particular ISA supported but not having a license10:27
lekerneleven though it was just a student project of mediocre quality10:27
juliusb... but not selling their chips to others, I mean - jus thaving it in a product, but making use of the software for the platform, say for ARM10:28
juliusbthe BlackARM too, was the one done here in Sweden that earned a request from ARM to be removed10:28
juliusbbut that was years ago10:28
wolfspraulthere are some companies in Taiwan that claim to have clean-room ARM implementations, forgot the names. faraday or so? I'm not sure how the story continued, just heard it once years ago.10:29
wolfspraulhttp://en.wikipedia.org/wiki/Faraday_Technology10:30
wolfspraulI think that was one of them.10:30
wolfspraulbut whatever contracts exist between ARM and Faraday, I guarantee you 100% neither side will say 1 word :-)10:30
wolfspraulwhy should they...10:30
wolfspraulwe could theoretically talk to companies like Faraday about Milkymist. See how scared they are about copyleft, and if not, whether they think there are any business opportunities somewhere.10:33
wolfsprauleven if in the end we only learn that there is no way they will use it, it's probably worth the try - not now, maybe a little later10:33
lekerneljuliusb: your SoC on http://opencores.org/donation features a DDR2 controller. what ASIC cells do you plan to use for the DDR2 I/Os ?11:24
lekernelthose are rather difficult to make afaik11:24
juliusbi know nothing of this11:24
juliusbto me it's not clear how set in stone this ASIC is11:24
juliusbI'm a bit critical of this whole thing, and i'm not involved in it internally here at ORSoC for now, so can't really answer questions11:25
juliusbi have as many as you probably11:25
juliusbif it goes ahead, which i'm a bit skeptical about, it depends largely on how much money they get11:30
juliusband what they can afford11:30
lekernelto me it depends more on technical skills than money... medium/small ASICs in 350nm in China are only in the tens of thousand dollars11:31
wolfspraulthat donation page sounds scary to me :-)11:33
lekerneland given how the vast majority of the Opencores IP that I have tried in my FPGA have technically failed miserably (which is the reason Milkymist uses none btw), I'm quite skeptical how this ASIC would ever happen11:33
wolfspraul"the world's only "true" open-source 32-bit RISC processor supporting Linux (the OpenRISC processor from OpenCores.org)"11:34
wolfspraulis this true?11:34
lekernelno, there's LEON311:35
lekernelwhich is GPL and has a MMU, which cuts all LM32 related discussions :)11:35
lekerneland more recently OpenSPARC11:35
wolfspraulyeah11:36
wolfspraul"profit-hunting semiconductor giants who only provide "cost efficient prices" to large multi-national companies"11:36
wolfspraulargh11:36
wolfspraullet's see what that thing costs when it's all said and done, if ever :-)11:36
wolfspraulI think such chips have to enable new applications, or faster time to market.11:39
wolfspraulthere's not 1 word about that kind of reasoning on the whole page11:39
wolfsprauljust donate and revolution :-)11:40
juliusbya, I think the whole "only true open source" CPU isn't accurate11:58
wolfsprauljuliusb: ok if you can feed this back, here's my worthless wisdom on this12:02
wolfspraulin hardware, you convert money to something physical, right? in manufacturing...12:02
wolfspraulnow, how do you convert it back to money? very hard. have to sell fast!12:02
wolfspraulso you need customers first12:03
wolfspraulvery important12:03
wolfspraulthat's the one thing the nvidia founder and ceo has said over the years, "sell first, then make"12:03
wolfspraulso... for your asic plans. you first need a customer, who puts in a large enough order, with some down-payment.12:03
wolfspraulI doubt you will find a customer because you say your chip is a 'revolution'.12:04
wolfspraulif you cannot, you can try with a) "this chip enables an application that you cannot otherwise implement easily, or at all"12:04
wolfspraulb) "our process is so fast that you can have this hyped feature XYZ everybody is talking about right now on the market 3 months before others"12:04
wolfspraulthose 2 arguments are known to work well. I doubt you can do something like "this is the highest overall performance chip in the world", or "whole smartphone on one chip"12:05
wolfspraulso you focus on application, and/or time-to-market12:05
wolfspraulthen get an order12:06
wolfspraulthen asic12:06
wolfspraul:-)12:06
wolfspraulthere is no revolution at all in making a random asic that will then not sell12:06
juliusbI agree12:06
juliusbthere's no numbers been presented yet12:06
wolfspraulit's just a pile of silicon you can stock somewhere. at least the boxes are not very big.12:07
wolfspraulwell the whole page doesn't look like a good start, to be honest12:07
roh350nm asic? muah...12:07
rohthe 80s are back12:07
wolfspraulroh: many many chips are still made in 300nm, 500nm, 1um, etc.12:07
lekernelroh: you'd be surprised how many chips are still manufactured to day in that tech12:07
wolfspraulit's all about economics, in manufacturing12:07
wolfspraulabsolutely [lekernel]12:08
rohwolfspraul: really? not only low-clocked stuff?12:08
lekernelafaik 350nm is some 2-5 times faster than the crappy spartan6 we use in this project12:08
rohi mean.. how high can clock go with that? 100mhz?12:08
rohlekernel: it does? wow..12:08
lekerneldepends what you do, like with FPGAs...12:09
wolfspraulI don't want to make up applications now, but I do know for sure that 350nm 500nm are very common processes.12:09
wolfspraulmanufacturing is about economics, nothing else12:09
rohwolfspraul: sure.12:09
wolfspraulso if someone can be made on written-off equipment, it's very hard to compete with that12:09
wolfspraulyou need a good reason to move to a higher process node, because you have to make the 'moving up' costs back12:10
rohwolfspraul: hrhr... you will love the new space here.12:10
rohwolfspraul: if there would be enough money to get some used equipment.. there would be enough space in this building to set up a entire factory for stuff.12:11
wolfspraulyeah I need to speedup coming there, and not be bankrupt before I do :-)12:11
roh;)12:11
wolfspraulroh: did you see the azonenberg paper posted earlier?12:11
wolfspraulhttp://colossus.cs.rpi.edu/~azonenberg/papers/litho1.pdf12:12
rohnope... i dont get to much besides working on the infrastructure here and sleeping atm12:12
rohwolfspraul: nice one12:14
wolfspraulI've seen this chart once from the Ilitek guys making drive-ics for smartphone (and other mobile) lcms12:16
wolfspraulthat's one hell of a competitive IC market, with volumes in the hundreds of million of units12:16
wolfspraulso the prices even go to fractions of a US cent :-)12:16
wolfspraulthey are constantly trying to reduce die size, and they will do a tape-out whenever they have reached about a 20% reduction in die size12:17
wolfspraulbecause the cost of going to a new layout and/or process can be made back from the 20% lesser space, over time12:17
wolfspraulwith increased volume, the percentage changes (i.e. with higher volume, even a lower saved percentage may justify the cutover)12:18
wolfspraulI've heard about and talked about die size many times more than about process technology (how many nm)12:18
wolfspraulin very high volumes (hundreds of million), I guess die size is the stronger indicator for cost than which process you manufacture in, so that's the one first being optimized for12:20
rohmmmh.. i am not that impressed by the soc of the last 2-3 years12:20
rohloads of low-end crap. nothing really nice.12:21
wolfspraul_first_, not the only one. of course process is also important, and in digital circuits it seems to be 'relatively' easy to switch between processes12:21
rohe.g. there are shitloads of socs specialized for some usecases like 'digital picture frame'.. but they are completely useless since there is not compiler, no useable documentation, no performance besides decoding jpegs... etc. boring stuff.12:22
roh-t12:22
wolfspraulis the silicon wafer the same whether you manufacture in a 300nm or 45nm process?12:22
wolfspraulroh: yeah, that's why we need to introduce some free software and free IC designs there :-)12:23
rohdunno. i think there were some 'regular' wafer formats.. something like 6cm -> 30cm -> whatever12:23
wolfsprauland I think there is a business opportunity somewhere, if we just manage to kick it alive...12:23
rohwith some steps in between12:23
wolfspraul6'' 8'' 12''12:24
wolfspraulI'm just wondering whether it is the exact same wafer, irrespective of process technology.12:24
wolfspraulor whether it's different material for a 45nm process, vs. a 500nm process12:24
wolfspraulprobably not12:24
rohi guess there will be different levels of material quality12:25
wolfspraulI'm not sure, and I wouldn't be surprised if it's the same.12:25
wolfspraulif it's the same, that would also explain why many people on the manufacturing side care more about die size than process technology12:26
rohwolfspraul: the die is round and bigger die gives more yield per 'good run'12:27
wolfsprauldon't understand12:28
rohalso because the ones on the 'sides' obviously are scrap12:28
rohtry placing sqares on a round surface ;)12:28
wolfspraulI don't think that scrap around the round edge matters, unless you are producing huge chips12:28
rohhttp://en.wikipedia.org/wiki/Semiconductor_device_fabrication seems interrresting12:29
wolfspraulCanon produced one CCD chip sized 10x10cm or so once. or even bigger (trying to find the url)12:29
wolfspraulso normally the chips are much smaller12:29
lekernellarsc: do you have a @uni-hamburg.de email address?12:29
wolfspraullike 5x5mm12:29
wolfspraulthe advantage of a larger wafer is just that many worksteps have fixed costs, and with a larger wafer you can divide those costs by more chips that are fitting on the larger wafer12:30
lekernellarsc: if so, could you use it to request http://www.webmproject.org/hardware/ ? maybe they care more about academic institutions than open source projects ...12:30
wolfspraulthe downside is that the entire line needs to be equipped with more expensive gear12:30
wolfspraulroh: http://techon.nikkeibp.co.jp/english/NEWS_EN/20100902/185407/12:36
wolfspraulthat's a chip12:36
wolfspraul202x205mm just for the die12:36
lekernelwhoa... i'd guess the yield could be pretty low on that one12:37
rohwolfspraul: well.. its pretty rare to have such cases12:37
rohif you arent building big multicore cpus ;)12:38
lekernelthe LHC has some scary silicon detectors too12:38
lekernelabout the same size12:38
wolfspraulroh: not sure, it seems to be used in x-ray applications for example12:40
wolfspraulsee the speculation in the comments section here http://image-sensors-world.blogspot.com/2010/08/canon-develops-8-by-8-cmos-sensor.html12:40
wolfspraulx-ray fluoroscopy applications12:40
wolfspraulit's a big world, I don't know12:40
wolfspraulmany things are made on semiconductor manufacturing lines...12:40
guyzmoola12:41
lekernelhi guyzmo12:42
guyzmogot a cable that works12:42
guyzmothanks to the light technician at la Gaîté Lyrique12:43
wolfspraulroh: reading those wikipedia semiconductor pages doesn't give a clue whether the wafer is different depending on process12:45
wolfspraulI wouldn't be surprised if it's not, you get that impression from those articles too.12:45
rohtrue.12:45
rohi found the table with years and µm scale nice12:45
wolfspraulfor a manufacturer, the cost of a chip has to do with die size, more than with process technology12:46
wolfspraulgoing to a higher process technology has a lot of one-time costs, and then maybe you can work with less fabs. And those fabs may give you access to the later technology only if you share some of their costs in turn, like all their customers who access that process technology.12:47
wolfspraulbut in the end that's just a system how to finance the huge one-time costs of moving up12:48
wolfspraulif you leave those out (which you cannot), then a chip will always just cost as much as the square millimeters it needs from the wafer12:48
wolfspraullike a piece of a cake :-)12:48
wolfspraulso those different costs and who shoulders them and at what time are a bit inter-twined with each other, but still pretty clear if you think about it for a while12:49
kristianpaulnice paper azonenberg!12:49
wolfspraulI'm wondering if you look at companies like asml making lithography systems, how many 350nm 500nm or even bigger systems they are still selling today, if at all.12:52
wolfspraulhttp://www.asml.com/12:53
wolfspraulwe should talk to an asml sales guy one day :-)12:53
wolfspraulso the 500nm fabs still operating today - are they only operating on old, written-off equipment, or can you buy (cheap?) 500nm production equipment still today?12:54
wolfspraulok a quick look on their site seems to suggest that they are still selling 365nm systems today http://www.asml.com/asml/show.do?ctx=6720&rid=3265612:57
guyzmokristianpaul, lekernel - I wrote http://pastie.org/1843195 to test the DMX from Lua, and it just doesn't work12:58
lekerneldoes it work from flickernoise?12:58
lekerneland, did you enable the DMX driver?12:58
guyzmoyup, it works in flickernoise12:58
lekernelfinally how can you be sure that f:write writes one byte and the right one?12:59
lekernelI see no indication of type12:59
lekerneldoes opening /dev/dmx_out work?12:59
guyzmoah, I have done nothing about DMX during the compilation13:00
guyzmowhen I open /dev/dmx_out it does not complain13:00
guyzmoso I suppose it works13:00
lekernelcan you try reading the values back from it?13:00
lekerneland how do you know it would complain when opening fails? instead of silently failing?13:01
lekernelanyway. if you didn't enable the DMX driver, I don't think it has any chance of working13:01
guyzmohow do I enable it ?13:02
lekernel#define CONFIGURE_APPLICATION_EXTRA_DRIVERS DMX_DRIVER_TABLE_ENTRY13:02
lekerneland  #include <bsp/milkymist_dmx.h>13:02
lekernelsplitnode ftw ... :(13:03
juliusb_ya what's the go with this, I don't understand netsplits yet13:04
guyzmolekernel - and where shall I add those ?13:04
larsclekernel: sure (use my uni email address to request the vp8)13:05
lekernelI don't know. checking13:05
lekernelsrc/luam.h13:06
guyzmojuliusb_ - on IRC you got the clients (you and me) and the servers; there is two kind of servers the hub nodes and the leaf nodes ; usually the hub nodes are the backbone of the IRC network and the leaf nodes connect to the clients. A net split happen when one server looses connectivity with the other servers from the network13:07
lekernelbut pray... as it turns out this file lacks a proper RTEMS configuration section13:07
lekernelgrmbl13:07
guyzmolua.h or luam.c ?13:07
lekerneladd this at the end13:07
lekernel#define CONFIGURE_INIT13:07
lekernel#include <rtems/confdefs.h>13:07
lekernelluam.c13:07
lekernelyou may need to add other stuff for it to work. my first advice was assuming that the Lua port correctly configured RTEMS but it does not.13:08
lekernelyou can have a look at flickernoise/src/main.c for the correct way of configuring RTEMS13:09
guyzmook13:09
lekernelnote that with the way Flickernoise uses RTEMS the entry point is rtems_task Init(rtems_task_argument argument)13:10
lekerneland not int main()13:10
lekernelbut you can simply call main() in Init()13:10
lekernellarsc: kewl, thanks13:14
lekernelguyzmo: does it work?14:11
guyzmonot yet14:14
guyzmofails loudly14:20
lekernelpastebin?14:29
guyzmohttp://pastie.org/184349314:32
lekerneldid you include <rtems.h> ?14:34
guyzmonope14:34
guyzmothen, shall I #include <bsp/milkymist_dmx.h>14:34
lekerneljust copy the Flickernoise initialization stuff14:34
lekernelyes of course14:34
guyzmobut not the shell stuff14:35
guyzmoas there is already a shell14:35
lekernelhttps://github.com/milkymist/flickernoise/blob/master/src/main.c14:35
lekernelno, not the shell things14:35
guyzmoyup, I'm on it14:35
lekernel#include <rtems.h>14:35
lekernel#include <bsp/milkymist_usbinput.h>14:35
lekernelthen from line 252 and onwards14:35
lekernelremove the filesystem stuff as well14:36
lekerneljust use14:36
lekernel#define CONFIGURE_APPLICATION_NEEDS_LIBBLOCK14:36
lekernel#define CONFIGURE_USE_IMFS_AS_BASE_FILESYSTEM14:36
lekerneland remove #define CONFIGURE_HAS_OWN_FILESYSTEM_TABLE and following lines until 28214:36
lekernelthen just copy and paste the rest, a lot of stuff would be quite useless but wouldn't hurt either14:37
lekernelah and increase #define CONFIGURE_INIT_TASK_STACK_SIZE (8*1024)14:37
lekerneluse 1024*102414:37
lekernelfinally, add a Init() function that calls main()14:37
lekernelthat should do it14:37
lekernelonce it works send the patch to devel@lists.milkymist.org14:37
guyzmortems_task Init(rtems_task_argument argument)14:38
guyzmodoes not have a return statement ?14:38
lekernelfor CONFIGURE_APPLICATION_EXTRA_DRIVERS just use the DMX drivers, remove the others14:38
lekernelit returns void (afaik) and doesn't need it14:38
lekernelanyway flickernoise calls rtems_task_delete(RTEMS_SELF) which immediately terminates the task14:39
guyzmook14:39
lekernelthe init task is destroyed in flickernoise, but it would keep running in your Lua port14:39
lekernelyou don't even need to care about main() returning, since it should not14:39
guyzmocompiled14:41
guyzmotrying it out14:41
lekernelimo the next problem you will run into is that Lua won't write a binary byte to the file14:42
guyzmothere's a binary mode for open()14:42
lekernelok, but how do you tell the write function to write exactly one byte?14:43
lekerneland not a 4-byte word with the first 3 bytes being zero14:43
lekernelor the string '255'14:43
guyzmohm... not sure yet, I'm still new to lua14:43
guyzmobut I'm gonna RTFM14:43
guyzmogot 2h :)14:44
guyzmobtw, it's 10x bigger14:44
guyzmofrom 300k to 3M :)14:44
guyzmo(the luam kernel)14:44
lekernel3M? wtf...14:44
lekernelflickernoise is 1.5M14:44
guyzmo[FLTERM] Uploading kernel (3420649 bytes)...14:44
lekernelare you sending the right binary?14:45
lekernelafter objcopy -Obinary ...14:45
guyzmohan...14:45
Action: guyzmo autoslaps14:45
guyzmoI forgot the objcopy14:45
guyzmoI added it to the makefile14:46
guyzmobecause I will always forget that..14:46
guyzmo[FLTERM] Uploading kernel (378776 bytes)...14:47
guyzmobetter :)14:47
guyzmo\o/14:48
guyzmoit works14:48
lekerneldmx too?14:48
guyzmoyup14:48
lekernelgood :)14:48
guyzmoI sent 255 and got ... something14:48
guyzmo:)14:48
lekernelwell I guess it wrote the string '255' ...14:49
lekernelbut i'm not a Lua expert :-)14:49
lekerneljust judging from what high level interpreted languages usually do...14:49
guyzmodon't think so... iinw it's strongly typed14:49
guyzmonot all high level languages are like php or perl ;)14:49
lekernelhttp://pastie.org/1843195 doesn't exactly sound like strongly typed for me14:50
guyzmowell, let's RTFM14:50
guyzmodynamically and strong are two different things :)14:50
lekernelok, let's spam a bit to get people to fabelier :)14:51
guyzmohehe :)14:51
lekernelit's at gaite lyrique right?14:52
guyzmoanyway, thanks for your patience and your help14:52
guyzmoyup14:52
guyzmoat 7pm14:52
lekernelstill have the original announcement somewhere?14:52
guyzmohum on the tmplab ML iirc14:52
lekernelI deleted it ...14:52
lekernelah http://fabelier.org/lua-programming-language-by-julien-danjou/14:53
guyzmoyup14:55
lekernelguyzmo: http://twitter.com/milkymistvj - retweet it on h:D15:02
guyzmodon't have access to the h:D twitter account15:13
guyzmothat's john15:13
kraehe*ui* moin - this is a full chan - just joined after talking to guyzmo15:40
guyzmolekernel - I found kraehe on #lua asking for a few rtfm pointers about files, binary and stuff15:41
lekernelhi kraehe15:41
guyzmoand he got very interested in the milkymist and had many questions I couldn't answer :)15:42
kraehemoin - the first is about the name - is milkymist related to milkytracker (gui of dmxtable does not look milky to me ;-)15:42
guyzmo:)15:42
kraeheand more important, guyzmo told that there is still free space on the fpga15:43
kraehewould this space be big enough for an ADC for multi channel audio recording (e.g. 768khz summed up for 16 audio channels)15:44
lekernelno it's related to milkdrop15:46
kraeheand about size - does it have usb drivers for korg nanno eq - would make a nice usb to midi converter for those toys15:46
azonenbergkraehe: how do you expect to implement an ADC on an fpga?15:46
lekernelthe adc driver itself would definitely fit, beyond that it depends what you need to do with the sampled signals15:46
azonenbergoh, you mean an adc driver?15:47
lekernelyeah, I'd guess he means external ADC ...15:47
kraeheexternal ADC wont fit - e.g. my NI has PCI15:47
kraeheand miniPCI ADCs are even more expensive15:47
lekerneland there will be USB drivers for your korg device only if someone (e.g. you) writes them :-)15:47
kraehei more thought in terms of embedding the ADC+multiplexer on the fpga itself15:48
lekernelyou can't put an ADC in the FPGA fabric. FPGAs are digital components.15:49
kraehe*hm* ok - so this would require some additional HW ;-( i'm not the hw guy - more a softworker15:52
kraeheback to the korg nano's - they appear as normal usb-midi under linux. Does the rtems OS already have an USB-midi driver?15:55
lekernelwe don't even have a full USB stack atm15:56
lekernelonly support for input devices15:56
kraeheso your usb is only keyboard/mouse currently?15:56
lekernelit is technically possible to support all USB devices, but the USB standard is a toxic waste dump of overengineered protocols so doing so would be extremely painful15:57
kraehe;-(15:57
lekernelyes15:57
lekernelthat being said, some masochistic people seem to like USB, and having full support for it would be a valuable contrib15:58
kraehewould be easier with rt/linux i think15:59
lekernelno15:59
lekernelit's the same15:59
kraeheexcept that someone else already wrote the linux driver16:00
guyzmook, think I'm ready for the event :)16:02
guyzmowrote a few lua functions16:02
guyzmoand it would be really fun if we could control a full stage with the device :)16:02
lekernelthat small driver is actually the easy part16:03
lekernelthe big problem is the USB stack and OHCI (or OHCI-like) controller16:03
mumptaihi16:04
lekernelthere's a USB stack in RTEMS (ported from BSD) which would support a generic OHCI controller though16:04
lekernelbut OHCI is a royal pain in the ass16:04
mumptaimhmm, sounds like a challenging thesis topic ;)16:05
lekernelwhat? writing an OHCI implementation?16:06
lekernelsure, please do :)16:06
mumptaiwrote my thesis years ago ;)16:07
guyzmohttps://github.com/guyzmo/milkymist-lua16:17
mumptaiwell, i think i can't really help16:17
lekernelwe should charm Sarah Sharpe into joining this project ;-)16:20
larscto get usb3 support?16:26
lekerneljust proper usb1 would be nice already :-)16:29
Action: guyzmo leaving for the event16:30
guyzmolekernel - mail sent, patch done, github tree forked16:30
lekernelguyzmo: good luck have fun and thanks :)16:31
guyzmoavec plaisir ;)16:31
CIA-48milkymist: Sebastien Bourdeauducq master * r00eea7c / (5 files in 4 dirs):17:15
CIA-48milkymist: BIOS: disable splash screen and console to prevent unnecessary screen flickering17:15
CIA-48milkymist: The BIOS now disables the video output completely unless one of the following conditions is met:17:15
CIA-48milkymist: * Boot in rescue mode17:15
CIA-48milkymist: * Boot failure17:15
CIA-48milkymist: * Boot aborted by user17:15
CIA-48milkymist: * Power button pressed for more than 1 second (approx.) - http://bit.ly/iQVrG217:15
juliusb_it's the CIA!!!17:27
juliusb_burn the CIA17:27
juliusb_hehe17:28
Action: guyzmo @lua event17:33
guyzmoand I'm ready :)17:33
CIA-48rtems-milkymist: Sebastien Bourdeauducq master * r8e8c101 / c/src/lib/libbsp/lm32/shared/milkymist_gpio/gpio.c : GPIO: do not use generic GPIO driver for buttons. Will be replaced with a keyboard-like one. - http://bit.ly/loaZnK17:34
lekernelcool, rock the place :)17:39
lekernelhow many people are there ?17:40
guyzmo20 including me17:42
guyzmoand a few others that are around (like urs, nico etc...)17:42
lekernelhe, ok. say hello :)17:44
kristianpaulguyzmo: nice work !!17:48
kristianpaulplease record video for the DMX effects you plan to make :-)17:51
guyzmohehe17:51
guyzmofor now I've done a weird gradated red->red+green->red+green+blue effect17:52
guyzmoand I implemented a sleep() in seconds17:52
guyzmothat sucks17:52
lekernelwell i'm sure there will be lua experts at the workshop to give you some hints to do better effects :)17:52
guyzmoahah17:53
guyzmoit begins with "why does lua sucks ?" :)17:53
kristianpaulguyzmo: are you conding in the lua console in "real time"?17:53
guyzmocopy/paste17:53
kristianpaulok17:53
kristianpaul(lua experts at the workshop) yeah17:54
lekernelnext step is to copy the flickernoise patch editor to make a little Lua IDE? :-)17:54
Action: kristianpaul *green*17:54
lekernelbtw, maybe the whole Flickernoise GUI logic could be written in Lua in a next major rewrite17:56
lekernelI think it's better than C for such things17:56
kristianpaula mtk lua extension?17:57
lekernelremove the little MTK scripting engine, replace it with Lua, write the rest (behaviour description of the GUI) in Lua as well17:58
lekernelinstead of the current mess of C callbacks17:59
kristianpaulheh ( mess of C callbacks)17:59
CIA-48rtems-milkymist: Sebastien Bourdeauducq master * r490e018 / (2 files): GPIO: remove unneeded ioctl - http://bit.ly/lrvp6m18:54
lekernelrejon: btw, does identi.ca allow converting twitter feeds for a hashtag into RSS?19:17
lekernelas a matter of fact, I was already thinking about the "twitter wall" feature - not to use at confs, but during parties19:18
lekernelif this can be done in an independent way that only needs RSS and not the twitter specific protocols, much better19:19
rejonyes19:19
rejonidenti.ca converts to hashtags19:19
lekernelI don't really like the way twitter controls and centralizes a large part of the attention economy19:19
rejonI was working on creating a product like this at statusnet19:19
rejonsomething like this19:20
rejoni was calling it the StatusBox19:20
lekernelhaving the milkymistvj twitter account is already giving them more credit than what I'd like to19:20
rejonha19:20
rejontotally19:20
rejonfacebook too19:20
rejonugh19:20
lekernelyeah, same19:20
rejonhttp://www.openclipart.org/detail/13327919:20
rejoncool shit on openclipart these days19:21
rejonso much stuff we could use19:21
rejonlike if we could pipe openclipart feed through there19:21
lekernelpictures are probably a bit more messy to get to work19:22
lekernelI ported libgd recently but it's slow19:22
rejonoops, i mean: http://www.openclipart.org/media/feed/rss/egypt19:24
rejonlike boom, have egypt theme19:24
lekernelhmm.. does identi.ca have a twitter "bridge" of some kind?19:30
lekerneleven though I do not like twitter.com, the twitwall feature just has to work with it19:31
lekerneluhm, not yet apparently :(19:34
lekernelhttp://business.twitter.com/advertise/start19:53
lekernelhahaha19:53
lekerneli'd be better off writing spam bots19:53
kristianpaullekernel: indeni.ca is able forward to twitter, bridge well.. you can use rss to fetch the tweets back20:09
lekernelguyzmo: so how was the workshop?20:39
lekernelah, i'll ask xilinx about this webm thing too :-)21:00
lekernelif they turn down Xilinx I think we can reasonably conclude they would turn down everyone else and it's just vaporware.21:00
lekernelwww.boldport.com got the same treatment btw21:01
rejoni have to flee #qi-hardware21:20
rejonhahaha21:20
rejonlekernel why not just support feeds?21:21
rejonseems most agnostic way to get at the data from most sources21:21
lekernelRSS? well yeah21:38
lekernelbut it doesn't seem like we can get a RSS feed from a twitter hashtag ...21:40
lekernelrejon: any idea to do this?22:05
lekernelor, if not hashtag, mention (@)...22:06
rejonused to be able to get22:12
rejonhmmm22:12
lekernelaaah22:14
lekernelhttp://search.twitter.com/search.atom?q=milkymist22:14
lekernelthat link was hidden in the 'old twitter'22:14
lekernelgreat22:15
lekernelphew, xml :-)22:15
lekernelkristianpaul will complain again about more libs22:16
rejonha22:21
rejongreat22:21
rejonthis is going to be great22:21
rejonmore ways to use and spread the news about milkymist22:22
rejoni have a guy making little video loops for lgm too22:22
rejoni know mm1 not quite ready for that22:22
rejonbut another useful feature ;)22:22
rejonlekernel thanks for hacking on the feeds stuff22:22
lekernelwell, mm1 is as ready as people make it to be. it's definitely possible technically to play little video loops on those boards.22:24
lekerneleven include them in the effects22:24
--- Fri Apr 29 201100:00

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