Group: Hardware/Computers/Single Board Computers

From LibrePlanet
Jump to: navigation, search
m (Allwinner SoCs: parentheticalize)
(Single board computers with minor issues: fix section depths)
 
(6 intermediate revisions by 3 users not shown)
Line 1: Line 1:
 
Single-board computers (SBCs) are computers delivered as one circuit board that are powerful enough to run a real operating system. They generally contain a System-on-a-Chip (SoC) with an ARM processor. SBCs normally run the GNU/Linux system, but that doesn't mean that all is well for software freedom on these boards. Each existing SBC model has major flaws -- hardware that doesn't work without running a nonfree program.
 
Single-board computers (SBCs) are computers delivered as one circuit board that are powerful enough to run a real operating system. They generally contain a System-on-a-Chip (SoC) with an ARM processor. SBCs normally run the GNU/Linux system, but that doesn't mean that all is well for software freedom on these boards. Each existing SBC model has major flaws -- hardware that doesn't work without running a nonfree program.
  
== Single board computers with minor issues ==
+
== Article ==
 +
The FSF has [https://www.fsf.org/resources/hw/single-board-computers an article about Single-board computers] written by Paul Kocialkowski. On the bottom of that page there is a contact email address that can be used to send modification to the page, report bugs, etc.
  
These boards are basically usable in the free world, but some hardware features aren't available. There are some non-ideal workarounds
+
== TODO ==
  
=== TI OMAP SoCs ===
+
This section contain information that is not yet in the article.
  
The BeagleBoard (various versions) as well as the PandaBoard use the TI OMAP family of SoCs. These come with free startup software as well as free drivers for the peripherals.
+
=== Single board computers with minor issues ===
  
* However, the graphics accelerator (GPU) and the video decoding hardware for formats such as MPEG-2 are nonfunctional, because they require nonfree blobs to be installed into them. The workaround for these flaws is to do these jobs on the CPU with free software.
+
==== Allwinner SoCs ====
 
 
==== Board-specific problems ====
 
* The Pandaboard has another serious flaw: a WiFi and Bluetooth chip that can't work without nonfree software. The workaround is to get an external USB device for these functions, if you want them. See the documentation of your board for information about using these USB devices with it.
 
 
 
=== Allwinner SoCs ===
 
  
 
The AllWinner A13/A10/A20/A31 platforms come in many boards such as the A13-OLinuXino, Cubieboard (various versions), Gooseberry and Hackberry.
 
The AllWinner A13/A10/A20/A31 platforms come in many boards such as the A13-OLinuXino, Cubieboard (various versions), Gooseberry and Hackberry.
 
* It seems like U-Boot-sunxi now supports booting from [http://linux-sunxi.org/U-boot internal memory]. (Prior to this, the device had to be booted from an SD card every time.)
 
* It seems like U-Boot-sunxi now supports booting from [http://linux-sunxi.org/U-boot internal memory]. (Prior to this, the device had to be booted from an SD card every time.)
 
* Hardware GPU and the video decoding are currently unavailable using free software.
 
* Hardware GPU and the video decoding are currently unavailable using free software.
** People are working on free software support for the internal memory, the Mali GPU (A13/A10/A20) and the Cedar A/V decoder. Please contribute to these projects! The free software project for Mali is [http://limadriver.org/ Lima]. Info for CedarX is [http://linux-sunxi.org/CedarX/Reverse_Engineering here].
+
** People are working on free software support for the Mali GPU (A13/A10/A20) and the Cedar A/V decoder. The mature free software project for Mali is [http://limadriver.org/ Lima]. Info for CedarX is [http://linux-sunxi.org/CedarX/Reverse_Engineering here]. Please contribute to these projects in any way you can!
 
** The A31 uses a [http://libreplanet.org/wiki/Group:PowerVR_drivers PowerVR] GPU. The reverse engineering project for that hardware isn't as complete as Lima yet.
 
** The A31 uses a [http://libreplanet.org/wiki/Group:PowerVR_drivers PowerVR] GPU. The reverse engineering project for that hardware isn't as complete as Lima yet.
 
** For now, the CPU can slowly/inefficiently create 3d graphics and decode video.
 
** For now, the CPU can slowly/inefficiently create 3d graphics and decode video.
  
==== Board-specific problems ====
+
===== Board-specific problems =====
 
* (The Gooseberry and some versions of the A13-OLinuXino contain a WiFi chip that only works with nonfree software. See the documentation of your board for information about using these USB devices with it.)
 
* (The Gooseberry and some versions of the A13-OLinuXino contain a WiFi chip that only works with nonfree software. See the documentation of your board for information about using these USB devices with it.)
  
== Single-board computers with fatal flaws ==
+
=== Single-board computers with fatal flaws ===
  
 
* The Raspberry Pi requires nonfree software to start up. It can't reach the point of executing free software unless this nonfree program is part of the installed system software.
 
* The Raspberry Pi requires nonfree software to start up. It can't reach the point of executing free software unless this nonfree program is part of the installed system software.
 
** The startup program is, in fact, the same program that runs the GPU and the video decoding hardware. Thus, the GPU and the video decoding hardware are unusable in the free world, but these jobs can be done with free software on the CPU.
 
** The startup program is, in fact, the same program that runs the GPU and the video decoding hardware. Thus, the GPU and the video decoding hardware are unusable in the free world, but these jobs can be done with free software on the CPU.
 
** That program appears to implement intentional restrictions, such as blocking the video decoding hardware for MPEG-2 and VC-1 in the absence of a key that is specific to the machine in hand.
 
** That program appears to implement intentional restrictions, such as blocking the video decoding hardware for MPEG-2 and VC-1 in the absence of a key that is specific to the machine in hand.
* The Odroid-X, Odroid-X2, Odroid-U, Odroid-U2 and Arndale boards use the Samsung Exynos SoC. It requires nonfree startup software. Making things even more hopeless, it is very difficult to replace that program with free software, since the board requires the startup software to have a checksum computed by a secret algorithm. In addition, the GPU and hardware video decoding require nonfree software, but these jobs can be done with free software on the CPU.
+
 
** In addition, the Arndale is normally sold with a WiFi module board that requires nonfree software.
 
* The Minnowboard's bootup software is only partially free software: non-free parts are required to setup its hardware during startup. Moreover, its GPU has a PowerVR core, which requires non-free software to work.
 
 
* The Intel Galileo board, even though it is presented to be a microcontroller, runs a GNU/Linux operating system. While it would be possible to run a fully free system on the board, it needs non-free software to startup (the BIOS is proprietary).
 
* The Intel Galileo board, even though it is presented to be a microcontroller, runs a GNU/Linux operating system. While it would be possible to run a fully free system on the board, it needs non-free software to startup (the BIOS is proprietary).
  
Thanks to Paul Kocialkowski for collecting the information for this page.
+
[[Category:Hardware]]

Latest revision as of 18:52, 14 March 2023

Single-board computers (SBCs) are computers delivered as one circuit board that are powerful enough to run a real operating system. They generally contain a System-on-a-Chip (SoC) with an ARM processor. SBCs normally run the GNU/Linux system, but that doesn't mean that all is well for software freedom on these boards. Each existing SBC model has major flaws -- hardware that doesn't work without running a nonfree program.

Article

The FSF has an article about Single-board computers written by Paul Kocialkowski. On the bottom of that page there is a contact email address that can be used to send modification to the page, report bugs, etc.

TODO

This section contain information that is not yet in the article.

Single board computers with minor issues

Allwinner SoCs

The AllWinner A13/A10/A20/A31 platforms come in many boards such as the A13-OLinuXino, Cubieboard (various versions), Gooseberry and Hackberry.

  • It seems like U-Boot-sunxi now supports booting from internal memory. (Prior to this, the device had to be booted from an SD card every time.)
  • Hardware GPU and the video decoding are currently unavailable using free software.
    • People are working on free software support for the Mali GPU (A13/A10/A20) and the Cedar A/V decoder. The mature free software project for Mali is Lima. Info for CedarX is here. Please contribute to these projects in any way you can!
    • The A31 uses a PowerVR GPU. The reverse engineering project for that hardware isn't as complete as Lima yet.
    • For now, the CPU can slowly/inefficiently create 3d graphics and decode video.
Board-specific problems
  • (The Gooseberry and some versions of the A13-OLinuXino contain a WiFi chip that only works with nonfree software. See the documentation of your board for information about using these USB devices with it.)

Single-board computers with fatal flaws

  • The Raspberry Pi requires nonfree software to start up. It can't reach the point of executing free software unless this nonfree program is part of the installed system software.
    • The startup program is, in fact, the same program that runs the GPU and the video decoding hardware. Thus, the GPU and the video decoding hardware are unusable in the free world, but these jobs can be done with free software on the CPU.
    • That program appears to implement intentional restrictions, such as blocking the video decoding hardware for MPEG-2 and VC-1 in the absence of a key that is specific to the machine in hand.
  • The Intel Galileo board, even though it is presented to be a microcontroller, runs a GNU/Linux operating system. While it would be possible to run a fully free system on the board, it needs non-free software to startup (the BIOS is proprietary).