Group: Hardware/Components/SOCs

From LibrePlanet
Jump to: navigation, search
(Amlogic: Add reference for what the nonfree binary do)
(Amlogic: add forgetten bl301 " > cp $UBOOTDIR/build/scp_task/bl301.bin fip/")
Line 23: Line 23:
 
10:15 < repk> So BL1 is the CPU boot ROM code executes in SRAM and lunch BL2 which initializes DDR load all remaining firmwares (BL30 SCP, BL31 secure monitor, BL32 TEE, BL33 u-boot) in it. Then BL31 installs the secure monitor sends bl30 to SCP, and gives control to BL32 (if exists e.g. OPTEE) and BL33 (usually u-boot). Then u-boot loads boots linux.<br/>
 
10:15 < repk> So BL1 is the CPU boot ROM code executes in SRAM and lunch BL2 which initializes DDR load all remaining firmwares (BL30 SCP, BL31 secure monitor, BL32 TEE, BL33 u-boot) in it. Then BL31 installs the secure monitor sends bl30 to SCP, and gives control to BL32 (if exists e.g. OPTEE) and BL33 (usually u-boot). Then u-boot loads boots linux.<br/>
 
</ref>:
 
</ref>:
 +
** bl301.bin
 
** bl21.bin
 
** bl21.bin
 
** acs.bin
 
** acs.bin

Revision as of 03:40, 18 October 2019

Vendor Product GPU RYF issues Linux upstream status Bootloader upstream status Busses for WiFi Companion chips Documentation Minumum quantities Available until
Amlogic S805X Mali-450 (Lima or Panfrost?)
  • Free software images tools WIP
  • nonfree binaries in the bootloader[1][2]:
    • bl301.bin
    • bl21.bin
    • acs.bin
    • bl2.bin
    • bl30.bin
    • bl31.img
TODO: Look at status TODO: Look at status
Texas instruments DM370(like omap3 but higher speed) Powervr
  • No free GPU driver
Good
  • good (free software unsigned possible)
  • USB Host
  • Probably has no mPCIe
? ? ? ?
Texas instruments omap4 Powervr
  • No free GPU driver
Probably good
  • Good
  • USB Host
  • Probably has no mPCIe
? ? ? ?
Allwinner Tech A31 Powervr
  • No free driver for the GPU (PowerVR)
very few missing drivers ?
  • USB Host
? ? ? ?
Allwinner Tech
  • A10
  • A10s
  • A13
  • A20
Mali
  • GPU (WIP)
  • Video encoding/decoding offload processor (WIP)
very few missing drivers Good
  • USB Host
? ? ? ?
Samsung Exynos 3 Single -> Exynos 5 dual Mali
  • signed bootloaders
? ?
  • USB Host
? ? ? ?
Samsung Exynos 5 Octa Powervr
  • Probably has signed bootloaders
? ?
  • USB Host
? ? ? ?
Ingenic JZ4760 Vivante GC200 ? ?
  • Free software bootloader exist
  • TODO: check upstream status
  • USB Host
?
  • TODO: find the documentation
1 ?
NXP I.MX 25 No GPU No known issues Mostly complete Mostly complete? (bareobx?, u-boot?)
  • USB host
  •  ?
? ? ?
NXP I.MX 50 ?

Issues:

  • GPU
  • Video decoding offload

TODO:

Mostly complete Mostly complete? (bareobx?, u-boot?)
  • USB host
  •  ?
? ? ?
NXP I.MX 51 ?

Issues:

  • GPU
  • Video decoding offload

Optional:

Mostly complete Mostly complete? (bareobx?, u-boot?)
  • USB host
  •  ?
? ? ?
NXP
  • i.MX6 Dual
  • i.MX6 Quad
  • i.MX6 DualPlus
  • i.MX6 QuadPlus
Vivante

Issues:

  • GPU (WIP)
  • Video encoding/decoding offload processor

Optional:

Mostly complete Mostly complete? (bareobx?, u-boot?)
  • USB host
  •  ?
? ? ?
NXP
  • i.MX6 i.MX6 SoloLite
  • i.MX6 i.MX6 SoloX
?

Good:

  • No video decoding/encoding offload processor

Issues:

Optional:

Mostly complete Mostly complete? (bareobx?, u-boot?)
  • USB host
  •  ?
? ? ?
NXP
  • I.MX6 UltraLite
  • I.MX6 UUL
No GPU Good:
  • No GPU
  • No video decoding/encoding offload processor

Optional:

Good Good
  • USB host
  •  ?
? ? ?
Samsung
  • S3C2410
  • S3C2440
  • S3C2442
No GPU? No known issues Needs to be ported to the devicetree ?
  • USB host
  •  ?
? ? ?

References

  1. https://gitlab.denx.de/u-boot/u-boot/raw/master/board/amlogic/p212/README.libretech-ac
  2. From #linux-amlogic on Freenode:
    10:10 < repk> GNUtoo: bl31 is secure monitor or the ATF runtime, it runs in EL3 and dispatch SMC to secure/non-secure world. bl301 is a part of the SCP firmware. On meson the SCP is run by a microcontroller (cortex-M3) and handles power related stuff.
    10:10 < repk> see https://trustedfirmware-a.readthedocs.io/en/latest/ for more on that
    10:15 < repk> So BL1 is the CPU boot ROM code executes in SRAM and lunch BL2 which initializes DDR load all remaining firmwares (BL30 SCP, BL31 secure monitor, BL32 TEE, BL33 u-boot) in it. Then BL31 installs the secure monitor sends bl30 to SCP, and gives control to BL32 (if exists e.g. OPTEE) and BL33 (usually u-boot). Then u-boot loads boots linux.