I think one of the biggest fears from ARM would be the popularity of the Raspberry Pi and their community.
There are better boards than the Raspberry Pi (strictly speaking specifications here). I took that path of playing with a lot of alternative boards, my biggest issue is lack of support, some boards had kernels never updated, etc...(YMMV).
If Raspberry Pi released a RISC-V board I have no reason to believe the community would not be just as strong. Sure in the beginning they would support both, but eventually the ARM support would wither.
Is it truly amazing? I was under impression that Raspberry requires some blobs to run properly. Is there detailed specifications for Broadcom chip they're using? I was under impression that it was NDA and not possible to obtain for ordinary mortal. So may be it's good because of sheer number of people tinkering with it and smoothing rough edges, but it could be better. Please correct me if I'm wrong.
> All Raspberry Pi models before the 4 (1A, 1B, 1A+, 1B+, Zero, Zero W, 2, 3, Zero 2 W) boot from their GPU (not from the CPU!), so they require a non-free binary blob to boot
So the 4 (and I suppose the 5, if it ever actually comes...)
Goes on to say:
> Since then, Broadcom publicly released some code, licensed as 3-Clause BSD, to aid the making of an open source GPU driver. The "rpi-open-firmware" effort to replace the VPU firmware blob started in 2016. See more at https://news.ycombinator.com/item?id=11703842 . Unfortunately development of rpi-open-firmware is currently (2021-06) stalled.
So there you are. Not wrong, are you, but not strictly correct, depending on "...to run properly" definition
You're right. Pretty much all the low level stuff below the kernel in a pi is closed source.
Want your own custom boot rom so you can start up in half a second rather than the default 3 seconds before linux gets loaded? - sorry, we can't share the code for that with you, nor the specs for you to write it yourself!
That's not what they meant. Yes, anybody can write bare metal alternative to Linux ( at the very least by looking at the Linux codebase). But still that Pi 1541 depends on the bootcode.bin, fixup.dat and start.elf binary blobs, which the OP was complaining about.
It wasn’t clear to me what they meant. I’m not familiar with the details of boot.bin but my read of what GP was implying was you had to use the rapsbian kernel and drivers. Thanks for the information.
And also lots of the alternative boards target RPI users ("like raspberry pi but better, cheaper etc"). If RPI switched then it would probably make sense for many of the other boards to switch to in order to stay comparable to RPI.
If they want to compete they have to agree on something like ACPI so the OS vendors can target their boards without a separate distribution for each board.
Most ARM boards already use Device Tree with Linux, there isn't any new agreement needed. What is missing is getting the drivers for each board into the same source tree.
NetBSD provides a filesystem image containing one kernel that will boot on all supported ARMv8 boards, you may need to write a board-specific build of u-boot to the start of that image. A Linux distribution could do the same as this.
In the past, one of often cited reasons for the lack of success of ARM server offerings was that every developer machine is x64, no software is ever tested on ARM and no dev has a machine to do so. As the Raspberry Pi got more performant it brought a lot of people running software on ARM, leading to lots of software publishing ARM builds, toolchains getting exercised, bugs ironed out, etc.
With Apple having moved to Arm there are definitely ecosystem benefits brewing too. I can run a Debian VM out of the box with UTM, compile an Arm64 package using standard Linux toolchain and have it run directly on a RPi. It's like having a supercharged RPi development environment with me all the time.
I wouldn’t be surprised if the existence of many ARM docker images for hobbyist projects were indirectly due to the popularity of the Raspberry PI (in anrditi to Apple switching to ARM, more recently).
The technology is linux, gpios etc. not which instruction set the CPU has. That is completely irrelevant and raspberry switching to USB-C is a much bigger change from a user standpoint than switching to RISC-V would be.
Assuming performance and software support is comparable. Which obviously won't be the case for a long long time.
But there are few things as irrelevant as the CPU instruction set. (Part from specific extensions, like AES support enabling quick crypto etc.)
The technology is what people know. Using a different SoC board, camera, ... requires adds more time to gain the same level of knowledge.
Doctors will latch onto a single product solution so they don't have to spend the time learning how to operate an alternative. Hospitals need to stock consumables based not on the best products but on what doctors know.
Airlines retain the same air crafts to reduce time spent learning to operate an alternative. Boeing marketed this as a sales feature with 737 MAX, no extra flight training required!
Software developers will often stick with the same language, even though others better fit the domain problem. Few seem willing to take the time to try and play with new concepts, languages, and operating systems.
Trying new and different things drives innovation not the world.
Very much disagree. Of course linux and GPIO is important, but the widest use case for them among myself and people I know is as a build box and/or something to test ARM software on. One person uses it to learn ASM. From my small and surely non-representative sample, the architecture is maybe the most important thing. So I don't think we can confidently say that CPU arch isn't relevant.
But instruction set, in practice and in this case, is tightly coupled with form factor and MIPS per watt. I work in mobile robotics: my low end choice is RPi, high end an NVIDIA board. While I can see Risc-V challenging ARM here, they don’t yet. (Excepting an ultra low power/low compute edge-case.) I just don’t see any CISC architecture that’s available today competing.
There aren't many other options if you want or need a system with physical access near your desk that is also designed to run GNU/Linux. I think the only other options are less-known SBC-based systems, or systems where GNU/Linux is an afterthought at best. With the Raspberry Pi 4, it's quite likely that one of your colleagues already got the locally preferred distribution to boot on it. Lots of people use them to reproduce and fix generic AArch64 issues, even if they have remote root access (including the ability to install another OS) to much faster lab machines.
There are better boards than the Raspberry Pi (strictly speaking specifications here). I took that path of playing with a lot of alternative boards, my biggest issue is lack of support, some boards had kernels never updated, etc...(YMMV).
If Raspberry Pi released a RISC-V board I have no reason to believe the community would not be just as strong. Sure in the beginning they would support both, but eventually the ARM support would wither.