This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

ARM DS5 Linux.axf image

Note: This was originally posted on 7th September 2011 at http://forums.arm.com

Hi,
I am using ARM DS5 + RTSM to test few applications. But If I want to use another kernel and other RootFS than the rootfs and kernel provided in default Linux.axf file, how can I do that?
Basically I want to replace default linux.axf file with my version of linux.axf file because I want the kernel with profiling on.
So can you please provide me the procedure to creating new linux,axf file along with booting parameters which I may need to consider while mounting RootFS?

Thanks 7 Regards,
TusharK
Parents
  • Note: This was originally posted on 30th September 2011 at http://forums.arm.com

    The source package for the model's Linux distribution should appear on silver in the next few days - I'll post again once it does. You can use the boot support part of this package to wrap your own kernel for booting on the model.

    Distributions Preconditions

    To work well with DS-5's 'ARM - Cortex-A8 RTSM pre-configured to boot ARM Embedded Linux' target platform, your distribution must:

    Run /bin/sh on ttyAMA0
    Listen for logins on ttyAMA1 and ttyAMA2
    Leave ttyAMA3 free
    Have gdbserver installed

    If you are only interested in kernel changes then I recommend continuing to use the provided root filesystem.

    Step One: Build A New Linux Image

    1) Unpack the soon-to-be-uploaded source package
    2) cd to distribution/boot/RTSM/RTSM_EB_V7
    3) In this new directory, edit Makefile and:
    3a) Change KERNEL to point at your kernel Image
    3b) Change FILESYSTEM to point at your filesystem image (this image will end up being mounted as a ramdisk, so your kernel will need to support that).
    3c) Change IMAGE to linux.axf
    4) Edit boot.S and change the kernel boot parameters (line 77) as appropriate. At a minimum, change the initrd parameter to be large enough to contain your filesystem image (e.g. if your image is 0x4000000 bytes big, change it from 'initrd=0x70800000,0x327c00' to 'initrd=0x70800000,0x4000000)
    5) Edit model.lds and change all references to the kernel and filesystem images to match what you set in the Makefile. There should be 4 lines to change.
    6) Type 'make' in the boot directory. linux.axf will be built.

    Step Two: Make a Private Copy of the Configuration Database Entry

    1) Copy the directory tree DS-5/sw/debugger/configdb/Boards/ARM/Cortex-A8_RTSM/* to ~/myconfigdb/Boards/ARM/Cortex-A8_RTSM
    2) Copy your new linux.axf to ~/myconfigdb/Boards/ARM/Cortex-A8_RTSM/etc/linux.axf
    3) In Eclipse, go to the Window menu and select Preferences->DS-5->Target Database. Add ~/myconfigdb to the top of the list.

    The DS-5 'ARM - Cortex-A8 RTSM pre-configured to boot ARM Embedded Linux' target platform will now boot your Linux distribution.

    I can expand on any of the above points if need be - and will do so faster than we have to date.
Reply
  • Note: This was originally posted on 30th September 2011 at http://forums.arm.com

    The source package for the model's Linux distribution should appear on silver in the next few days - I'll post again once it does. You can use the boot support part of this package to wrap your own kernel for booting on the model.

    Distributions Preconditions

    To work well with DS-5's 'ARM - Cortex-A8 RTSM pre-configured to boot ARM Embedded Linux' target platform, your distribution must:

    Run /bin/sh on ttyAMA0
    Listen for logins on ttyAMA1 and ttyAMA2
    Leave ttyAMA3 free
    Have gdbserver installed

    If you are only interested in kernel changes then I recommend continuing to use the provided root filesystem.

    Step One: Build A New Linux Image

    1) Unpack the soon-to-be-uploaded source package
    2) cd to distribution/boot/RTSM/RTSM_EB_V7
    3) In this new directory, edit Makefile and:
    3a) Change KERNEL to point at your kernel Image
    3b) Change FILESYSTEM to point at your filesystem image (this image will end up being mounted as a ramdisk, so your kernel will need to support that).
    3c) Change IMAGE to linux.axf
    4) Edit boot.S and change the kernel boot parameters (line 77) as appropriate. At a minimum, change the initrd parameter to be large enough to contain your filesystem image (e.g. if your image is 0x4000000 bytes big, change it from 'initrd=0x70800000,0x327c00' to 'initrd=0x70800000,0x4000000)
    5) Edit model.lds and change all references to the kernel and filesystem images to match what you set in the Makefile. There should be 4 lines to change.
    6) Type 'make' in the boot directory. linux.axf will be built.

    Step Two: Make a Private Copy of the Configuration Database Entry

    1) Copy the directory tree DS-5/sw/debugger/configdb/Boards/ARM/Cortex-A8_RTSM/* to ~/myconfigdb/Boards/ARM/Cortex-A8_RTSM
    2) Copy your new linux.axf to ~/myconfigdb/Boards/ARM/Cortex-A8_RTSM/etc/linux.axf
    3) In Eclipse, go to the Window menu and select Preferences->DS-5->Target Database. Add ~/myconfigdb to the top of the list.

    The DS-5 'ARM - Cortex-A8 RTSM pre-configured to boot ARM Embedded Linux' target platform will now boot your Linux distribution.

    I can expand on any of the above points if need be - and will do so faster than we have to date.
Children
No data