Pulsa aquí para quitar la publicidad.

CONSULTA Compilar kernel H30-U10

Tema en 'Cocina Android y Traducciones' iniciado por issux, 1 May 2015.

  1. issux

    issux Simdualero de Platino

    • Cocinero Android
    • Veteran@
    573
    582
    19 May 2013
    Asturias
    Buenas,

    aprovechando que Huawei ha liberado los fuente del kernel de Honor 3C, llevo unos días investigando a ver como compilarlo, mas que nada por experimentar. Como estoy un poco perdido, agradecería que alguien me guiase un poco respecto a unas dudas para no cargarme el móvil en las pruebas.

    Básicamente he seguido los siguientes pasos:
    - He compilado los fuentes con un "./mk huawei82_cwet_kk n k" y me genera correctamente el zImage.
    - Para generar el boot.img, he instalado el paquete "abootimg", y lo he generado combinando el boot.img sacado de mi rom actual con el zImage: "
    abootimg -u path/to/bootimg/boot.img -k /path/to/kernel/arch/arm/boot/zImage" y aparentemente lo ha hecho correctamente sin errores.

    A la hora de intentar flashear el boot.img generado, arranco el movil en el modo fastboot (Vol- + power), lo enchufo al pc y hago un "fastboot flash boot boot.img", y aqui siempre se queda parado en "sending boot (8192kb)", por mucho tiempo que lo deje nunca acaba. He probado en dos pcs distintos, pasando en ambos lo mismo.

    Ahora las dudas:

    - ¿Hay alguna otra manera de flashear un kernel aparte de con el fastboot?. En otros móviles podía descargar un fichero zip y se flasheaba mediante el recovery. ¿Como se podria hacer esto?
    - Tengo una copia de seguridad del móvil hecha con el twrp de las particiones boot, system y data por si acaso ocurre algun desastre, pero ¿existe alguna otra manera de asegurarse de que esta todo correcto antes de flashear el kernel y asi no romper el móvil?
    - ¿Alguien ha compilado un kernel liberado por Huawei?. Por lo que he visto, la forma de compilar es distinta al método "estándar" que he visto en varios tutoriales de xda-developers.

    Bueno, muchas gracias por todo y perdón por el tocho que me ha salido.
     
    • Me Gusta Me Gusta x 1
    • Gracias Gracias x 1
    • margal.r

      margal.r Super Moderador

        11.756
        11.944
        17 Feb 2014
        Cerca de Barcelona
        Hola @issux@issux , no sabes la alegría que me da ver que estas intentando adentrarte en las entrañas del 3C. Desde que @flufy_tendo@flufy_tendo ya no tiene este teléfono parece que no tenemos cocinero propio y nos vendría estupendamente un pinche con talento.
        Invoco a @Xancin@Xancin , @avecilla@avecilla o @MANOWARACERO@MANOWARACERO por ejemplo a ver si pueden echarte una mano.
        ... Y no es por interés... :smile::smile::smile::tonguewink:
        @flufy_tendo@flufy_tendo te necesitamosssss
         
        • Me Gusta Me Gusta x 3
        • JuanJTP

          JuanJTP Registrado

          • Cocinero Android
          31.583
          61.287
          2 Mar 2014
          y porque no lo metes en un zip con una rom para instalar....sustituyes el que esta y pones el tuyo
           
          • Me Gusta Me Gusta x 2
          • Gracias Gracias x 1
          • issux

            issux Simdualero de Platino

            • Cocinero Android
            • Veteran@
            573
            582
            19 May 2013
            Asturias
            Hola @margal.r@margal.r,
            Jejeje, si ahora solo hace falta encontrar a un pinche con talento :smile::smile::smile::smile:

            Bueno, ayer hice bastantes progresos, al final ya tengo un sistema para instalar el kernel. Cogi del zip de la rom que tengo instalado (kanvip) el fichero bootimg.img, lo destripe con el abootimg (abootimg -x bootimg.img), y me saco el kernel (zImage), el initrd.img y el bootimg.cfg. Sustituyendo el zImage por el del kernel que compile y modificando el parametro del tamaño del nuevo kernel en el boot.cfg, genere un nuevo bootimage (abootimg --create boot.img -f bootimg.cfg -k zImage -r initrd.img) y con un script para cwm de xda-developers, modifico el updater-script, incluyendo un (package_extract_file("boot.img", "/dev/bootimg"):wink: e incluyo el nuevo boot.img en el raiz del zip.

            He probado a flshear este zip en twrp y creo que lo hace bien, el kernel mio al arrancar se cuelga, y si lo hago con el kernel de la rom original funciona bien, asi que creo que el tema de la generacion del zip flasheable esta solucionado. Lo de restaurar el arranque tambien lo arregle restaurando una copia de la particion bootimg que habia hecho antes.

            Ahora el problema es saber porque se queda frito al arranque con el nuevo kernel compilado. Creo que es por el tema de los módulos, que segun lei en algun post, hay que compilarlos y añadirlos. Lo que estoy intentando saber es la configuracion del kernel original ya que en el movil, el fichero /proc/config.gz no existe. Mi idea era tener esa configuracion para poder utilizarla al compilar el kernel y tener una base de opciones del kernel que se que no dan problemas, para luego poder ir añadiendo nuevas cosas. Ahora estoy buscando dentro del bootimg.img y dentro del zImage a ver si aparece por algun lado.

            En fin, muchas gracias, no se si llegare a algun sitio, pero ire informando.
             
            • Me Gusta Me Gusta x 3
            • issux

              issux Simdualero de Platino

              • Cocinero Android
              • Veteran@
              573
              582
              19 May 2013
              Asturias
              Buenas,

              mcuhas gracias @Xancin@Xancin, de vez en cuando me vendria bien pensar un poco :smile::smile::smile::smile:

              Voy a comprobar de esa manera y asi voy a tiro fijo.
               
              • Me Gusta Me Gusta x 1
              • issux

                issux Simdualero de Platino

                • Cocinero Android
                • Veteran@
                573
                582
                19 May 2013
                Asturias
                Buenas,

                creo que he llegado a un callejon sin salida. Me compila perfectamente el kernel, pero se queda frito en el arranque (se reinicia una y otra vez). La cuestion es que he visto en algunos posts de xda que la configuracion de compilacion del kernel, podia obtenerse de /proc/config.gz de la rom del movil original, pero no existe el fichero. Tambien he probado a destripar el boot.img, con el abootimg, pero en el zImage tampoco hay nada (el script de extract-ikconfig no encuentra nada).

                ¿La pregunta es si existe unas "opciones minimas" del menuconfig para compilar para un mtk6582?. No se si digo una tonteria, pero estoy perdido y se me acaban las ideas.

                Saludos.
                 
              • JuanJTP

                JuanJTP Registrado

                • Cocinero Android
                31.583
                61.287
                2 Mar 2014
                probaste con el projectConfig.mk? en data?
                 
              • issux

                issux Simdualero de Platino

                • Cocinero Android
                • Veteran@
                573
                582
                19 May 2013
                Asturias
                Buenas @Xancin@Xancin ,

                pues no, no habia probado, ahora mismo me pongo a ver si se logra.

                Muchas gracias :wink:
                --- Comentario doble fusionado, 3 May 2015 ---
                Buenas,

                lamentablemente ni con esas. Creo que por un par de dias lo dejare a ver si se me aclaran las ideas y se me ocurre algo.

                Muchas gracias.
                 
                • Me Gusta Me Gusta x 1
                • margal.r

                  margal.r Super Moderador

                    11.756
                    11.944
                    17 Feb 2014
                    Cerca de Barcelona
                  • issux

                    issux Simdualero de Platino

                    • Cocinero Android
                    • Veteran@
                    573
                    582
                    19 May 2013
                    Asturias
                    Buenas @margal.r@margal.r ,

                    Muchas gracias, el hilo que comentas de da ya lo había visto, de hecho le consulte un par de dudas a codelover sobre la compilación del kernel. Hoy, al hacer comparacion binaria del contenido de los ficheros generados, me di cuenta que en el generado había que añadirle una cabecera. Crei que ese era el problema, pero después de estar toda la tarde haciendo pruebas, eso tampoco es.

                    Al final estoy también en el mismo punto, compila el kernel, pero no arranca el movil al instalarlo... de todas maneras pienso seguir investigando, a ver quien cansa antes xD xD xD

                    Pues nada, si ocurre el milagro ya os informare...
                     
                    • Me Gusta Me Gusta x 1
                    • issux

                      issux Simdualero de Platino

                      • Cocinero Android
                      • Veteran@
                      573
                      582
                      19 May 2013
                      Asturias
                      Buenas,

                      hay novedades. He conseguido compilar el kernel, y con la rom AOSP de icicy me arranca, pero me han surgido un par de problemas:

                      - No monta la sd externa.

                      Con mi kernel, se monta como: drwx------ root root sdcard1

                      Y con el kernel original, se monta como: drwxrwx--x root sdcard_r sdcard1

                      La cuestion es que no se si me faltara algun modulo del kernel por incluir para que mi kernel de los mismos permisos y propietario ue el kernel original. ¿Alguna idea?

                      - La otra es una pijada, pero me resulta curioso. En la seccion de "Ajustes" > "Informacion del telefono" > "Estado" > "Numero de serie". Con el kernel original muestra el numero de serie correcto, en cambio con mi kernel muestra "0123456789ABCDEF", que evidentemente no es el numero de serie del movil.

                      En fin, si algun experto cocinero tiene alguna pista de que puede pasar, se lo agradeceria. He estado buscando por foros y no encontre nada, a ver si aqui tengo mas suerte.

                      Gracias.
                       
                      • Me Gusta Me Gusta x 2
                      • issux

                        issux Simdualero de Platino

                        • Cocinero Android
                        • Veteran@
                        573
                        582
                        19 May 2013
                        Asturias
                        Buenas,

                        despues de estar varios dias, no he logrado que con la rom oficial "emui" arranque el movil con el kernel compilado, siempre se reinicia continuamente. El problema es que no llega a generar ningun tipo de log, por lo que no tengo ni idea de que puede pasar. Probe con multitud de configuraciones del menuconfig (sobretodo las de Soporte MMC/SD).

                        Con otras roms tipo aosp (kenkesi o icicy), el movil llega a arrancar y cargar la rom, pero no detecta la tarjeta sd externa. Gracias a la aplicacion liveboot de google play he obtenido un log del arranque, pero no he visto nada que pudiera indicar cual es el problema.

                        Yo por mi parte creo que lo voy a dejar porque no le veo solucion, quizas se anime Huawei un dia a actualizar el codigo fuente del kernel o a publicar algun tipo de guia para los que sabemos poco.

                        Saludos y gracias a @Xancin@Xancin por la ayuda.
                         
                        • Me Gusta Me Gusta x 1
                        Verificación:
                        Borrador guardado Borrador eliminado

                        Compartir esta página

                        Galletas! Nos obligan a informar que utilizamos cookies (como casi todas las webs). Al continuar navegando aceptas su uso.