¿Cómo obtengo una versión de Android con kernel de Linux >= 3.18 en un Nexus 5?

Según esta publicación , Android 7.1 tiene el kernel 4.1.1 y Android 6.0 tiene el kernel 3.18.10.

Instalé Android 6.0 en un Nexus 5 (usando la última imagen de Google) y terminé con el kernel 3.4. Luego instalé 7.1 en un Nexus 6 (también usando la última imagen de Google) y terminé con el kernel 3.10.

Podría probar una versión más nueva aún en un teléfono más nuevo, pero estoy haciendo esto para obtener pilas de llamadas basadas en enanos en ejecuciones de rendimiento y realmente quiero hacerlo en el teléfono más antiguo posible.

¿Alguien ha pasado por esto antes?

Respuestas (2)

Los dispositivos Android generalmente no reciben actualizaciones importantes del kernel, y los dispositivos Nexus ciertamente nunca lo hicieron. Incluso cuando se realizan actualizaciones del sistema operativo, solo obtienen parches de kernel de versión menor. La tabla en la otra pregunta pretende representar con qué se enviaría un nuevo dispositivo dada la primera versión de Android compatible, pero incluso eso no es una regla estricta.

Para su ejemplo específico, Google no tiene código para N5 o N6 con un kernel 3.18. Ambos permanecieron en sus versiones principales originales (3.4.y y 3.10.y, respectivamente) durante toda su vida. Puede verificar las etiquetas relacionadas con "hammerhead" y "shamu" en el repositorio kernel/msm para verificar esto. Si necesita un kernel más nuevo en uno de esos dispositivos, es probable que tenga que portarlo usted mismo, a menos que pueda encontrar otro tercero que ya haya realizado este trabajo.

Los fabricantes de conjuntos de chips envían controladores de fuente cercana, lo que hace que sea imposible actualizar el kernel a una versión principal. Grandes roms de terceros como Lineage OS no actualizan el kernel incluso si instala una versión más nueva de Android.

El mantenedor de ASOP renunció por este problema

https://plus.google.com/+JeanBaptisteQueru/posts/9HHRURorE7g

Actualmente, hay algunos esfuerzos para solucionar este problema, como

Collabera encabeza el esfuerzo para ejecutar Android en la canalización gráfica de Linux

https://lwn.net/Articles/733463/

La plataforma I.MX tiene controladores GPU ascendentes. I.MX6 está upstreamed y funcionando

Las placas de desarrollo I.MX6 pueden arrancar Android

https://www.xda-developers.com/es-ahora-es-posible-arrancar-android-en-plataformas-i-mx6-sin-blobs-propietarios/

Esta tableta I.MX6 de 5 pulgadas debería tener soporte upstream completo https://necunos.com/shop/

En el futuro, Librem 5 será el primer teléfono GNU completamente abierto.

https://puri.sm/products/librem-5/

El desarrollo del controlador GPU I.MX8 es un trabajo en progreso

Anholt ha estado trabajando en Videocore para Broadcom, pero me parece una pena la falta de adopción entre los fabricantes de teléfonos.

http://www.anholt.net/papers/index.html

Esta publicación está tan mal. Los fabricantes de Hw suelen admitir sus SoC durante al menos 2 o 3 versiones de LTS. Son los OEM individuales los que generalmente eligen no reorganizar sus compilaciones ( aunque sucede ). En segundo lugar, en 2019 hay muchos dispositivos con LOS que se actualizaron de manera extraoficial. Y por último, pero no menos importante, es probable que vea un teléfono QCOM similar a la línea principal antes de que librem esté realmente listo para la producción.
@mirh, acabas de describir mi problema. Se necesita una fuerte influencia política para convencer a los fabricantes de hw de que cambien de base. Todos estos cambios también cuestan dinero. El código abierto también se trata de reducir los costos de soporte.