Raspberry Pi / ARM porting bounty

Even prior to the recent release of the PiZero, the Raspberry Pi has been an obvious candidate for Haiku to support but development within the Haiku community is spread too thin so I want to offer an incentive for qualified help from without.

My first problem is that I don’t even know who the leading lights of Raspberry Pi Linux and RiscOS development are. But these people have already overcome the same kind of issues that stalled the last attempted Haiku ARM port. Their input to simply quantify the task and a ballpark figure of what they would accept to undertake it would be most welcome.

At this very early stage, I am willing to put up one bitcoin. Constructive feedback is most welcome.

4 Likes

riscos is brought to you from the makers of arm itself and is not a port

Haiku is really cool. I am older than most, having owned TRS-80, Apple II-E and. Ohio Scientific computers. I designed the NCR 7200-VI; so y’all can see I like strange, if not oddball, computers. I even messed with BeOS, ATARI and knew both Gates, Paul Allen and Mark MacDonald.

That said, I think Haiku is a prime candidate for Raspberr Pi. I have a B+ (duh) and would love another OS. Haiku for Atom would open up a lot of imbedded processors and fanless boxes out there. I would also love Haiku for Apple iPad 1,2 & 3, but that’s another story.

BTW the latest build media player will not play video. Are codecs busted?

1 Like

or you can stick to x86 :wink:

http://wiki.minnowboard.org/MinnowBoard_Wiki_Home

Only real problem are UEFI
https://dev.haiku-os.org/ticket/10139

https://dev.haiku-os.org/wiki/HardwareInfo/x86

I would sooner stick x86 than stick with it.

Of the various x86 alternatives, RPi has made the most impact and I think Haiku would shine even on their first generation board.

The RPi foundation have done a lot to attract young people and promote programming (and other creative pursuits) within their community - even a small amount of that energy would go a long way here.

there’s an ARM port in progress but it’s not part of the main development effort and it also doesn’t target the ARMv6 used in the first-gen rpi, but ARMv7 as used in beagle bone black and now the rpi2.

also hobbyist ARM computers are popular, but nowhere close to the ubiquity of x86, and none are sold yet in consumer desktop systems except for blackbox installations that make installing a different os difficult at best. haiku isn’t a hardware company, so targeting what’s already out is a much higher priority than targeting systems at the whim of a few stray forum users.

Not that nay-sayers deserve the time of day, a port to Raspberry Pi has the potential to draw in a lot of new users - not merely ‘a few stray forum users’.

What’s more, a platform like Raspberry Pi is much less of a moving target than the ‘ubiquitous x86’.

For those that may actually be interested in Haiku support for other architectures, the topic is mentioned here: https://www.haiku-os.org/node/10350

2 Likes

There is no evidence of this from other projects which have tried. AROS on the Raspberry Pi attracts even less fan response than the expensive and marginal $2000 PowerPC boards used to run Amiga OS 4.1. Maybe there are hundreds of AROS RPi users who just never post anything or give any money, but doesn’t it seem far more likely that there are hardly any users and that’s why they’re not making any noise?

Some platform, it’s a handful of specific models from a single brand which share a lot of very cheap and nasty components. That’s necessary for the RPi’s goal of being itself very cheap, but it makes it a very unforgiving target for a half-finished OS like Haiku.

So far over the course of its existence Haiku has four USB HCD drivers in various states of completion. This is enough to target all desktop / laptop PCs over the entire 19 year history of USB, just four drivers for billions of machines. None of these drivers can be said to have been smooth sailing, and all of them are incomplete to some extent. To make any RPi series machine even somewhat useful you’ll need a driver for the Designware USB OTG controller used. This has been widely described as the most awful USB controller design on the market. Why is it used in the RPi? It was included in the cheap SOC that keeps their price down.

That’s illustrative, generally of the scale of the problem. The RPi hardware sacrifices everything to get the price down. This is a completely ordinary choice for embedded hardware, but it’s unfamiliar territory for home computing. It makes driver development very challenging, and Haiku already struggles with that on the much easier and safer ground of the desktop or laptop PC.

1 Like

You made the best possible argument why porting Haiku to RPi is pointless - Haiku, like BeOS before it, is a wonderful desktop OS, which has the best responsiveness of all existing operating systems. It also has the best multithreading model. On the RPi, nobody cares what OS is run, as long as it does those embedded bits, like control your pinball and shit.

On the RPi, nobody cares what OS is run, as long as it does those embedded bits, like control your pinball and shit.

With the first Raspberry, this was definitely true, because the Pi was too sluggish to use as a regular desktop. The Pi2 is significantly improved in this area. I use mine as an internet browsing box quite a bit. But, as you say, the current mix is probably 80 or 90 percent embedded usage. That’s changing though - and many of these types of machines are being used for media (kodi media boxes) - especially with the higher powered SoC/SBC boards like the Odroid.

They’re being used for NAS storage (esp. Odroid, Cubie) and for specialty server systems (distributed control, home automation, internet client, media center servers, weather monitoring, data logging, etc). So it’s much more than just dancing robots. They’re selling millions of them.

The desktop is changing quickly, and the traditional form factor is getting close to EOL. Microsoft is admitting that the hayday is over, as they try to make it in mobile, etc. Intel realizes that the chips are down (literally) and they’re trying to build traditional Intel architecture machines with lower power and cost figures, and are now producing very small form factor SBC boards that approximate the SFF of the Odroids and Raspberries. The pricing on those is still high though, relatively speaking. I use my little SoC/SBC ARM boards in several homemade setups using tiny enclosures (4x5x1 inches in one example) - and in total I probably use them slightly more often than the big old PC, which I still have.

