Live data from Hacker News

Blobless Linux on Raspberry Pi

crna.cc

71–80 of 113 posts

Re: Blobless Linux on Raspberry Pi

#71
post #2

Sadists. The Pi's choice of picking one of the most egregiously unsupported and anti-open source CPU cores was absurd. The people doing the absurdly hard work of taking up the slack that the Raspberry Pi Foundation created from this pick AND the RPI Foundations complete unconcern about the situation and open source at large is to me beyond belief. For a thing that purported to be an educational platform, this situati…

Sometimes talking to RPi developers is like talking to coffee drinkers that only visit Starbucks.

You can't convince them that there's a bigger world of options out there that can be better for your particular application.

Re: Blobless Linux on Raspberry Pi

#72
post #19

I confess. I'm completely ignorant about the Raspberry Pi even though I have a 3rd generation I bought recently. So I don't really understand what the significance of "Blobless Linux" is. Is the Raspberry Pi an open-source software and hardware platform? If not, what is? What should I have bought if not the Pi3?

> Is the Raspberry Pi an open-source software and hardware platform? No, the hardware isn't open, and not all of the software is, either. It requires a closed-source blob of code to boot the system. There's "real" firmware in the VC4 chip, which is the first part of the Pi to come up, some binary blob bootloader files, and drivers handling graphics and hardware decoding that are still closed. There is an open-source…

[deleted]

Re: Blobless Linux on Raspberry Pi

#73
post #60

Earlier quoted context omitted.

If a "development" board does not let me run my own code in EL3 (Secure monitor mode), I'm not buying it, as simple as that. A lot of boards that use Allwinner chips will use a signed bootloader that exits secure mode before passing control to your code. My favourite is probably NVIDIA Jetson TX1 where development boards do not have a key fused in them and have documented TrustZone peripherals, so you're free to run…

I didn't even know Allwinner supported secure boot, and it's certainly not widely used as far as I know. Running your own code in EL3 is pretty standard there because it's the mode when the ROM bootloader hands over control to the user-provided bootloader. You sure you haven't confused them with one of the other manufacturers?

All modern ARM chips support secure mode, it's a set of modes, in AArch64, we colloquially call them EL3 (Exception level 3, highest privilege level above EL2, the hypervisor level).

Most ARM cores start in secure supervisor mode, which can transition to secure monitor mode at will (secure monitor being a special version of secure supervisor). Most bootloaders including Allwinner's will exit secure mode by setting the NS bit in SCR and therefore enter user provided code in non-secure supervisor (or hypervisor mode) which would be called EL1 (or EL2 for hypervisor) on AArch64.

EL3 has nothing to do with ROM or Allwinner or anything else, it's an execution mode defined by ARM themselves, the core is reset in that mode.

(Secure mode is also known as TrustZone, if that term seems more familiar though TrustZone is usually "the whole package" including support from the CPU and the corresponding peripherals)

Re: Blobless Linux on Raspberry Pi

#74
post #2

Sadists. The Pi's choice of picking one of the most egregiously unsupported and anti-open source CPU cores was absurd. The people doing the absurdly hard work of taking up the slack that the Raspberry Pi Foundation created from this pick AND the RPI Foundations complete unconcern about the situation and open source at large is to me beyond belief. For a thing that purported to be an educational platform, this situati…

>"anti-open source CPU cores"

I take it you're talking about the SoC rather than the CPU. In this case, open-source drivers for ARM SoC weren't exactly common when the RPi was launched. For example, I can't think of a single open-source GPU driver (used with ARM SoCs) that was available at the time.

Re: Blobless Linux on Raspberry Pi

#76
post #60

Earlier quoted context omitted.

I didn't even know Allwinner supported secure boot, and it's certainly not widely used as far as I know. Running your own code in EL3 is pretty standard there because it's the mode when the ROM bootloader hands over control to the user-provided bootloader. You sure you haven't confused them with one of the other manufacturers?

