Exynos mainline porting

From postmarketOS
Jump to navigation Jump to search

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

There exists some WIP linux trees for other Exynos SoCs, or other devices with Exynos SoCs (this list can probably be extended):

  • grimler's repository contains branches related to Exynos 5420
  • 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
Note Exynos 4210 and 4412 were moved out of this article; see Samsung Exynos 4.

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
Suspend
Works


Devices

No results

Specifications

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

More information

Exynos 5250

Samsung Exynos 5250
Exynos 5250 from the Arndale board
Exynos 5250 from the Arndale board
Manufacturer Samsung
Name Exynos 5250
Architecture armv7
CPU 2x ARM Cortex A15 @ 1.7GHz
GPU ARM Mali-T604MP4
Year 2012
Process 32nm
Mainline yes
Components
CPU
Works
UART
Works
Storage
Works
USB
Works
Display
Works
GPU
Broken
Pinctrl
Works
I²C
Works
SPI
Audio
Works
Video
Broken
Thermal
Works
WiFi
Unavailable
Bluetooth
Unavailable
Modem
Unavailable
GPS
Unavailable
Camera
Suspend
Works


Devices

Device Codename Mainline
Google (Samsung) Nexus 10 samsung-manta
HP Chromebook 11 G1 google-spring Y
Samsung Chromebook google-snow Y

Specifications

  • 2x ARM Cortex A15 @ 1.7GHz
  • ARM Mali-T604MP4 @ 533 MHz; 68.224 GFLOPS

More information

Exynos 5420

Samsung Exynos 5420
Manufacturer Samsung
Name Exynos 5420
Architecture arm
CPU 4x 1.9 GHz A15 & 4x 1.3 GHz A7
GPU Mali-T628 MP6
Year 2013
Process 28nm
Mainline yes
Components
CPU
Works
UART
Works
Storage
Works
USB
Works
Display
Works
GPU
Broken
Pinctrl
Works
I²C
Works
SPI
Audio
Works
Video
Broken
Thermal
Works
WiFi
Unavailable
Bluetooth
Unavailable
Modem
Unavailable
GPS
Unavailable
Camera
Suspend
Works


Devices

Device Codename Mainline
Samsung Chromebook 2 11.6" google-peach-pit Y
Samsung Galaxy Note 10.1 (2014) samsung-n1awifi N
Samsung Galaxy Note Pro 12.2 (WiFi) samsung-v1awifi N
Samsung Galaxy Tab PRO 10.1 (WiFi) samsung-n2awifi
Samsung Galaxy Tab S 10.5 (WiFi) samsung-chagallwifi P
Samsung Galaxy Tab S 10.5" LTE samsung-chagalllte
Samsung Galaxy Tab S 8.4" LTE samsung-klimtlte P

Specifications

  • 4x Cortex A15 @ 1.9 GHz & 4x Cortex A7 @ 1.3 GHz
  • Mali-T628 MP6 @ 533 MHz; 109 GFLOPS

More information

Exynos 5422 (also Exynos 5800)

Samsung Exynos 5422
Manufacturer Samsung
Name Exynos 5422
Architecture armv7
CPU 4x 1.9 GHz A15 & 4x 1.3 GHz A7
GPU Mali-T628 MP6
Year 2014
Process nm
Mainline yes
Components
CPU
Works
UART
Works
Storage
Works
USB
Works
Display
Works
GPU
Works
Pinctrl
Works
I²C
Works
SPI
Audio
Works
Video
Works
Thermal
Works
WiFi
Bluetooth
Modem
GPS
Camera
Suspend
Works


Devices

Device Codename Mainline
ODROID HC2 odroid-hc2 Y
ODROID XU4 odroid-xu4 Y
Samsung Galaxy S5 (International 3G) samsung-k3gxx

Exynos 5433

Samsung Exynos 5433
Manufacturer Samsung
Name Exynos 5433
Architecture aarch64
CPU 4x 1.9 GHz A57 & 4x 1.3 GHz A53
GPU Mali-T760
Year 2014
Process nm
Mainline yes
Components
CPU
Works
UART
Works
Storage
Works
USB
Works
Display
Works
GPU
Works
Pinctrl
Works
I²C
Works
SPI
Audio
Works
Video
Thermal
Works
WiFi
Bluetooth
Modem
GPS
Camera
Suspend
Works


Devices

Device Codename Mainline
Samsung Galaxy Note 4 samsung-treltexx
Samsung Galaxy Note 4 S-LTE samsung-tre3calte N
Samsung Galaxy Tab S2 9.7 LTE samsung-gts210lte N

Specifications

  • 4x Cortex A57 @ 1.9 GHz & 4x Cortex A53 @ 1.3 GHz
  • Mali-T760

More information

  • The Tizen reference device TM2 is basically rebranded Note 4 for Tizen development. The TM2e is Note 4 Edge. Both are quite nicely supported by mainline Linux kernel and almost fully supported by Tizen open-source Linux kernel (not the vendor one).
  • Unlike TM2/TM2e, android devices based on Exynos 5433 cannot boot 64 bit kernels (due to early bootloaders and/or the tzsw being 32bit). This does not mean that it is impossible to get mainline on these devices though, other devices, for example samsung-serranove, which has mainline support, has the same problem.
  • The android bootloader seem to be incapable of booting a mainline kernel. Trying to boot a 32bit vanilla kernel does not give any (UART) output at all. After enabling some debug options like CONFIG_DEBUG_LL the error message is shown (or maybe error happens due to CONFIG_DEBUG_LL...):
Starting kernel at 0x20008000...

[MUIC] SWITCH_SEL(3)
Exception: data abort
pc : [<20008b40>]             lr : [<20008158>]
sp : 204d0b30  ip : 200080f4  fp : 10101105
r10: 204e0b30  r9 : 0156e210  r8 : 20000100
r7 : 00001f43  r6 : 204cf718  r5 : 000131fb  r4 : 20008000
r3 : 12c10000  r2 : 00000044  r1 : f7010000  r0 : 00000000
Flags: nZcv  IRQs off  FIQs off  Mode SVC_32
  • Working theory is that we can circumvent this error by using u-boot or some other bootloader to chainload Linux. There is an old patch-set for TM2 that can be used as a start for porting u-boot.
  • samsung-starqltechn has a u-boot port, and uses various clever tricks to make the stock bootloader happy. Trying a similar approach for Exynos5433 devices is probably a good start.

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 yes
Components
CPU
Works
UART
Storage
USB
Display
GPU
Pinctrl
Works
I²C
SPI
Audio
Video
Thermal
WiFi
Bluetooth
Modem
GPS
Camera
Suspend


Devices

No results

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

  • 4212: Samsung Gear 1 (support dropped from mainline kernel)
  • 4415 (support dropped from mainline kernel)
  • 5260: SM-N750 Galaxy Note 3 Neo
  • 5410
  • 5800
  • See also https://exynos.wiki.kernel.org

References