Difference between revisions of "Nobby 230 (nobby-230)"

From postmarketOS
Jump to: navigation, search
(nobby-230: new device)
 
(nobby-230: add display and kernels sections)
 
(One intermediate revision by the same user not shown)
Line 33: Line 33:
 
  | status_calls =  
 
  | status_calls =  
 
  | status = Boots, needs display controller driver
 
  | status = Boots, needs display controller driver
  | booting = no
+
  | booting = yes
 
  | pmoskernel = 3.10.17
 
  | pmoskernel = 3.10.17
 
  | whet_dhry = 183.5
 
  | whet_dhry = 183.5
Line 57: Line 57:
 
* UbiFS partitions are not detected, so only sdcard installation will work
 
* UbiFS partitions are not detected, so only sdcard installation will work
 
* Display output is corrupted
 
* Display output is corrupted
 +
 +
=== Display ===
 +
==== Display issues ====
 +
* Wrong scaling
 +
* Double screen with wrong colors
 +
* Bottom part of screen is empty (main issue)
 +
 +
==== Possible reasons ====
 +
* Unknown revision of ILI9340
 +
* Bug in sprdfb driver
 +
* Vendor used another display controller and made a fake ili9340 driver to make it boot since the bootloader is picky about panel id and function names (the least possible version, may happen if the vendor didn't have bootloader sources)
 +
 +
==== Attempts to fix ====
 +
* Write a ili9340 driver with init sequence from mainline kernel
 +
* Use init sequences from different revisions of ili9341 driver
 +
* Change clocks constants in sprdfb sources
 +
* Try kernels with different sprdfb implementation (see Kernels section)
 +
* Ignore some cmdline parameters (the kernel doesn't boot then)
  
 
== Installation ==
 
== Installation ==
Line 68: Line 86:
  
 
<code>fastboot boot</code> doesn't work as intended.
 
<code>fastboot boot</code> doesn't work as intended.
 +
 +
== Kernels ==
 +
This section may be interesting for those who want to port postmarketOS on SP7715GA device.
 +
I've tried some downstream kernels and there are my findings:
 +
* [https://github.com/bigzz/sc7715-kernel bigzz/sc7715-kernel]: boots, but doesn't support sdcardFS. UbiFS partitions weren't detected despite having related options set up in kernel config. This kernel may be used if your phone doesn't use ubiFS and you plan to flash pmOS on internal storage.
 +
* BLU kernel: supports sdcardFS, doesn't detect ubiFS partitions. Being used for this device as the best suiting kernel.
 +
* [https://github.com/diepquynh/android_kernel_oc_vivalto3gvn samsung-vivalto3gvn kernel]: has defconfig only for vivalto, so it needs to be adjusted to fit sp7715ga. Has updated and refactored implementation of sprdfb. Screen doesn't work, the bootloader and kernel seem to not fit each other, so kernel decides to use panel_id=0, which leads to using lcd_dummy driver. Also, the kernel is very unpredictable and booted only once for me, even though I didn't rebuild it for other attempts.
 +
* [https://github.com/blade-af3/android_kernel_zte_P731A20 Blade AF3 kernel]: has building issues with autotst driver.
  
 
== See also ==
 
== See also ==
 
* [https://github.com/Qiangong2/android_kernel_scx15_sp7715ga_FS001 Kernel sources]
 
* [https://github.com/Qiangong2/android_kernel_scx15_sp7715ga_FS001 Kernel sources]
<!--
 
 
* [https://gitlab.com/postmarketOS/pmaports/tree/master/device/device-nobby-230 Device package]
 
* [https://gitlab.com/postmarketOS/pmaports/tree/master/device/device-nobby-230 Device package]
 
* [https://gitlab.com/postmarketOS/pmaports/tree/master/device/linux-nobby-230 Kernel package]
 
* [https://gitlab.com/postmarketOS/pmaports/tree/master/device/linux-nobby-230 Kernel package]
-->
 

Latest revision as of 06:30, 11 January 2020

Nobby 230
Nobby 230
Nobby 230
Manufacturer Nobby
Name 230
Codename nobby-230
Released 2019
Original software Mocor 5 OS (based on Android 4.4.2)
postmarketOS kernel 3.10.17
Hardware
Chipset Spreadtrum SC7715GA
CPU 1 x ARM Cortex-A7 @ 1.0 Ghz
GPU Mali-400MP1
Display 240x320
Storage 512 MB
Memory 256 MB
Architecture armv7
Unixbench Whet/Dhry score 183.5
Features
USB Networking
Works
Flashing
Partial
Touchscreen
Unavailable
Display
Partial
WiFi
Xwayland
FDE
Mainline
Battery
Partial
3D Acceleration
Accelerometer
Unavailable
Audio
Partial
Bluetooth
Camera
GPS
Mobile data
SMS
Calls
USB OTG
Unavailable



Contributors

Maintainer(s)

Users owning this device


How to enter flash mode

Hold Accept and Power buttons to enter fastboot.

Issues

  • UbiFS partitions are not detected, so only sdcard installation will work
  • Display output is corrupted

Display

Display issues

  • Wrong scaling
  • Double screen with wrong colors
  • Bottom part of screen is empty (main issue)

Possible reasons

  • Unknown revision of ILI9340
  • Bug in sprdfb driver
  • Vendor used another display controller and made a fake ili9340 driver to make it boot since the bootloader is picky about panel id and function names (the least possible version, may happen if the vendor didn't have bootloader sources)

Attempts to fix

  • Write a ili9340 driver with init sequence from mainline kernel
  • Use init sequences from different revisions of ili9341 driver
  • Change clocks constants in sprdfb sources
  • Try kernels with different sprdfb implementation (see Kernels section)
  • Ignore some cmdline parameters (the kernel doesn't boot then)

Installation

Install pmOS on microSD with pmbootstrap install --sdcard /dev/mmcblkX where /dev/mmcblkX is path to card that can be found with lsblk. Insert card in device, enter fastboot as written above and run

pmbootstrap flasher flash_kernel
fastboot reboot

fastboot boot doesn't work as intended.

Kernels

This section may be interesting for those who want to port postmarketOS on SP7715GA device. I've tried some downstream kernels and there are my findings:

  • bigzz/sc7715-kernel: boots, but doesn't support sdcardFS. UbiFS partitions weren't detected despite having related options set up in kernel config. This kernel may be used if your phone doesn't use ubiFS and you plan to flash pmOS on internal storage.
  • BLU kernel: supports sdcardFS, doesn't detect ubiFS partitions. Being used for this device as the best suiting kernel.
  • samsung-vivalto3gvn kernel: has defconfig only for vivalto, so it needs to be adjusted to fit sp7715ga. Has updated and refactored implementation of sprdfb. Screen doesn't work, the bootloader and kernel seem to not fit each other, so kernel decides to use panel_id=0, which leads to using lcd_dummy driver. Also, the kernel is very unpredictable and booted only once for me, even though I didn't rebuild it for other attempts.
  • Blade AF3 kernel: has building issues with autotst driver.

See also