This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Error in compiling kernel 04.00.01.13

I download last PSP file (04.00.01.13) and i try compiling kernel (following PSP User guide). But i have this problem with mkimage:

/usr/bin/mkimage: Can't map arch/arm/boot/uImage: Invalid argument

I add in $PATH the TI816X-LINUX-PSP-04.00.01.13/src/u-boot/u-boot-04.00.01.13/tools

 

In the tools folder there are mkimage.c and mkimage.h file but no mkimage.o or bin mkimage !!

 I think that's why "which mkimage" answers --> /usr/bin/mkimage

 

Thank you for your help,

 

Bat

 

  • Hi Bat,

    Can you try building uboot first? That could create the mkimage program in uboot/tools directory.

    Note - If you are using the EZSDK then you could build the PSP kernel from the EZSDK toplevel by running make linux.

  • Hi Sid,

     

    Thank you for your answer. I also tried compiling U-Boot for NAND, but i have an error:

    $ make CROSS_COMPILE=arm-none-linux-gnueabi- ARCH=arm distclean
    $ make CROSS_COMPILE=arm-none-linux-gnueabi- ARCH=arm
    ti8168_evm_config_nand

    Setting up TI8168 NAND build with ENV in NAND...
    Configuring for ti8168_evm board...
    ln: creating symbolic link `asm': Protocol error
    make: *** [ti8168_evm_config_nand] Error 1

    Do you know what happens ?

     

    Bat

     

  • I just untar the u-boot archive in another directory, and it looks to work !!

    I keep you updated

     

    Bat

  • Even with u-boot compiled i have the same error:

    make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- uImage
      CHK     include/linux/version.h
      CHK     include/generated/utsrelease.h
    make[1]: `include/generated/mach-types.h' is up to date.
      CALL    scripts/checksyscalls.sh
      CHK     include/generated/compile.h
      SKIPPED include/generated/compile.h
      Kernel: arch/arm/boot/Image is ready
      SHIPPED arch/arm/boot/compressed/lib1funcs.S
      AS      arch/arm/boot/compressed/lib1funcs.o
      LD      arch/arm/boot/compressed/vmlinux
      OBJCOPY arch/arm/boot/zImage
      Kernel: arch/arm/boot/zImage is ready
      UIMAGE  arch/arm/boot/uImage
    /ti-ezsdk_dm816x-evm_5_02_02_60/board-support/u-boot-04.00.01.13/tools/mkimage: Can't map arch/arm/boot/uImage: Invalid argument
    make[1]: *** [arch/arm/boot/uImage] Error 1
    make: *** [uImage] Error 2

    So i wonder can i manually map uImage with mkimage tool ? if yes, how can i bypass this instruction in the building process, to be sure that following instructions are correctly executed ?

     

    Thank you,

     

    Bat

  • I found the verbose mode, i have now the "bad" instruction:

      Kernel: arch/arm/boot/zImage is ready
      /bin/sh /home/banc_dt_078/Desktop/PARTAGE/sources/TI816X-LINUX-PSP-04.00.01.13/src/kernel/linux-04.00.01.13/scripts/mkuboot.sh -A arm -O linux -T kernel -C none -a 0x00008000 -e 0x00008000 -n 'Linux-2.6.37' -d arch/arm/boot/zImage arch/arm/boot/uImage
    /home/banc_dt_078/ti-ezsdk_dm816x-evm_5_02_02_60/board-support/u-boot-04.00.01.13/tools/mkimage: Can't map arch/arm/boot/uImage: Invalid argument
    make[1]: *** [arch/arm/boot/uImage] Error 1
    make: *** [uImage] Error 2

     

    After many tests i found where is the problem the -d option is not understood by script, a simple -l with the archive name is working well.

     

    Which file should i update to make the correction on the makefile ? and where ?

     

    Thanks

     

    Bat