Jump to content

Samsung Z1 (samsung-kiran)

From postmarketOS Wiki
Samsung Z1
Samsung Z1 running xfce4
Samsung Z1 running xfce4
Manufacturer Samsung
Name Z1
Codename samsung-kiran
Released 2015
Type handset
Hardware
Chipset Spreadtrum SC7727S
CPU 2x ARM Cortex-A7
GPU Mali 400 MP1
Display 480x800 TFT
Storage 4 GB
Memory 768 MB
Architecture armv7
Software
Original software Tizen
Original version
The version the device was shipped with.
2.4.0 (Magnolia)
postmarketOS
Category testing
Pre-built images
Whether pre-built images are available here.
no
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.
3.10.17
Features
Flashing
It is possible to flash the device with pmbootstrap flasher.
Works
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
Charging and battery level reporting works
Works
Screen
Display works. Ideally with sleep mode and brightness control.
Works
Touchscreen
Works
Multimedia
3D Acceleration
Untested
Audio
Audio playback, microphone, headset and buttons.
Works
Camera
Untested
Connectivity
WiFi
Works
Bluetooth
Untested
GPS
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
Broken
Sensors
Accelerometer
Auto screen rotation works in desktops e.g. Phosh or Plasma Mobile
Untested


Contributors

  • peremen

Maintainer(s)

Users owning this device

How to enter flash mode

Similar as Samsung's Android counterparts:

  • Hold Power + Home + Volume Down buttons to enter flash mode.
  • Hold Power + Home + Volume Up buttons to enter recovery mode.

/proc/cmdlines for different power on reasons:

  • Normal mode: mem=768M ram=768M root=/dev/mmcblk0p24 ro rootfstype=ext4 rootwait bootmode=normal pwron.reason=0x0 ...
  • Recovery mode: mem=768M ram=768M root=/dev/mmcblk0p24 ro rootfstype=ext4 rootwait systemd.unit=recovery-mode.target pwron.reason=0x0 ...
  • Plugging in charger: mem=768M ram=768M root=/dev/mmcblk0p24 ro rootfstype=ext4 rootwait systemd.unit=charging-mode.target pwron.reason=0x0 ...

Installation/Known Problems

Technically similar as Samsung's Android counterparts, however, there are some caveats. The stock Tizen boot image uses dzImage, basically vmlinuz + Spreadtrum dtb binary (can generate using dtbtool-sprd) with custom header. Because Tizen kernel does not enable initramfs, and S-BOOT on this device seems to lack support of it, we are using isorec. The current postmarketOS kernel will use KERNEL to store dzImage, RAMDISK to store initramfs. Make sure to flash both partitions when going from Tizen to postmarketOS and vice versa.

Booting non-stock kernel image will show a red exclamation mark on the top left of boot screen.

The sprdfb driver of Tizen kernel is different from Android devices using the same SoC: it has DRM driver for this SoC, predates what is in the mainline. Graphics memory management seems to be done using libtbm in Tizen and X.org proprietary driver. There is no memory region for sprdfb driver mentioned in the .dts file, thus mmap() to the framebuffer returns only an error. The postmarketOS kernel patch manually includes the memory region in the .dts file and modifies the memory allocation to make framebuffer work. Lack of proper Spreadtrum datasheet makes further progress hard.

Components

See also