Samsung Galaxy A40 (samsung-a40)
| This device has been archived. This means that it no longer appears in pmbootstrap and is likely broken. It can still be selected in pmbootstrap init by typing in the vendor and codename, but you will have to build the kernel package manually. |
|
| |
| Manufacturer | Samsung |
|---|---|
| Name | Galaxy A40 |
| Codename | samsung-a40 |
| Released | 2019 |
| Type | handset |
| Hardware | |
| Chipset | Samsung Exynos 7904 |
| CPU |
Octa-core (2x1.8 GHz Cortex-A73 6x1.6 GHz Cortex-A53) |
| GPU | Mali-G71 MP2 |
| Display | 1080 x 2340 Super AMOLED |
| Storage | 64GB |
| Memory | 4GB |
| Architecture | aarch64 |
| Software | |
Original software The software and version the device was shipped with. |
Android 9 |
Extended version The most recent supported version from the manufacturer. |
Android |
| postmarketOS | |
| Category | archived |
Mainline Instead of a Linux kernel fork, it is possible to run (Close to) Mainline. |
no |
pmOS kernel The kernel version that runs on the device's port. |
4.4.177 |
Unixbench score Unixbench Whetstone/Dhrystone score. See Unixbench. |
3683.6 |
| Device package |
|
| Kernel package |
|
Flashing Whether it is possible to flash the device with pmbootstrap flasher. |
Partial
|
|---|---|
USB Networking After connecting the device with USB to your PC, you can connect to it via telnet (initramfs) or SSH (booted system). |
Works
|
Battery Whether charging and battery level reporting work. |
Works
|
Screen Whether the display works; ideally with sleep mode and brightness control. |
Works
|
Touchscreen |
Works
|
| Multimedia | |
3D Acceleration |
Untested
|
Audio Audio playback, microphone, headset and buttons. |
Untested
|
Camera |
Untested
|
IR TX |
Untested
|
| Connectivity | |
WiFi |
Works
|
Bluetooth |
Untested
|
GPS |
Untested
|
NFC Near Field Communication |
Untested
|
| Modem | |
Calls |
Untested
|
SMS |
Untested
|
Mobile data |
Untested
|
| Miscellaneous | |
FDE Full disk encryption and unlocking with unl0kr. |
Untested
|
USB OTG USB On-The-Go or USB-C Role switching. |
Untested
|
| Sensors | |
Accelerometer Handles automatic screen rotation in many interfaces. |
Untested
|
Contributors
Johnnyhandsome69 did the work for samsung-a30, Resulknad forked for samsung-a40
Maintainer(s)
Resulknad
Users owning this device
- Affenull2345 (Notes: Sailfish OS, backup)
- Dreamos82 (Notes: PMOs playground)
- Kotik (Notes: Running CrDroid 8.2, Android 12, 4/64.)
- Resulknad (Notes: Running modified ffmpeg on galaxy a40 for 4k HEVC decode -> 4k h264 encode at 20fps live stream.)
- Rmux (Notes: Almost dead, using as Minecraft server)
- Tigersusyt (Notes: SM-A405FN/DS - Needs motherboard repair, currently dead)
How to enter flash mode
- Bootloader/Download mode: With the device powered off, hold
Volume Down+Volume Upand connect USB cable to PC. - Recovery: With the device powered off, hold
Volume Up+Poweruntil logo appears.
Installation
1. Use: pmbootstrap install --android-recovery-zip --recovery-install-partition=data
2. Copy pmos-samsung-a40.zip to external sdcard
3. Boot into TWRP
4. Go to wipe and select Format Data and type yes
5. Then select Advanced Wipe and check: Dalvik/ ART Cache, Cache, Data
6. Go to Mount and select only: Micro SD Card (uncheck all other options), then press Select Storage and select the Micro SD Card and press ok.
7. Go to Install, and search for the zip file (If you see failed to mount /data, ignore it)
8. Reboot to system
Mainlining
An attempt at mainstreaming has been started here: https://gitlab.com/dreamos82/linux-for-samsung-galaxy-a-40 (it cannot proceed further because phone broke)
For now the kernel builds and it start to boot, there are some errors. Touchscreen and volume buttons dts entriers have been added, but they still need to be finalized. Touchscreen driver starts but it doesn't respond to input.
Volume buttons are untested.
There is also a closed PR for uniloader: Samsung A40 support for uni loader
The only thing it needs fixed is the scaling of the uniLoader logo, but apart from that, it works.
Tested UIs
- console
- sxmo-de-dwm
- xfce4 (need to be launched from cli with
startx)
Photos
-
Galaxy A40 Running XFCE4
See also
- pmaports!6916 Initial merge request
device-samsung-a40
linux-samsung-a40
firmware-samsung-a40