Linux Sourcecode To Minitar Access Point
mcbridematt writes "Minitar sells a rebadged Edimax Linux based-802.11b Access Point in Australia (no FCC ID yet) for a relatively cheap price (under AUS $100 in places). These access points are based around the Realtek 8181 wireless-system-on-chip design, have 8MB flash rom, and run a 2.4 series Linux kernel. After requests from the community to get the kernel sources, which resulted in a incomplete sourcecode release, we finally have (allegedly) complete and GPL compliant Linux kernel sources for this fine Access Point. Special thanks to chuna, serialmonkey and screwball at Minitar for making this happen, especially after they ran into arguments with their OEM and Realtek over this." From the attached forum discussion, you can see there's disagreement about whether the source code release is as complete as it should be.
Before I kick myself in the arse over my usage of "full" in this story, there ain't any wireless code in there. It appears to be for the purpose of getting Linux to run on the damn thing. (Imagine a Beowulf cluster of these AUS $100 things blah blah..)
:(
The RTl8181 driver for Linux has been a seperate binary driver for some time
Maybe those of use stuck with a Realtek 8180 card? The model number is close enough to 8181 that there is some chance that the 8181 AP driver would work with the 8180 PCMCIA card, with only minor modifications.
Yes, I know that there already is a binary driver for the 8180, but it is very flaky, and rather picky about the kernels and distributions it agrees to work with... (as binary drivers usually are, alas!)
Say no to software patents.
But big deal. The source is going to be 99.8% unchanged from the previously public version, and the 0.2% remaining is just going to be bootstrap code and code to work around bugs in the specific hardware, etc. Further, I bet nobody actually does anything interesting with it now that they've got the source. After all, the HW's only good for one thing, and it already does it.
Suing every commodity router builder that comes down the pike with a product like this, which has essentially zero software value added in it, is just going to make some manufacturers squeamish about using Linux inside. And I want them to use Linux, because I, as a consumer, would rather have that than the lower quality, higher cost alternatives that exist.
Looking at it another way, if the OSS community sues over these dinky issues, where they get no great new software to show for it, they'll lose out on luring some big fish to use OSS plus their own super-duper-multimedia-software, which the community could then sue for and actually get something out of it.
P.S. For those that say "but we might get a driver for the buggy chipset that we've only got a buggy closed source driver for now" - will you listen to yourselves? Support another chipset vendor, you twits!
Everybody's a libertarian 'till their neighbour's becomes a crack house.
Link to the product at NewEgg.
Knowledge is power. Knowledge shared is power multiplied.
You are wrong on that part. So what if the code on your product is GPL'ed? You are still SELLING the HARDWARE, all you are doing is allowing people to modify it at will. This will in fact INCREASE your sales to the computer community as they can now roll out their own custom solutions and not be bogged down by the compiled software.
The GPL is not a new idea, it's principle is based in history. People thoughout the centuries have written down their scientific breakthroughs, finds and other discoveries. They believed that by sharing what they found and developed would help the world. They are still credited with the finds, but now everyone has access to them. Why are computers so different? Because money and companies are involved. Stupid managers and officers all see, Propritary CODE MUST NOT SHARE, when in fact if they made good products, GPL'd the code they would make money.
You see even though you GPL the code does not mean that your competitor can steal it, they too are bound by it and must make their changes public, which in turn helps you. WHOA!!! The GPL is a idea based on the sharing of knowledge for the benefit of the whole world.
Later,
Arathres
stainless steel
Yes, I know that there already is a binary driver [realtek.com.tw] for the 8180, but it is very flaky, and rather picky about the kernels and distributions it agrees to work with... (as binary drivers usually are, alas!)
Which is why I contend that the Linux driver interface sucks.
Assume that I have, on my Red Hat system, kernel 2.4.20-8. Which I parse as 2.4.20 kernel, build #8. So a security update comes out, and I upgrade to 2.4.20-12. (Not an atypical scenario).
Suddenly, my nvidia driver doesn't work, and once that's resolved (with a loss of 3D support, no less) I find also that VMWare won't load properly.
It may be that 3 lines of code were changed, so that
"if (a>20){
b=5;
} "
now reads
"if (a>=20){
b=5;
} "
out of umpteen kazillion lines of code, but dammit, now I have to find precompiled binaries for the exact version and build of the kernel I'm now running.
I think that's just retarded.
Kernel modules should communicate through a documented API, allowing a particular binary driver to work on a series of versions. I think it'd be fair to have a 2.4.x api, and a 2.5.x, 2.6.x, and so on.
But the current way is just stupid and hampers Linux' adoption in the less techie areas.
Of course, since I'm not Linus, nor a programmer of sufficient skill to provide any serious challenge to the powers that be, I generally just swallow my gripes and live with it for the parts that I like. (fantastic reliability, good uptimes, reasonable security, etc.)
I have no problem with your religion until you decide it's reason to deprive others of the truth.
1. Company X makes the guts of one of these routers or access points. They modify GPL'ed software, and put it on ROM in the device.
2. Company X sells these things to OEMs, who put it in boxes, add their applications in a separate ROM, and sell it to customers. Company Y is one of these OEMs.
3. Company X includes the full machine readable source of the GPL'ed ROM with the board they sell to company Y. Note: Company X has completely satisfied their GPL obligation. They are completely off the hook as far as anyone who acquires the software from company Y is concerned.
4. Now it gets interesting. Company Y takes the board with the ROM, and sells it to an end user. Note that company Y is allowed to do this without the permission of the copyright holder, because of the first sale doctine (see footnote).
5. Because company Y didn't do anything other than what is allowed by copyright law, they are under no GPL obligation to provide ROM source to the end user.
6. Note the end result: no one has a GPL obligation to provide source to the end user! Company X satisfied all their GPL obligations in their dealings with company Y, and company Y distributed in a way that falls outside the GPL.
Note: this isn't as big a loophole in GPL as it might seem, since it only applies to things like ROMs, where someone like company Y receives a particular copy, and distributes that particular copy to the end user.
Footnote: the fair use doctine, codified at 17 USC 109 if I recall correctly, basically states that the legal owner of a particular copy of a copyright work can sell that copy, without that violating that copyright owner's exclusive right to distribute or authorize distribution of the work. This is what allows used bookstores, for example. Without the first sale doctrine, every time a book changed hands, it would require the publisher's permission!
This is also what lets you sell a used embedded device on eBay without incuring any GPL obligation if it turns out the device uses GPL'ed code, so I wouldn't say this loophole in GPL is a bad thing. If you just go down to BestBuy and buy a router, you should be able to resell that without worrying about whether or not the manufacturer used any GPL'ed code in the thing.
Thats why Win2k/WinXp/etc like signed drivers. Being signed means they've been throught MS's tests... MS realized they were getting reamed for alot of lockups that weren't their fault.
So whatever linux is doing wrong, its still doing better then MS.
Religion is a gateway psychosis. -- Dave Foley
Thing is....
The binary drivers also aren't platform-independent. I'd imagine the 8180 driver only works on 32-bit x86. Now, for the majority of people, this isn't a problem, but what happens when you buy an Athlon64 notebook and want to run a 64-bit kernel, and the driver won't work....stuck in 32-bit land until Realtek graces you with a driver.
I'm in a similar situation, which is why I bring this up. I own a notebook with a broadcom wireless chip. Dell uses these in their notebooks. For PC users, they use the NDIS wrapper and use the windows driver. It has limited functionality, but it does work. I own an iBook, so the windows driver won't work at all for me. Cisco/Linksys use this chip in their wr54g router/ap, which uses arm, I think? They've relesed the source to the AP....everything *except* the source to the driver for the broadcom chip. Broadcom seems steadfast in its refusal to release the specs on the card, so until someone manages to reverse engineer it or something, there won't be any real free driver for it, and certainly not one for non-pc platforms. So much for running Linux or BSD on my iBook.
Well, that's the theory. Unfortunately, despite their best intentions, many drivers get it wrong. They either "forget" to put a certain number of APIs into their glue code, and call those directly from the binary part. Or, all functions are covered, but they access structures directly. Or any other kind of SNAFU. Smacks more of lack of testing or proper development procedures than lack of foresight.
NVidia gets it right (even to the point that their driver works flawlessly with 2.6 kernels. But not with SuSE's X servers, but I'm more inclined to blame SuSE for that...).
VMware gets it mostly right (no problems with any 2.4 kernel, but you need a third-party patch for 2.6 kernels).
Realtek (and, unfortunately many others...) get it wrong, and don't seem to work on anything more recent than 2.4.18.
Say no to software patents.
First of, the main reason to do it is because those are the rules. If a company doesn't want to release their (perhaps) minor additions to the source then they should use a different license. Typically something under BSD. If they can't be bothered to find software with the required license then they'll just have to develop on their own.
They are making money on other peoples generousity, fuck that. They deserve the lawsuits.
Second, when you say that there is no value in firware you are quite clearly not getting the point of OSS. (Besides, I don't know if I'd call an embedded OS firmware.) One of the mayor reasons why we have GPL in the first place is because Stallman got sick of having printers with poor software which he couldn't correct.
Just because you don't have the imagination to change functionality of an accesspoint (perhaps turn it into a wireless information kiosk?) doesn't mean others can't. Just because there is free doesn't mean it's worthless.
For Gods sakes man, one of the main ideas with OSS is that money isn't value.
Damn, I've just been trolled.
What we need is a new law that makes it illegal for hardware manufacturers to keep driver details secret. If you want to sell me a fancy wireless adaptor, graphics card, sound card or whatever, fine; but you have to give me all the information I need to write a driver for anything that I might want to interface to it.
It used to be so, back in the days when a printer came with a big thick manual explaining how to do various textual and graphical effects, even pulse timings and voltages for the interface. And everyone thought that information was part of the operating instructions. Sometime between then and now, it went sour; probably we didn't notice, but documentation went from hacker-friendly, to (non-hacker)-friendly, to non-(hacker-friendly). Nowadays, it seems printer manuals just say "plug in the USB cable and install the Windows software" -- and manufacturers are treating the important stuff like how to fire the second "red" nozzle down as though it were some sort of nuclear secret.
Well, it isn't. If you buy a piece of hardware you have every right to make use of that hardware, and if the manufacturer will not tell you how to do so then they are obstructing your enjoyment of your own property. At the very least, the owner of a particular device should -- by sole virtue of ownership -- be automatically privy to any "secret" it may contain; ideally, such information would be in the public domain by law.
And sod the whingeing about "competitors having access to your 'proprietary information'". Your competitors already pay people to reverse-engineer your products, and you will get access to their "proprietary information".
Je fume. Tu fumes. Nous fûmes!