Samsung Galaxy S III Neo (samsung-s3ve3g)

From postmarketOS Wiki
Samsung Galaxy S III Neo
Samsung Galaxy S III Neo
Samsung Galaxy S III Neo
Manufacturer Samsung
Name Galaxy S III Neo
Codename samsung-s3ve3g
Released 2014
Type handset
Hardware
Chipset Qualcomm Snapdragon 400 (MSM8226)
CPU Quad-core 1.2 or 1.4 GHz Krait 300
GPU Adreno 305
Display 720x1280
Storage 16 GB
Memory 1397 MB
Architecture armv7
Software
Original software Android
Original version 4.4.4
postmarketOS
Category testing
Pre-built images no
Mainline yes
Features
Flashing
Works
USB Networking
Works
Internal storage
SD card
Battery
Screen
Works
Touchscreen
Works
Multimedia
3D Acceleration
Audio
Camera
Camera Flash
Connectivity
WiFi
Bluetooth
GPS
NFC
Modem
Calls
SMS
Mobile data
Miscellaneous
FDE
USB OTG
HDMI/DP
Sensors
Accelerometer
Magnetometer
Ambient Light
Proximity
Hall Effect
Haptics
Barometer


Contributors

Maintainer(s)

Users owning this device


What works

  • Flash Kernel (pmbootstrap flasher flash_kernel)
  • Flash Rootfs (pmbootstrap flasher flash_rootfs)
  • Initramfs boot
  • USB Network with internet
  • SSH Connectivity
  • Framebuffer graphics (Splash screens)
  • Touchscreen
  • Xwayland
  • Weston on framebuffer
  • Firefox on Weston (Xwayland)

What does not work

  • Everything else was untested

How to enter flash mode

Press and hold Volume Down + Power simultaneously. Then click Volume Up to confirm.

How to enter recovery mode

Press and hold Volume Up + Power simultaneously.

Installation

First, install pmbootstrap.

Setup device to be used:

$ pmbootstrap init
...
Vendor [samsung]: samsung          <- enter this
Device codename [s3ve3g]: s3ve3g   <- enter this
User interface [weston]:           <- choose any UI by your preference
...

Build the rootfs image:

$ pmbootstrap install

Then in order to flash it put your device in download mode, and plug it in USB. Then do:

$ pmbootstrap flasher flash_rootfs

 Hold "Volume down" + "Home" buttons at the end of the process,
 so that when phone reboots put it in flashing mode again 

$ pmbootstrap flasher flash_kernel 

 This time, don't hold any button, let it reboot to Linux!

Booting from SD card also works:

$ pmbootstrap install --sdcard=/dev/sdg

 Remember to change device /dev/sd* to your card reader

$ pmbootstrap flasher flash_kernel

Additional info

Phone is booting fine. When in charging mode it shows postmarketOS charging error splash screen.

  • Back flashlight:
$ echo 255 > /sys/devices/leds-qpnp-rgb-e1d8be00/leds/white/brightness # turn on
$ echo 0 > /sys/devices/leds-qpnp-rgb-e1d8be00/leds/white/brightness   # turn off
  • Hardware information
Peripheral Type Driver Device
Accelerometer mpu6500_input /devices/f9924000.i2c/i2c-2/2-0068
Camera s5k6a3yx (front)
s5k4h5yb(Samsung) or imx175(Sony) (back)
Camera Actuator msm_actuator /devices/i2c.78/i2c-20/20-0036
Charger (MUIC) sm5502 /devices/i2c.0/i2c-15/15-0025
GPU Adreno 305 -
Gyroscope mpu6500_input /devices/f9924000.i2c/i2c-2/2-0068
Magnetic field sensor yas532 /devices/f9924000.i2c/i2c-2/2-002e
NFC pn547 /devices/f9925000.i2c/i2c-3/3-002b
Light and proximity sensor cm36651 /devices/i2c.81/i2c-23/23-0018
RGB Led an30259a /devices/i2c.81/i2c-23/23-0030
Touchscreen mms144_ts /devices/f9927000.i2c/i2c-5/5-0048
Touchscreen buttons cypress_touchkey /devices/i2c.82/i2c-21/21-0020

Mainline Kernel

According to phoronix there is a mainline DTS available since 5.15.

Photos