All modern ARM chips support secure mode, it's a set of modes, in AArch64, we colloquially call them EL3 (Exception level 3, highest privilege level above EL2, the hypervisor level). Most ARM cores start in secure supervisor mode, which can transition to secure monitor mode at will (secure monitor being a special version of secure supervisor). Most bootloaders including Allwinner's will exit secure mode by setting th…

Well, of course they support secure mode/EL3, it's just not exactly secure on any Allwinner-based system I'm aware of because the ROM bootloader will happily load any chunk of code yo choose to supply into RAM from the boot device and jump to it whilst still in EL3, without any signature checks. Allwinner really don't seem to be keen on locking their chips down.

Re: Blobless Linux on Raspberry Pi

#77
post #34

Earlier quoted context omitted.

Not sure why this is downvoted. The OPi chip maybe for not cone from a "respected" western company but it is in all regards a more open chip. While the datasheet is almost as thin as that of Broadcom it is mostly because they use standard components where the full datasheet is available from arm. There are also far less magic blobs and crazy boot gymnastics in there.

> The OPi chip maybe for not cone from a "respected" western company This isn't some petty nationalist agenda like you're claiming. AllWinner's lack of respect stems from their pathological refusal to cooperate with the Linux kernel and their many GPL license violations. They throw out new hardware cores very frequently, but the hardware is impossible to keep updated (and is thus insecure and hard to use) because All…

> This isn't some petty nationalist agenda like you're claiming

That's not what I am saying. I'm saying Broadcom is getting a pass because they are a household name.

Re: Blobless Linux on Raspberry Pi

#78
post #2

Sadists. The Pi's choice of picking one of the most egregiously unsupported and anti-open source CPU cores was absurd. The people doing the absurdly hard work of taking up the slack that the Raspberry Pi Foundation created from this pick AND the RPI Foundations complete unconcern about the situation and open source at large is to me beyond belief. For a thing that purported to be an educational platform, this situati…

The founder and CEO of RPi was a technical director and ASIC architect at Broadcom. Looking at it like that, its dead obvious why they went with broadcom.

Yup and Eben Upton did it to teach basics of computer programming and development since he was so frustrated with the state of things in the UK.

I really hate the attitude of the root post that holds open hardware above everything else. RPi has done a ton to help education getting a new generation excited about computers.

Re: Blobless Linux on Raspberry Pi

#79
post #7

Earlier quoted context omitted.

You make it sound like there was an alternative, which at least at design-time, there wasn't. On top of that, other vendors have pretty much the same problems. Take Intel's stuff for example. It doesn't work without a BSP and you can't even boot a system and have it on for over 30 minutes without a running Management Engine. Qualcomm, AllWinner, Marvell, Ti, they all make ARM SoC's and they all need their own BSP's t…

No, Broadcom is quite unique in requiring blobs to boot. There are plenty of SoCs that are functional without firmware blobs. Generally there are issues getting the GPU working well without firmware blobs but other aspects work fine. Check out the Freescale part used in Bunnie's Novena laptop for example. This is also the case for TI parts and the other manufacturers you list. Broadcom is somewhat unique in requiring…

Spot on. BSP != "blob".

Re: Blobless Linux on Raspberry Pi

#80

Earlier quoted context omitted.

AllWinner comes to mind; here's one of the more well-known RPi-ish boards using them: https://www.olimex.com/Products/OLinuXino/open-source-hardwa...

Allwinner's been known to play hard and fast with the GPL and LGPL, so I'm not sure I'd cite them for being better about open source. cf. http://linux-sunxi.org/GPL_Violations

They release plenty of documentation, which is more than can be said for Broadcom who seem to be doing all they can to both stay proprietary and legal. Broadcom supplies binary blobs, some source code (which is definitely not for those blobs given how anal they are about IP/licensing), and almost no documentation; AllWinner supplies binary blobs (which are based on existing open-source, thus easier to reverse-engineer), some source code, and far more documentation. Regardless of the legal situation, the contrast is clear.
Post reply on HN