T 1217782955 19* 19kpel (n=mcu@pdpc/supporter/active/kpel) has joined #rt2x00 T 1217782964 18<26kpel> hi T 1217783026 31<sn9>30 lo T 1217783049 18<26kpel> is there any design document for the rt2x00 driver? T 1217783064 31<sn9>30 i'm sure there is T 1217783097 31<sn9>30 i know the serialmonkey.com website is not that easy to navigate T 1217783110 18<26kpel> last time i checked rt2x00 was too young and there was nodesign doc for rt73 T 1217783181 31<sn9>30 rt73usb works perfectly now, except AP mode which is merely almost-perfect T 1217783205 31<sn9>30 unfortunately, rt2500usb loads too, for some reason T 1217783260 31<sn9>30 i'm waiting to test rt2800pci T 1217783294 31<sn9>30 i previously that that would need no firmware, and i only yesterday noticed i was wrong T 1217783304 31<sn9>30 s/that/thought/ T 1217783354 18<26kpel> i have a couple of wifi usb dongles that use rt73usb. one of them is a belkin mimo device actually. i'd love to play with the code (i work in wireless comms) but without design docs it is practically impossible. T 1217783393 31<sn9>30 to me, code _is_ documentation T 1217783403 18<26kpel> perhaps once the driver is part of the official kernel tree things will get better T 1217783424 31<sn9>30 it has been part of the official kernel tree for some time T 1217783471 21<kpel>21 sn9: sure it is. the difference is that it takes more time to figure out what person X had in mind when writing a certain loop for example, than when there is a design document in place T 1217783501 18<26kpel> oh, it's in the kernel already. well, there goes my chance to get decent documentation :) T 1217783521 31<sn9>30 for me, it's the other way around. i cannot tell what code does from a design document; i can from reading the source T 1217783526 18<26kpel> never mind, maybe in the future things will improve T 1217783546 21<kpel>21 sn9: do you work in the software industry? T 1217783559 31<sn9>30 i have done programming in the past T 1217783582 18<26kpel> yes, but that's not an answer :) T 1217783588 31<sn9>30 i've also had kernel patches accepted into the official tree T 1217783602 18<26kpel> ok, i'll take that as a no. no big deal really :) T 1217783737 18<26kpel> both approaches work. the difference is in efficiency. usually there is a hard deadline when developing products so design docs help you understand what you are going to create. reading people's code works too of course. although it can take more time, depending on style. T 1217783837 31<sn9>30 it takes less time for me, because when i'm foolish enough to think i can find usable docs, i waste time reading, when i could just read the code and be done with it, which i usually end up having to do anyway T 1217783882 31<sn9>30 this was in a fortune cookie: What the wise do in the beginning, fools do in the end. T 1217783955 18<26kpel> oh, but you can find usable docs. it depends on the quality standards in place T 1217784011 31<sn9>30 when will i learn once and for all that the only usable docs are sources? T 1217784035 18<26kpel> even Linus Torvalds, who publicly admitted he cannot plan his way out of a cardboard box, has done quite a bit of planning regarding the linux kernel project. That's why it is still relevant. T 1217784061 31<sn9>30 planning != documentation T 1217784082 21<kpel>21 sn9: have you evere seen a design document? T 1217784096 18<26kpel> it's not like a user manual T 1217784112 31<sn9>30 i know that, but it's not like code, either T 1217784182 31<sn9>30 things don't often go strictly according to plan T 1217784240 18<26kpel> depends. languages like SDL allow you to do designs (something between flow charts and state machines) and then convert them to C code. but that's not the point. Design docs are always needed especially if you work in big projects. T 1217784241 31<sn9>30 especially when there is false info in hardware datasheets, which is pretty often T 1217784258 18<26kpel> agreed. things don't go according to plan. that's why you use modular design. T 1217784275 18<26kpel> to isolate any problems in small regions of the whole architecture. T 1217784339 18<26kpel> that's why operating systems are broken down to subsystems instead of being just a bulk of spaghetti code T 1217784361 31<sn9>30 that was some of the reasoning behind microkernels T 1217784378 18<26kpel> even linux has this structure T 1217784385 31<sn9>30 yes, _now_ T 1217784413 18<26kpel> and when was the linux kernel without structure? T 1217784452 31<sn9>30 when linus first wrote it, for one T 1217784479 18<26kpel> yes, but don't you think that back then the code was much much less than now? T 1217784501 31<sn9>30 i don't have to think so; i know so T 1217784506 18<26kpel> there wasn't much to divide into subsystems T 1217784586 18<26kpel> once the community took off subsystems were defined for memory management, usb, etc as i'm sure you know T 1217784596 18<26kpel> qed T 1217784614 31<sn9>30 the only real way to insulate subsystems from one another is a hardware assist, e.g. a hypervisor T 1217784686 18<26kpel> you don't have to insulate them completely. but your architecture has to be logically divided into smaller blocks otherwise it's not going to last long T 1217784713 31<sn9>30 of course T 1217784733 18<26kpel> that's all i'm saying :) T 1217784759 31<sn9>30 but you have to account for what other subsystems do when you work on yours T 1217784788 31<sn9>30 and i have found that source is the most efficient way to do that T 1217784848 18<26kpel> if you have defined interfaces between you and the rest of the world you don't have to worry about the whole of the system. you communicate with the (few?) entitites that your design dictates and let the remaining of the system do its job T 1217784872 18<26kpel> the exception would be a control block that synchronises many many entities T 1217784885 31<sn9>30 i have heard that argument before, and i still don't buy it T 1217784899 18<26kpel> i saw it happen. a lot. T 1217784972 18<26kpel> if you write a driver for a network interface why should you care what the parallel port is doing? T 1217785019 18<26kpel> you care about your interface. you care about responding to signals without missing deadlines and about delivering bits. all the rest is someone else's problem T 1217785029 31<sn9>30 within the kernel, you cannot depend on the parallel driver not screwing up your net interface unless you have access to the parallel driver T 1217785069 18<26kpel> why should the parallel port driver screw up anything? doesn't it get tested before release? T 1217785084 18<26kpel> if it screws up, it's not your problem T 1217785096 31<sn9>30 calling it "someone else's problem" will only mean you will have development-cycle deadlocks T 1217785103 18<26kpel> you can only make sure that your code doesn't screw up. T 1217785121 18<26kpel> you can't do everything T 1217785121 31<sn9>30 haha T 1217785157 31<sn9>30 that is the fallacy under which the proprietary code world operates T 1217785189 18<26kpel> there is someone responsible for every bit of code. and these guys must ensure that their code does what the design says. that way there is no doubt about who is doing something wrong. T 1217785204 31<sn9>30 if only you can prevent your own screwups, nothing prevents them T 1217785228 31<sn9>30 there need to be checks and balances T 1217785228 21<kpel>21 sn9: you mean the proprietary code world that makes supercomputers, mobile phones and space shuttles? T 1217785276 31<sn9>30 NASA is slowly abandoning that world, as is nokia, and sun already has T 1217785295 18<26kpel> abandoning? hardly. T 1217785321 18<26kpel> have you seen opensolaris taking a large chunk of the amrket? T 1217785333 18<26kpel> have you seen nokia open their protocol stack? T 1217785339 31<sn9>30 solaris == opensolaris, now T 1217785348 18<26kpel> not exactly T 1217785352 31<sn9>30 nokia is indeed opening that, now T 1217785357 18<26kpel> not true T 1217785380 18<26kpel> they just _announced_ that they are opening the symbian code to a group of companies T 1217785396 18<26kpel> and _maybe_ after two years they will open it for the rest of us T 1217785405 18<26kpel> but symbian != protocol stack T 1217785416 31<sn9>30 it will not take two years -- they can't afford that time T 1217785424 18<26kpel> wanna bet? :) T 1217785450 31<sn9>30 they keep getting more and more competition T 1217785456 18<26kpel> like? T 1217785462 31<sn9>30 like android T 1217785462 18<26kpel> moto is dying T 1217785470 18<26kpel> sony ericksson is losing T 1217785479 18<26kpel> android is vaporware T 1217785485 31<sn9>30 samsung has made overtures, too T 1217785495 18<26kpel> only samsung and meybe LG matter T 1217785506 18<26kpel> and they are way behind in market share T 1217785530 31<sn9>30 the juggernaut in market share is apple, though T 1217785537 18<26kpel> !! T 1217785558 18<26kpel> do you know the market share of apple in the mobile phone market? T 1217785572 31<sn9>30 higher than is warranted T 1217785585 18<26kpel> heh T 1217785585 31<sn9>30 it should be zero T 1217785591 18<26kpel> it's tiny T 1217785596 18<26kpel> nokia has 40% T 1217785625 31<sn9>30 only 40? i thoought it was higher T 1217785636 18<26kpel> no, the market is fragmented T 1217785652 18<26kpel> it reached 40 only in the last year or so I believe T 1217785662 31<sn9>30 yes, players like HTC are hard to track T 1217785682 18<26kpel> i don't mind fragmentation. i think competition is good. T 1217785700 31<sn9>30 yes, and it's increasing T 1217785731 18<26kpel> i don't know about that. it looks like companies are merging T 1217785733 31<sn9>30 openmoko may not matter market-wise in the end, but it sure opened people's eyes T 1217785736 18<26kpel> less players T 1217785756 18<26kpel> most people don't even know what openmoko is about. T 1217785765 18<26kpel> but it's a good project T 1217785786 31<sn9>30 i don't mean consumer's eyes T 1217785798 18<26kpel> let's see how far it will go. usually opensource projects that have a hardware aspect don't go very far. T 1217785836 31<sn9>30 the software aspect of openmoko is hardware-agnostic T 1217785854 18<26kpel> that can't be and you know it T 1217785874 18<26kpel> you can't make your own RF drivers without knowing what is the hardware in use T 1217785884 31<sn9>30 it *is* true, but unfortunately, it considers itself a hardware project T 1217785915 31<sn9>30 i have booted the openmoko userspace successfully on my own phone T 1217785923 31<sn9>30 it's a moto T 1217785933 18<26kpel> what does the userpace consist of? T 1217785938 18<26kpel> ui? T 1217785957 31<sn9>30 not just ui, but what makes a phone a phone T 1217785971 31<sn9>30 the kernel i self-compiled T 1217785981 18<26kpel> the only thing that makes a phone a phone is its ability to make calls using a network T 1217786006 18<26kpel> is the protocol stack open? T 1217786018 31<sn9>30 define "protocol stack" T 1217786031 31<sn9>30 gsm? T 1217786036 18<26kpel> yes T 1217786047 18<26kpel> i just saw that openmoko is gsm only so yes, gsm T 1217786053 31<sn9>30 the gsm is hardware-based T 1217786068 18<26kpel> read: proprietary firmware inside T 1217786085 31<sn9>30 neither it nor openmoko speak gsm directly to the air T 1217786113 31<sn9>30 the hardware does that T 1217786131 31<sn9>30 and its interface to the software is standardized T 1217786131 18<26kpel> that's why i'm telling you that you cannot make a 100% open phone. the stack is not even open. you basically have a gui plus contacts, calculator, maybe a camera app... T 1217786180 31<sn9>30 depends on one's definition of 100% open. by yours, openmoko never will be open T 1217786214 18<26kpel> actually it's the software that does the protocol things. a look at the gsm technical specs will convince you that it's not done in hardware. you, the end user, think that it is hardware. but it's more like an eprom. T 1217786245 31<sn9>30 semantics T 1217786248 21<kpel>21 sn9: the open parts of openmoko cannot make a call over a network. T 1217786275 21<kpel>21 sn9: not at all. it's the difference between having all the software open or parts of it. T 1217786290 31<sn9>30 thank you, theo de raadt T 1217786341 18<26kpel> i like the fact that you speak with authority about things you don't even know :) T 1217786365 31<sn9>30 authority is in the eye of the beholder T 1217786382 18<26kpel> facts help too T 1217786475 31<sn9>30 firmware is both hardware and software at the same time -- that's a fact T 1217786582 18<26kpel> ok, let me ask you something. who develops the protocol stack of a phone: hardware or software engineers? T 1217786687 31<sn9>30 if by "protocol" you mean the gsm, it's both. hardware engineers design the radio, then internal software hacks (in the other sense of the word) produce a firmware T 1217786704 18<26kpel> we are talking about the protocol, not the radio T 1217786732 31<sn9>30 then the openmoko people get the abstraction to which they speak T 1217786752 18<26kpel> i really think you are smarter than that. T 1217786792 18<26kpel> there is nothing wrong in admitting that it's software you know :) T 1217786807 18<26kpel> you can even read the specs T 1217786811 31<sn9>30 i already said firmware is software. it's hardware, too T 1217786832 18<26kpel> we were talking about the protocol stack and how it is not open T 1217786862 31<sn9>30 yes, it is not open to the openmoko people, either T 1217786873 18<26kpel> correct T 1217786910 31<sn9>30 they cannot provide access they do not have themselves T 1217786928 18<26kpel> and that's the real challenge. you cannot have an open phone without an open stack. but nobody will open his stack to the public. so, all those articles you read about companies going opensource are hype T 1217786959 18<26kpel> basically, every mnager in every company think of ways to exploit the opensource community T 1217786967 31<sn9>30 you say you cannot have an open phone without an open stack, but most people disagree T 1217786979 18<26kpel> "Hmmm, how can i make those guys work for me, for free?" the say T 1217787063 21<kpel>21 sn9: but didn't we say that you cannot access the network without a stack? if the stack is not open then it's like using a wlan card with proprietary firmware in it. you can still use it with your favourite opensource software but it's not 100% free. not that i mind of course. T 1217787110 31<sn9>30 let's discuss that: do you consider atheros more open-source than ralink, or less? T 1217787135 18<26kpel> i cannot express an opinion because i don't know the details of each company's contributions T 1217787175 31<sn9>30 (for the purpose of the discussion, let's assume a falsehood as fact -- that the hal is open-source) T 1217787185 18<26kpel> i do remember i have heard both names in the oss community. and i think both opened up some code. but i don't know the specifics. T 1217787195 31<sn9>30 i will explain T 1217787251 31<sn9>30 the atheros cards are software radios, driven only by a minimal eeprom, with the computer doing pretty much all of the "protocol stack" processing T 1217787272 18<26kpel> that sounds slow T 1217787317 31<sn9>30 the ralink cards operate similarly, but the stuff atheros puts on the eeprom, ralink recently puts in a loadable firmware file T 1217787391 31<sn9>30 taking the asumption i put above in parentheses, that means the FSF considers atheros "Free" and ralink not T 1217787397 18<26kpel> ah, but then it's what everybody does. they keep L1 closed and L2 and bove are implemented as a driver (e.g. using mac80211) T 1217787416 18<26kpel> really? T 1217787430 18<26kpel> ralink is not Free? who cares, i'll go for ralink :) T 1217787453 31<sn9>30 the reality is more complicated, but that's a simplified look T 1217787463 18<26kpel> i'm not an FSF fanboy. i prefer a more practical way of thinking. T 1217787482 18<26kpel> i like opensource, i believe in sharing, but i can't stand fanatics T 1217787492 31<sn9>30 in reality, ralink was the first wifi chipmaker to receive an official FSF endorsement T 1217787510 18<26kpel> interesting T 1217787520 31<sn9>30 very T 1217787552 18<26kpel> why did they get that fsf endorsement? T 1217787560 31<sn9>30 the FSF has flip-flopped at least 3 times T 1217787565 18<26kpel> probably they GPLed something, but what? T 1217787576 18<26kpel> heheh, stalmanisms.... T 1217787589 31<sn9>30 yes, he's no theo de raadt T 1217787625 18<26kpel> i don't know that guy. i just know he is running the openbsd project T 1217787670 31<sn9>30 there is a joint interview you should read, on wifi issues -- theo, rms, and i don't remember the third guy T 1217787671 18<26kpel> from the way you speak i suspect he is not a very popular guy T 1217787714 31<sn9>30 it makes rms sound like a politician, and theo like walter mondale T 1217787723 21<kpel>21 but you know what sn9? if then openmoko project is about ui and apps, why not build it on top of symbian? T 1217787742 31<sn9>30 well, symbian is ui and apps, too T 1217787744 18<26kpel> hah, i'll dissapoint you. i don't know mondale either :) T 1217787766 18<26kpel> disappoint, rather T 1217787852 31<sn9>30 walter mondale lost the 1984 US presidential election by the widest margin in history; during the campaign, he dared to tell it like it is, and of course, people never want to hear Truth T 1217787870 18<26kpel> word T 1217787882 18<26kpel> well done to that mondale T 1217788010 31<sn9>30 i will see if i can find the interview T 1217788050 18<26kpel> that would be nice, but please don't spend too much of your time. T 1217788098 18<26kpel> politics even in opensource... why can't everybody use the bsd license and be happy? T 1217788144 31<sn9>30 the bsd license reflects a different philosophy of openness T 1217788193 18<26kpel> in my view it is the most open license. no limits imposed. do whatever you want with the software, just give us credit for it and don't sue us. T 1217788404 21<kpel>21 sn9: are you in college? T 1217788537 31<sn9>30 found it: http://www.thejemreport.com/content/view/286/ T 1217788590 31<sn9>30 the bsd philosophy is about freedom of the code, while the gpl philosophy is about freedom of the user T 1217788601 31<sn9>30 not anymore, no T 1217788606 31<sn9>30 i gave up on it T 1217788633 18<26kpel> i don't blame you. the way the job market is today, it doesn't help much T 1217788656 18<26kpel> thanks for the url, i'll have a look T 1217788660 31<sn9>30 sad thing is, i could see that coming T 1217788678 18<26kpel> how come? T 1217788693 31<sn9>30 and i could see it before i was in high school T 1217788836 18<26kpel> well, better late than never. i know people who went to university, got a degree on a subject they don't like and now they are doing a job they hate. T 1217788861 18<26kpel> job satisfaction is important. unless you don't need a job :) T 1217788874 31<sn9>30 i couldn't agree more T 1217789147 18<26kpel> personally i tend to agree with theo T 1217789182 18<26kpel> because, judging from the way the real world works, the user will never be free T 1217789211 19* 19a-slack (n=a@89.128.15.39) has joined #rt2x00 T 1217789213 18<26kpel> once you acknowledge you have a need for X, be prepared to fight with the corporations T 1217789277 31<sn9>30 the fight is well under way T 1217789296 21<kpel>21 software is just a small aspect sn9 T 1217789308 18<26kpel> have you seen a documentary called "The corporation"? T 1217789336 31<sn9>30 small-worldism: this week, in the room in which the party convention nominated mondale in 1984, is LinuxWorld Expo T 1217789346 18<26kpel> http://www.imdb.com/title/tt0379225/ T 1217789408 18<26kpel> besides, just distributing free software is not going to make a big difference. the end user needs ease of use, functionality, guarantees... T 1217789420 31<sn9>30 absolutely T 1217789440 31<sn9>30 distribution is not at all key T 1217789473 18<26kpel> well, it is necessary, but not enough. T 1217789491 31<sn9>30 ah, but it isn't necessary, just desirable T 1217789531 18<26kpel> if your objective is to have a large user base, then you have to somehow distribute the software to those users. T 1217789555 31<sn9>30 that need not be the objective T 1217789557 18<26kpel> it's not cool, it doesn't need an army of hackers, but it's a very real need T 1217789594 18<26kpel> if you don't want a big user base then you cannot change much in the way things work T 1217789597 31<sn9>30 ubiquity is not a primary goal of free software T 1217789650 31<sn9>30 in fact, the economics are more favorable with lower market share T 1217789699 18<26kpel> strange. because i keep hearing complains and demands for company xyz to release drivers for e.g. linux. when the drivers are there there are other demands. the drivers must also be Free. so i suppose there are certain people who demand Free software for every piece of hardware out there. T 1217789718 31<sn9>30 that lower market share has even benefited openbsd T 1217789738 18<26kpel> can you explain how a lower market share is favourable? T 1217789746 31<sn9>30 demands to release drivers are 100% misguided T 1217789792 31<sn9>30 when there is lower market share, fewer users need more improvements T 1217789828 31<sn9>30 those users are then obliged to _hire_ contract coders to fix the problems, but for the benefit of all T 1217789844 18<26kpel> i thought more diversity brings the need for more improvements T 1217789877 18<26kpel> an interesting point of view T 1217789886 31<sn9>30 meh, there's always room for improvements, regardless of diversity T 1217789923 18<26kpel> do you know any examples where people were hired by opensource to fix software? T 1217789974 31<sn9>30 rms himself once made an ok living that way, and some still do T 1217789996 31<sn9>30 there are whole companies that work solely on that business model T 1217790010 18<26kpel> he made a lot of money by giving lectures on software T 1217790015 31<sn9>30 first one i can think of is Untangle T 1217790038 31<sn9>30 the lectures came later -- after the macarthur grant T 1217790062 18<26kpel> and does this model scale well? T 1217790075 31<sn9>30 that remains to be seen T 1217790090 31<sn9>30 certainly, the Internet has changed its dynamics T 1217790096 18<26kpel> i mean, sourceforge.net has quite a lot of projects, but i don't think people will ever pay money to all of them T 1217790119 18<26kpel> for the vast majority of the users oss == free == no money needed T 1217790129 31<sn9>30 sourceforge makes most of its money from proprietary projects they privately host T 1217790148 31<sn9>30 in English, yes, free means that T 1217790178 18<26kpel> yeah, thought so. there is no money in opensource. unless you maange to sell services to one of the big companies oss competes with T 1217790192 31<sn9>30 rms never has language bickering when he lectures in french or spanish T 1217790247 18<26kpel> i totally understand. it's the same with greek(my language). we don't use free when we want to say "no money needed" T 1217790257 31<sn9>30 sourceforge could not care less about open source T 1217790282 18<26kpel> yeah, i know. which is a bit contradictory since OSDN is involved. T 1217790294 31<sn9>30 they only offer open source services purely for historical reasons T 1217790299 31<sn9>30 SF, that is T 1217790419 18<26kpel> oh well... money talks, the world listens T 1217790436 31<sn9>30 my point is that SF is not an example T 1217790445 31<sn9>30 Untangle is an example T 1217790540 18<26kpel> i'll have a look at their website once i get some time. i'm trying to update my nokia tablet T 1217790572 31<sn9>30 there are many other examples; that's just the first one i thought of T 1217790644 18<26kpel> are they doing well? T 1217790655 31<sn9>30 some yes, some no T 1217790676 31<sn9>30 but it's that way in everything T 1217790688 31<sn9>30 Untangle is doing quite well T 1217790697 18<26kpel> true. good leadership is always needed T 1217790809 21<kpel>21 sn9: do you believe that those o-reilly books about the linux kernel are worth anything or are they pretty much useless? T 1217790834 18<26kpel> i don't know if you read any of them T 1217790876 31<sn9>30 i used to T 1217790904 31<sn9>30 they are quite informative, but the info cannot stay current long T 1217790928 18<26kpel> i suppose the kernel is too dynamic to be captured by a book but perhaps the essentials are good enough T 1217790959 31<sn9>30 the easiest way to capture the workings of the code is to hack on it T 1217790978 31<sn9>30 akpm said so himself T 1217790997 18<26kpel> if i ever find time i'll have a look at one of those books. currently i don't even have time to work on my own projects T 1217791002 18<26kpel> who's akpm? T 1217791040 31<sn9>30 http://en.wikipedia.org/wiki/Andrew_Morton_%28computer_programmer%29 T 1217791048 18<26kpel> ah, morton T 1217791702 31<sn9>30 kpel: mind if is share our convo with others? T 1217791709 31<sn9>30 s/is/i/ T 1217791868 18<26kpel> you mean paste in another channel or publish it? T 1217791898 18<26kpel> you can, as long as the disclosed parts do not alter the meaning of the dialogue T 1217791920 18<26kpel> if somebody is going to hate me, at least let him hate me for the right reasons :) T 1217791948 31<sn9>30 i was about to ask for permission to use 3-clause bsd, but my plan was to use a verbatim log T 1217791966 18<26kpel> by the way, what is the purpose of sharing this dialogue? T 1217791988 31<sn9>30 to reduce repeating oneself T 1217792040 18<26kpel> personally, i don't think i lost any arguments. as logn as it doesn't seem that i lost any arguments, it's ok with me T 1217792063 31<sn9>30 there was no win/lose, just an exploration of views T 1217792070 18<26kpel> true T 1217792141 18<26kpel> however, some people in the past did try to make me appear as if i lost an argument. needless to say i wasn't happy about it. T 1217792172 31<sn9>30 code speaks for itself, and so does this conversation T 1217792189 18<26kpel> let's hope so :)