Jump to content

Samsung Galaxy Core Prime VE LTE (samsung-coreprimevelte)

From postmarketOS Wiki
Revision as of 16:17, 2 July 2022 by LegoLivesMatter (talk | contribs) (Add info about UART)
Note This is one specific Galaxy Core Prime hardware revision. For an overview, see Samsung Galaxy Core Prime
Samsung Galaxy Core Prime VE LTE
Manufacturer Samsung
Name Galaxy Core Prime VE LTE
Codename samsung-coreprimevelte
Released 2014
Hardware
Chipset Marvell PXA1908
CPU Quad-core 1.2 GHz Cortex-A53
GPU Vivante GC7000UL
Display 480x800
Storage 8 GB
Memory 1 GB
Architecture aarch64
Software
Original software Android 5.1.1 on Linux 3.14.27
postmarketOS
Category testing
Pre-built images no
postmarketOS kernel 3.14.27
Features
Flashing
Broken
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
Broken
Bluetooth
No data
GPS
No data
NFC
No data
Modem
Calls
No data
SMS
No data
Mobile data
No data
Miscellaneous
FDE
No data
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


Users owning this device


Mainline

According to Documentation/arm/marvell.rst the PXA1908 chipset should be supported, but it is unknown whether it's actually supported.

Apparently, the PXA1908 chipset is also known as IAP140, as you can see here.

Downstream

It's possible to compile the Samsung-provided downstream kernel with some config changes (arch/arm64/configs/pxa1908_coreprimevelte_eur_defconfig should be used as a defconfig):

CONFIG_CRYPTO_XTS should be set, and CONFIG_ANDROID_PARANOID_NETWORK should be unset. These are required by postmarketOS.

CONFIG_OPTIMIZE_FOR_SIZE should be set, or the boot image will be too big for the partition.

The concatenated dtb blob should be generated with https://github.com/osm0sis/pxa-mkbootimg, because the G361F's chipset is a bit different.

Flashing

The device can be put in flashing mode by powering it on while pressing the POWER + HOME + VOLUME DOWN buttons simultaneously, and answering the appearing question by pressing VOLUME UP.

As of now, pmbootstrap flasher flash_kernel works correctly, but flash_rootfs errors out with Failed to confirm end of file transfer sequence!. As some Samsung devices seem to check whether the flashed payload is valid, it's possible that the device denies the image because of the "weird" partitioning scheme (the system image is partitioned into two filesystems).

Flashing via recovery zip works.

Booting

The SM-G361F uses the Marvell PXA1908 chipset, which uses a nonstandard boot.img and dtb format, handled by pxa-mkbootimg.

Additionally, the device requires a legacy U-Boot kernel image as the kernel in boot.img, with a quirk: the image name must be exactly pxa1928dkb linux. With this parameter overridden, the device boots successfully into the postmarketOS kernel, and USB networking is available, however it automatically reboots after around 3-4 minutes of uptime. This is yet to be investigated.

UART

UART over the microUSB connector can be enabled by putting a 150K or 619K resistor between the ID and GND pins. The device TX will be on the D- pin, and RX will be on the D+ pin. A 619K will power on the device as soon as the UART cable is connected, while a 150K won't. Signal level is 1.8V.

See also