Project

General

Profile

Actions

Issue #1866

open

Support devices with upstream GNU/Linux support

Added by Denis 'GNUtoo' Carikli almost 7 years ago. Updated over 3 years ago.

Status:
New
Priority:
Normal
Assignee:
-
Category:
-
Target version:
Start date:
01/19/2018
Due date:
% Done:

0%

Estimated time:
Resolution:
Device:
Grant:
Type of work:
Any programming languages (scripts, C, etc), User testing

Description

The devices currently supported by Replicant rely on heavily modified and device specific versions of the Linux kernel along with hardware abstraction libraries that are made specifically for it. This raises several issues:
  • It limits the life of the device, as Replicant is then dependent on LineageOS to update the kernel version, which is a lot of work.
  • Replicant doesn't share the work with GNU/Linux, which makes Replicant more dependant on Google, and doesn't help GNU/Linux to work well on smartphones.
  • Replicant doesn't work out of the box with devices already using upstream Linux kernels.
To fix that, Replicant needs to:
  • Find or port a device to the upstream Linux kernel.
  • Add very minimalistic support for that device to Replicant, while using the upstream Linux kernel.
  • Write or adapt hardware support libraries to work with the upstream Linux kernel, in a way that is not tied to a specific device but would support any device using a standard Linux kernel.
In addition it would be nice to make Replicant use common GNU/Linux hardware support software such as bluez. To do that we would need to:
  • make it run on Android and send the changes upstream
  • add support for the chip that are present in the devices supported by Replicant.
Actions #1

Updated by Kurtis Hanna over 6 years ago

The Galaxy S 3 (I9300), Galaxy S 3 4G (I9305), Galaxy Note 2 (N7100), and Galaxy Note 2 4G (N7105) now are able to run with a mainlined linux kernel. https://blog.forkwhiletrue.me/pages/midas-mainline/

The Galaxy Note 8.0 (N51xx) likely could run with a mainlined kernel also, and can utilize a lot of the work that has already been done because it uses the same board as the others, but no one has started working on it as far as I know.

Also, the secondary bootloader was removed on these devices and was replaced with u-boot: https://github.com/fourkbomb/u-boot/commits/ https://blog.forkwhiletrue.me/posts/u-boot-on-galaxy-s3/

Forkbomb (Simon Shields) said that he got Arch GNU/Linux to boot on one of these devices with u-boot and mainline linux. It should be investigated whether or not we can replicate this and, if so, whether we can run the deblob script to turn it into Parabola or Hyperbola.

It is also worth noting that PostmarketOS is trying to get GNU/Linux on smartphones https://postmarketos.org/ and they want to use the mainline kernel whenever possible: https://wiki.postmarketos.org/wiki/The_Mainline_Kernel Their documentation and work might help us find device targets in the future.

It is my assumption that it would take a lot of work to mainline the kernel on any of the other devices that Replicant currently supports. The work to mainline the five devices above was mainly done by samsung employees who did the work because they wanted to test out Tizen. "Samsung’s testing of Tizen 3.0 on the Galaxy S III helped the Exynos 4 Quad become better suited by the Linux kernel" https://www.xda-developers.com/samsung-galaxy-siii-samsung-galaxy-note-ii-htc-hd2/

It would be cool to see devices like the Acer Chromebook Tab 10 with Rockchip OP1 RK3399 get Replicant support: https://www.acer.com/ac/en/US/content/series/acerchromebooktab10

It'd also be neat to see Replicant work on I.MX devices, especially since the Librem 5 will use it: https://en.wikipedia.org/wiki/I.MX#i.MX_8_series https://puri.sm/shop/librem-5/

https://archive.fosdem.org/2018/schedule/event/android_graphics/ https://www.collabora.com/news-and-blog/blog/2017/04/27/android-getting-up-and-running-on-the-imx6/

Actions #2

Updated by Kurtis Hanna over 6 years ago

Good news coming out about the RK3399, which is in the Acer Chromebook Tab10. Looks like it is able to run Panfrost: https://rosenzweig.io/blog/panfrost-on-the-rk3399-meow.html

Actions #3

Updated by Kurtis Hanna about 6 years ago

https://necunos.com/ might be a good target for this as well.

Actions #4

Updated by Kurtis Hanna almost 6 years ago

PabloPL said in the Replicant IRC that they are running a gnu/linux distro on the i9000.

https://forum.xda-developers.com/galaxy-s-i9000/general/news-linux-4-19-to-natively-support-t3830317

status: https://github.com/PabloPL/linux/wiki

Actions #5

Updated by Kurtis Hanna almost 6 years ago

I didn't see a link here to the work being done on the wiki related to this, so figured I'd post it: https://redmine.replicant.us/projects/replicant/wiki/Upstream

Actions #6

Updated by Kurtis Hanna over 5 years ago

I just found out that the Note 10.1 (2012 edition), which I've been documenting parts for on our wiki at Exynos4412Devices, can dual boot into GNU+Linux and Android. Someone even wrote code for an initrd menu which lets you select what to boot: GNU+Linux, native recovery, TWRP, etc.

https://github.com/opensgn/
https://www.youtube.com/watch?v=_TaPelfyRCE
https://thermatk.github.io/opensgn-easy/#instructions
https://code.google.com/archive/p/opensgn/source
https://forum.xda-developers.com/showthread.php?p=36916481#post36916481

Actions #7

Updated by _I3^ RELATIVISM over 3 years ago

  • Type of work Any programming languages (scripts, C, etc), User testing added
Actions

Also available in: Atom PDF