Samsung Galaxy S III (samsung-m0)
WARNING: This device is not recommended for future use with postmarketOS due to its armhf architecture. Alpine Linux (the distribution that postmarketOS extends) pmaports#599 has been considering dropping it. The processor of the device may support the armv7 architecture. If so, you can modify the device package and change the architecture accordingly. |
![]() Samsung Galaxy SIII LTE | |
Manufacturer | Samsung |
---|---|
Name | Galaxy S III LTE |
Codename | samsung-i9305 |
Released | 2012 |
Hardware | |
Chipset | Exynos 4412 Quad |
CPU | Quad-core 1.4 GHz Cortex-A9 |
GPU | Mali-400MP4 |
Display | 720x1280 Super AMOLED |
Storage | 16 GB |
Memory | 2 GB |
Architecture | armhf |
Software | |
Original software | Android 4.1.1 |
postmarketOS | |
Category | testing |
Pre-built images | no |
Flashing |
No data |
---|---|
USB Networking |
Works |
Internal storage |
No data |
SD card |
No data |
Battery |
No data |
Screen |
Works |
Touchscreen |
Works |
Multimedia | |
3D Acceleration |
No data |
Audio |
No data |
Camera |
No data |
Camera Flash |
No data |
Connectivity | |
WiFi |
Works |
Bluetooth |
No data |
GPS |
No data |
NFC |
No data |
Modem | |
Calls |
No data |
SMS |
No data |
Mobile data |
No data |
Miscellaneous | |
FDE |
Works |
USB OTG |
No data |
HDMI/DP |
No data |
Sensors | |
Accelerometer |
No data |
Magnetometer |
No data |
Ambient Light |
No data |
Proximity |
No data |
Hall Effect |
No data |
Haptics |
No data |
Barometer |
No data |
So far, what works for samsung-i9305 (Galaxy SIII LTE version) also works for the samsung-i9300 (Galaxy SIII international GSM version without LTE). (Neither of these SIII models should be confused with the North American SIII models, which require OS builds.)
Contributors
- tyxieblub
- colaur
Maintainer(s)
How to enter flash mode
- Hold power + Home + volume down
- When prompted, release all buttons and press volume up
Installation
Set phone to ODIN mode
1. Turn off phone 2. Connect USB cable 3. Hold VOLUME_DOWN + HOME + POWER until you get Warning!! screen 4. Push VOLUME_UP to continue to ODIN mode screen
At this point you can follow the general installation guide. Installation to the system is not yet supported for the device, so make sure to install postmarketOS to the sdcard. Also be sure to not enable FDE as osk-sdl is not yet supported for this device, and enabling it would require you to telnet into the device to unlock it.
Installing with downstream kernel
- FIRST PMBOOTSTRAP INSTALL
mkdir ~/code
cd ~/code
git clone https://gitlab.com/postmarketOS/pmbootstrap.git
- CONFIG PMBOOTSTRAP
alias pmbootstrap=~/code/pmbootstrap/pmbootstrap.py
pmbootstrap init
- work path default
- samsung
- i9305
- n
- wathever
- weston
- n
- none
- y
- samsung-i9305
- y
- FOR DEBUGGING (NOT REQUIRED)
pmbootstrap initfs hook_add debug-shell
Check log with 'tail -f ~/.local/var/pmbootstrap/log.txt'
- CREATE RECOVERY ZIP (for flashing with TWRP)
pmbootstrap install --no-fde --android-recovery-zip
- COPY ON SDCARD
cp ~/.local/var/pmbootstrap/chroot_buildroot_armhf/var/lib/postmarketos-android-recovery-installer/pmos-samsung-i9305.zip /media/computer/sdcard/
- Insert sdcard in phone
- Reboot on recovery with up+home+power
- Install from zip
- Reboot
- IF BOOT STANDBY (DEBUG)
- Connect with USB cable
telnet 172.16.42.1
pmos_continue_boot
Wifi
To get the wifi working, you'll need to modify the wpa_supplicant configuration. If this is not done, wpa_supplicant starts with -ip2p0 which is not supported on our device.
$ echo 'wpa_supplicant_args="-iwlan0 -Dwext"' | sudo tee /etc/conf.d/wpa_supplicant
Write the following file to
/etc/network/interfaces
auto lo iface lo inet loopback auto wlan0 iface wlan0 inet dhcp
To connect using NetworkManger you will need to change the default DHCP client from the NetworkManager internal DHCP client to dhclient (you will need to specify the additional package at install with pmbootstrap or apk add dhclient if you have a connection) by creating
/etc/NetworkManager/conf.d/dhcp-client.conf
and adding
[main] dhcp=dhclient
Start the networkmanger service and restart networking service
$ sudo rc-service networkmanger start $ sudo rc-service networking restart
Search for available WiFi networks and connect to network
$ sudo nmcli device wifi list ifname wlan0 $ sudo nmcli device wifi connect "$SSID" password "$PASSWORD" ifname wlan0
Set services to start
$ sudo rc-update add wpa_supplicant boot $ sudo rc-update add networking default $ sudo rc-update add networkmanager default
Reboot and you should be connected on boot.
You may also connect directly using wpa_supplicant forgoing NetworkManager. Please note this method will not automatically reconnect to WiFi if you loose connection
$ wpa_passphrase YOUR_SSID YOUR_PASSPHRASE | sudo tee /etc/wpa_supplicant/wpa_supplicant.conf $ sudo rc-service wpa_supplicant restart
Mainline Kernel
The mainline kernel now has some support for the Samsung Galaxy SIII LTE (i9305):
Upstream dts: exynos4412-i9305.dts
Upstream status: Midas on Mainline.
Note that a patch is required to make it work with the stock samsung bootloader.
forkbomb from LineageOS got mainline u-boot running on this device: [1]
Replicant has this device booting with mainline Linux and almost mainline U-Boot with only the need for a few patches on top and would like to collaborate with us [2]
The Qualcomm Gobi MDM9615 Modem seems to have mainline kernel support as well: [3]
Replicant and LineageOS successfully got the Lima driver for Mesa working on Mali when using mainline linux: video success announcement
Replicant currently supports this device in 6.0 and is doing a lot of research in order to get it running with a mainline kernel with a mainline bootloader for Replicant 9. More bootloader research is here.
xboot might be a completely free bootloader option. Looks to have zero proprietary blobs.