Exynos mainline porting

From postmarketOS

This page only contains some info, data and links regarding mainline on Exynos SoCs. If you want to mainline a device please follow the Mainlining guide.

The mainline kernel has (at least some) support for several Exynos SoCs:

  • Exynos 3250
  • Exynos 4210
  • Exynos 4412
  • Exynos 5250
  • Exynos 5260
  • Exynos 5410
  • Exynos 5420
  • Exynos 5422
  • Exynos 5433
  • Exynos 5800
  • Exynos 7 (some early version of Exynos 7420 [1])
  • Exynos 7885
  • Exynos 850
  • Exynos Auto v9

Other variants

Currently, there are mainline development repositories for Exynos4 and Exynos5 at gitlab: https://gitlab.com/exynos4-mainline/linux, https://gitlab.com/exynos5-mainline/linux. Tags in those repositories are used for building postmarketos's linux-postmarketos-exynos{4,5} packages. For these two Exynos variants there are dedicated wiki pages, see Exynos4 and Exynos5. There is also a page dedicated to Exynos 5433: Samsung Exynos 5433 Octa.

None of the other Exynos variants have repositories or packages that can be used in postmarketos, though there are some development going on somewhere. Some repositories that that could be interesting include:

  • PabloPL's repository contains branches related to Exynos 7420, 7580, 8890
  • dsankouski's repository contains branches related to Exynos 7880
  • VDavid003's repository contains branches related to Exynos 7885
  • ivoszbg's repository contains branches related to Exynos 8895
  • krzk's repository contains branches with several vendor (Samsung) kernel sources for many Exynos SoCs

Samsung's stock bootloader expects devicetree in a certain format, and modifies the device tree before booting kernel. This is pretty inconvenient when testing mainline kernels, and so it is a good idea to use a secondary bootloader and boot mainline from it. U-boot does not support modern Exynos SoCs, but there are some other small bootloaders/kernel wrappers that can be used:

  • minimal_sboot_wrapper, wrapper to make it possible to boot mainline kernels with Samsung's Sboot bootloader (made for Exynos 7885)
  • uniloader, inspired by minimal_sboot_wrapper but with support for more Exynos variants and with more features

Exynos 3250

Samsung Exynos 3250
Exynos 3250 from the Samsung Gear 2 smartwatch
Exynos 3250 from the Samsung Gear 2 smartwatch
Manufacturer Samsung
Name Exynos 3250
Architecture armv7
CPU 2x ARM Cortex-A7 MPcore
GPU ARM Mali-400 GPU
Year 2014
Process 28nm
Mainline yes
Components
CPU
Works
UART
Works
Storage
Works
USB
Works
Display
Works
GPU
Works
Pinctrl
Works
I²C
Works
SPI
Audio
Video
Thermal
Works
WiFi
Bluetooth
Modem
GPS
Camera
NPU
Suspend
Works
Ethernet


Devices

No results

Specifications

  • 2x ARM Cortex-A7 MPcore
  • ARM Mali-400 GPU

More information

Exynos 8895

Samsung Exynos 8895
Manufacturer Samsung
Name Exynos 8895
Architecture aarch64
CPU 4x 2.3 GHz Mongoose M2 & 4x 1.7 GHz Cortex-A53
GPU Mali-G71 MP20
Year 2017
Process 10nm
Mainline no
Components
CPU
Works
UART
Storage
USB
Display
GPU
Pinctrl
Works
I²C
SPI
Audio
Video
Thermal
WiFi
Bluetooth
Modem
GPS
Camera
NPU
Suspend
Ethernet


Devices

Device Codename Mainline
Samsung Galaxy Note 8 (Exynos) samsung-greatlte
Samsung Galaxy S8 samsung-dreamlte, samsung-dream2lte P

Specifications

  • 4x 2.3 GHz Mongoose M2 & 4x 1.7 GHz Cortex-A53
  • Mali-G71 MP20

Downstream status

Galaxy S8 has a working port.

Mainline status

Boots, pinctrl and pstore works. WIP

More information

Other SoCs

  • 4212: Samsung Gear 1 (support dropped from mainline kernel)
  • 4415 (support dropped from mainline kernel)
  • 5260: SM-N750 Galaxy Note 3 Neo
  • 5410
  • 5800

Samsung SoCs Page

SoC Codenames Arch Year Mainline
Samsung Exynos 3250 armv7 2014 Yes
Samsung Exynos 4210 armv7 2011 Yes
Samsung Exynos 4212 armv7 2012 Yes
Samsung Exynos 4412 armv7 2012 Yes
Samsung Exynos 4415 armv7 2014 No
Samsung Exynos 5250 armv7 2012 Yes
Samsung Exynos 5420 armv7 2013 Yes
Samsung Exynos 5422 armv7 2014 Yes
Samsung Exynos 5433 aarch64 2014 Yes
Samsung Exynos 7870 aarch64 2016 Yes
Samsung Exynos 8895 aarch64 2017 No
Samsung Exynos 990 aarch64 2020 Yes

See also

References