Comparison of chip maker openness
Header
Note: work-in-progress. Please add more makers, references, update missing fields, etc. NO marketing talk. Table should be concise (ie. for TL;DR people), with notes and examples explained later in the page. Shall this table focus on particular SoCs? Group similar tier socs?
If you can, please add _popular_ SoCs (those from RPi 1/2/3, amlogic, rockchip, samsung, marvel, qualcomm, intel etc.).
Table
Maker | Model | Year.Month | BSP | Bootloader | DRAM controller | Storage | Networking | Graphics (2D) | Graphics (3D) | A/V codecs | Audio | Security accel | Notes |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Allwinner | A20 | 2012.12 | community support done by linux-sunxi | ||||||||||
Allwinner | A64 | 2015.02? | |||||||||||
Allwinner | H3 | 2014.10 | |||||||||||
Amlogic | S905/X | 2015.Q2/2016.Q2 | |||||||||||
Broadcom | BCM2835 | 2013.02 | RPi1 | ||||||||||
Broadcom | BCM2836 | 2015.02 | RPi2 | ||||||||||
Broadcom | BCM2837 | 2016.02 | RPi3 | ||||||||||
Rockchip | rk3288 | 2014.08 | adopted by google partners in chromebooks, resulting in good license compliance | ||||||||||
Rockchip | rk3399 | 2016.Q2 |
Legend |
---|
Good support by maker (well working drivers in mainline kernel) |
Good support by community (well working drivers in mainline kernel) |
Open source code, no licensing issues or good docs are available |
Source available, bad licensing |
Closed source or blobbed only |
Actively fighting/colliding with open source |
Status is unknown |
Feature N/A |
Notes and references
RK3288
The RK3288 has had considerable adoption by google partners for use in Chromebooks. It has been around long enough that the rockchip linux community has had time to get both its boot process reverse-engineered (without needing proprietary tools), as well as get both u-boot and linux kernel mainline upstream support for all features. Towards the end of 2016 a chinese software libre developer working for Rockchip was permitted to release a gstreamer plugin and associated v4l2 kernel modifications sufficient to have an entirely libre video decode engine up and running.
The only down-side of the popularity of the RK3288 from the google "chrome" bandwagonning effect is the sheer overwhelming amount of crap that people come up with and post online, making it much harder to find useful information than it really should be. Actual useful resources such as how to boot the processor from scratch over its USB-OTG interface with an entirely libre toolchain, not requiring any proprietary crud at all or requiring any google-sponsored tools, processes or procedures (mandatory use of UEFI boot partitions for example), are completely drowned out by wordpress postings of yet another person's "recipe for installing {insert OS of their choice}". The best resource on the RK3288 is therefore the #linux-rockchip freenode channel, which is populated by technically well-informed individuals. The developer board of choice at the moment for the RK3288 is the Firefly.
Lastly it does have to be pointed out that Rockchip are not *actively* involved (with the exception of one employee), in supporting or endorsing cooperation, collaboration or any other form of active participation with the Software Libre Community. The only reason then why the RK3288 has such good support is down to its use in chromebooks (where google would clearly have required full legal copyright compliance as part of its use in products) combined with the active efforts of the Software Libre Community (including one Chinese citizen working for Rockchip) to mainline it.
A20
The A20 is the pin-compatible upgrade of the A10. It is one of the Allwinner processors that has had significant (unfunded, independent) reverse-engineering effort put into it. Several other processors from Allwinner have been based around it (A13, A13s, etc). As it is a "kitchen-sink" style processor it includes GbE, SATA-II, can handle dual screen 1920x1080, and can address up to 2GB of RAM. For $4.50 including the PMIC it is extremely powerful for its price, and has the huge benefit of being around for long enough that the software toolchain is entirely libre. This *includes* the USB FEL mode which is incredibly easy to use as a means to boot (or recover) a system. The FEL mode loader has been part of sunxi-tools since at least 2012.
Booting from NAND works, but the boot ROM may be a bit picky about which NAND ICs are supported and which are not. More information can be found at the NAND page. A20 also supports booting from other media, such as SD cards, eMMC and SPI NOR flash.