Here is a little article that shows one of the boxes I’m using:

Intel won’t go away, so eventually we’ll see the “PC” in an entirely different way. The “normal” machine will be much more like my Pi in a box, a tablet, or just a super cell phone with more power that what they have now. I’m sure many of them will be Intel powered, but the mix of architectures will not be anything like it has been for the past 20-30 years. That’s changing, the mix will change, and an eventual port of Haiku could make a lot of sense. But - not necessarily today, since the current architecture is still a WIP.

Haiku would be better suited to a HDMI PC stick. They come in x86 atom CPU, and nobody cares what operating system it has because they are more interested in its media/streaming capabilities. This would better showcase Haiku’s multithreading, tiling windows, and database-like filesystem for media storage than a development board.

Linux Mint has its own mintbox
PCLinuxOS has its own chimpbox

So it would be possible for Haiku to partner with a hardware company to have its own PC stick and launch a kickstarter campaign to fund it.

1 Like

Ahuh… So, rather than focus on what the Haiku Foundation actually does ie: create operating system software, you’d sooner have it pursue some hardware project in which “nobody cares what operating system it has”. Thanks for calling.

You can take it in a negative way, or a positive way (as it was intended) - whatever you prefer. It’s obvious now why haiku devs are so negative about new ideas - because there aren’t enough devs to go around and spend time on all these other projects. Understandable. Maybe you could have a page listing other possible projects that would be cool to do if there were more devs involved. That might entice some more contributors.

The reason why developers are sometimes “negative” about things is a bit more complex. Imagine the situation from my side as a developer. I spend most of my time (evenings, weekends, days off work) improving Haiku. Not to please other users, but because I use it as my operating system and I need things to work.

Now, some random people who never contributed a single line of code comes and says "hey, why haven't you done this or that?". I don't owe them anything. I build the OS first and foremost, for my own use. What should I do? Stop working on whatever I'm currently going and start working on the new idea because it's the best thing since sliced bread? I don't think so.

There may be people agreeing on your idea. Usually they won't comment because there isn't much to bring to the discussion from their side, besides "+1", or embarassed "we know we don't support USB3 yet, but no one has time to actively work on it". However, people who disagree will always be a lot more vocal (and they are not always developers from Haiku).

We do have a quite large list of projects already, it's the GSoC ideas list. There are about 40 ideas there, and even during GSoC, we only attract a handful of students every two years. That's not much, and few of them continue working on the project after GSoC is over.

What we need is not more ideas, we have pleinty of those already. What we need is people submitting code for review. And even then, we can't guarantee we'll find the time to review and merge the patches...

You can take it in a negative way, or a positive way (as it was intended) - whatever you prefer. It's obvious now why haiku devs are so negative about new ideas - because there aren't enough devs to go around and spend time on all these other projects. Understandable. Maybe you could have a page listing other possible projects that would be cool to do if there were more devs involved. That might entice some more contributors.

If you want the Haiku ‘look and feel’ for your Raspberry Pi, you can use RISC OS (what I’m using to post this on my Pi2). It runs Netsurf, which I often run on Haiku, and definitely has resemblence to Haiku on the Desktop, with minimal decoration and 80s/90s era icons. Sometimes I forget I’m not running Haiku, as the titlebars on the windows are geometrically almost identical!

It’s my ARM based “minimalist” system until someone donates 50K Euros to the topic of this thread!

I have two original Raspberry Pi devices collecting dust. I would probably give Haiku a permanent home on one of them if a port was ever done. The hardware is too slow for YouTube HD video of anything larger than small viewing size but it would work fine for general web browsing and a virtually unlimited amount of cool tinkering stuff.

I think it would be a worthwhile port to complete just for the massive amount of hardware floating around and the users who would try Haiku just because it was an available option to tinker with.

I wouldn’t pressure any developers to drop what they’re doing to work on it or make it any kind of high priority, but I wouldn’t discourage it in any way either. I think if people want to make it happen and someone capable is willing to put in the work needed it will happen eventually.

The great thing about the Pi versus an old PC is people will toss the old PC in the trash to get it out of the way but they’ll throw the Pi in a drawer and save it simply because it’s so much smaller and easier to move from point a to point b with little to no fuss. I think the Pi has a more viable longevity than most old PC’s simply because it’s more compact.

Nothing is stopping anyone from working on the port and getting the hardware isn’t much of an issue since it’s so inexpensive. It’s likely to happen eventually. There is better hardware but the potential user base is probably worth the effort.

what do you think if we relaunch the fundraiser to complete the port on rpi4?

1 Like

Did they already opened the specs and the drivers for the rpi4? If not, maybe it would worth to demand those information from the company first.

Let me explain:

  • ohhi, here is a small sbc, please BUY, use and hack it
  • datasheets pls
  • NO, just hack
  • kthxby

Chances they wont answer or give only a formal answer, and even if you cut deep they can say: 3rdparty licenses covering those topics.

So ask the chip manufacturer first maybe.

I don’t think they will give you any specs and/or drivers.
Also many of the Linux drivers for it are proprietary (Wifi and Bluetooth for example).
That’s the reason why all BSDs have still some missing drivers when using them on the Raspi.
Reverse engineering is the only way to do anything on this highly proprietary piece of hardware.
But I read in the recent FreeBSD newsletter that they may improve support for the Raspberry,so maybe we can use their results if they have luck with the reverse engineering.

3 Likes

If we use info from reverse engineering it may be interesting to use info from asahi linux for the newer mac hardware.
They actually licensed their documentation and code under a permissive license too so it can be reused, which I think is quite awesome of them.

4 Likes