RasberryPi release date February 20th
raspberrypi.org
raspberrypi.org
There are a number of peripherals which are intended to be controlled by the GPU. These are omitted from this datasheet. Accessing these peripherals from the ARM is not recommended.
There is of course no documentation at all for the GPU, if you run Linux on this thing you are at Broadcom's mercy for maybe giving you a binary blob which might run the GPU in an acceptable manner but no promises.
This is such a sad state of affairs. Where a chip company refuses to divulge information that is critical to using their chip.
Say what you want about the OLPC but like Stallman's laptop the damn thing had pretty good documentation on all the parts. I guess its finally time for an open source SOC.
Given that, it certainly is a tragedy that the GPU is completely undocumented.
We get it. Broadcom doesn't release specs for their parts. Their market cap is 20 billion dollars, so all the open source sanctimony won't dent them a bit.
But I, for one, am ecstatic that I will finally be able put a few boxes here and there around my house for various automation tasks.
Running Linux itself is a HUGE step towards openness. I actually don't care about the GPU.
The closest thing (in price+performance+flexibility) are open-source-compatible routers onto which I can try loading up an openwrt-derived distro (4 MB RAM, 4 MB Flash) or expensive Arduino boards, plug computers etc! This is a giant leap forward, and I am grateful to Raspberry Pi/Broadcom for trying to make a tinkerer-friendly board like this.
http://www.raspberrypi.org/forum/general-discussion/gpu-bina...
Could there be malicious software embedded in the closed-source drivers?
Think of the fact that people who have acted as "Anonymous", Wikileaks, etc. are all quite techy.
Also the fact that places like HN seem to be much more pro-wikileaks and pro-anon (at least in terms of their goals, if not their methods) than average non-techy people would be.
Even without these crossovers that I think exist, with the nature of modern computers/internet/etc it seems fairly obvious that this is one of the most dangerous areas for future government problems, be it in terms of revolution, or terrorism, or simply generic law breaking. The people with the technical skills to cause problems in these areas are the people with the technical skills to potentially be interested in projects like Raspberry Pi.
I can understand them not wanting you to access the GPU peripherals from the ARM processor, the GPU can handle out-of-order data access, but the ARM core cannot (although it sounds like you can get around it with some careful programming).
At this stage i'm happy we got anything out of them at all, limited as it may be. A datasheet for the GPU would be great though. But given the progress of Open Source drivers from the groups working with AMD and Nvidia (who are much more forthcoming than the embedded graphics vendors), I can't say I would prefer to wait 3 years for a functioning driver that can handle OpenGL ES 2.0 and accelerated video playback. You'll still need a binary blob in the meantime. And it's not feasible for them to just give away their driver source for free in the meantime, for the same reasons it was never feasible for nvidia or AMD to just open up their proprietary drivers.
I think in time the situation will improve, but you can't expect Raspberry Pi to reverse standard industry practices in a single leap and bound. Give it time, and see this release for what it is: progress.
Why? For what reason? All they are doing is inconveniencing users and developers alike. I see exactly zero reason to keep drivers closed. Nada. Null. Nobody gains anything by keeping drivers closed. It's a waste of time and resources.
Also, our shader compiler is magic. You wouldn't believe how amazing it is.
And magic is there to be shared. I can't even begin to imagine where we, as humanity, could be if people shared their results and benefited from incremental development off each others' discoveries instead of spending uncountable man-hours reinventing the wheel for the seven hundred and three billionth time.
If anyone could be bothered, you could read all the patents filed by Broadcom and find out anything you wanted to know. Really.
Neither am I going to wait X years to use an idea, nor am I going to pay a fee. I want it right here and right now, and nobody should have a right to stop me. I want to build on it, so others in turn can use my discoveries to build even further.
>The alternative to patents is trade secrets.
No, the alternative is that people would realize already that is in no one's prolonged interested to keep discoveries secret, and that collaborative efforts using each others' ideas would lead to exponential growth of technology.
Patents are a detriment to humanity as a whole and its future technological progress, and we need to get rid of them as soon as possible, along with copyright, and erase the whole delusion of "intellectual property" from all books of law. It probably was the worst mistake in the history of mankind.
But don't want to contribute to the cost of R&D. You have fallen into the classic fallacy that because something cost nothing to reproduce, it cost nothing to discover or to build for the first time. At the very least, the people who worked on it deserve to be paid for their time. The people who swept the floor and washed the dishes while they did it deserve to be paid too. Or do you work for nothing? Or do you plan to get paid for what you build on their work?
I rather think that you are conflating discovery/creation and distribution/usage, which is the classic fallacy people like the content industries try to promote. It's completely irrelevant if the former is hard, costly and time-consuming or a piece of cake. It doesn't have any implications on the latter, which is - as you point out - costless, so it should be promoted and embraced instead of fought against (which is pointless and ultimately futile).
Also, you completely missed my point, which is that I want to build on it so others can build on my discoveries - a loop of mutual positive feedback that would accelerate technological progress by magnitudes. I don't care if some business models no longer work - the advancement of humanity is infinitely more important. Patents stand in the way of that, so we must get rid of them.
I'd like to add that this philosophy is basically the logical extension of the hands-on imperative, a fundamental part of the hacker ethics. Everything that teaches us something about the world and how it works should be free to access and use. If it isn't, make it accessible - by any means necessary.
Plus, have you seen the pattern that played out with the open source drivers for ATI cards? "Oh, if only those ATI bastards would release documentation!" (ATI releases documentation) "Oh, if only those ATI bastards would release example code!" (ATI releases example code) (etc)
This went on. By that point, it doesn't seem like a loss to not bother, unless you're suggesting they could fire the driver team and have the open source community do their work for them.
From what? People actually using and improving their drivers?
>to protect their IP
What's the fucking point? What is there to protect? It's what I don't understand in the first place.
>and to save time and resources.
I call bullshit. Opening their drivers would save more time and resources than they could ever hope to save by keeping it closed.
>Good documentation takes effort.
It takes much more effort to reverse engineer stuff. If you can't be assed to write documentation, give us undocumented code (side note: why are you writing undocumented code in the first place?). It's still infinitely better than keeping them closed. Everything is better than keeping them closed.
>Plus, have you seen the pattern that played out with the open source drivers for ATI cards? "Oh, if only those ATI bastards would release documentation!" (ATI releases documentation) "Oh, if only those ATI bastards would release example code!" (ATI releases example code) (etc)
One bad example doesn't prove or disprove anything. As a counterexample, look at the excellent Intel Graphics drivers for GNU/Linux - by far the most reliable graphic drivers I have used; nVidia doesn't even come close, and let's not get started about AMD/ATI. Free and open drivers are still infinitely superior to keeping them closed.
>This went on. By that point, it doesn't seem like a loss to not bother.
How is open sourcing something a bother? It's much more of a bother to keep them closed, for everyone involved, users and developers alike.
>unless you're suggesting they could fire the driver team and have the open source community do their work for them.
I am suggesting that the driver team should not, by any means, be the only ones with access to the source code and the right to fork, modify, fix and improve it. It's stupid and inflexible, and that's something the hard- and software industries have to learn already.
The thing you have to realize is that at this price point we're pretty much at Broadcom's mercy. Comparable chips are not sold as complete boards for $25-$35. They're doing raspberrypi a favor by even selling them at much lower volume than they'd normally sell them.
Aside from Raspberry Pi, No person or company who is not a Broadcom partner shipping millions per year can even buy this chip.
FTA: "[T]he boards will be finished on February 20. [...] [Y]ou should be able to buy them before the end of the month."
There are always a plethora of USB NIC's.
Me, I just want a cheap low power mailserver. Perhaps if XBMC works well enough, there's that too.
Instead the Raspberry Pi is supposed to be an incredibly cheap computer and for that the only sensor you need is a usb keyboard.
Er... so what do YOU recommend we buy for around $35 instead?
http://www.amazon.com/SainSmart-STM32F103RBT6-Cortex-M3-Deve...
(example, not an endorsement)
Or hack a Gameboy Advance. ARM hobby boards have existed long before Raspberry Pi. Or is it the linux distro and easy video that's so appealing?
If the idea is just "find out how well my code runs on a slow machine" a OpenWRT box is probably a decent bet. They are often MIPS core based but when programming in a high level language that doesn't really matter.
There are corner cases like DSP and high speed FPGA's, but I'm not aware of any general-purpose embedded chips that make ARM look slow.
Of course, this is only my opinion, having spent the majority of my time with embedded devices at or below 1MHz. Those 72MHz ARM cores are speed demons in comparison!
The first few ARM chips ran at 4MHz and gave a 12MHz 80286 a severe run for its money.
We're now at 100's of times faster...
[EDIT] Am I wrong?