iMX6 Bare metal

Discussion in 'UDOO 101' started by gabriel, Jul 27, 2015.

  1. gabriel

    gabriel New Member

    Joined:
    Jul 24, 2015
    Messages:
    4
    Likes Received:
    0
    [EDIT]
    {
    Done: compile and load Uboot
    Todo: load and execute a standalone application that prints anything by the tty
    Actual problem: how to compile and load an application?
    }

    Hello
    I am interested on use the ARM processor on the UDOO bare metal. The idea is to load a kernel and execute it using the Performance Counters, this is why run bare metal is important. Would it be possible to do this using the U BOOT?
    I have seen a thread that propose to use http://atose.org/?p=141, but my doubt is how implement this. Would it be enough to plug the cable? or the UDOO board would require some previous step?

    Thanks for your time
     
    Last edited: Aug 11, 2015
  2. Andrea Rovai

    Andrea Rovai Well-Known Member

    Joined:
    Oct 27, 2014
    Messages:
    1,703
    Likes Received:
    240
    The uboot loads a binary from the SD card into RAM. Then executes it. This is how the Linux Kernel is started on the UDOO. You can upload the same way every non-Linux program into UDOO, by loading it from uboot. Just use the serial port on CN6 Connector with the Jumper J18 plugged to access the serial port where you can talk with the uboot. You don't need other external cable.
    Cheers
     
    gabriel likes this.
  3. gabriel

    gabriel New Member

    Joined:
    Jul 24, 2015
    Messages:
    4
    Likes Received:
    0
    Thanks!
    I have done it more or less. I loaded a Ubuntu+UBoot in a SD, connected the CN6 to a PC with Linux, put a Minicom to hear on that USB and I was able to use UBOOT.
    I tried to compile just UBoot, but in the starting guide it is mention that the cross compiler is in www.udoo.org/downloads, but I only find there Images. Any idea where to get it ?
    I have found the arm-none-eabi-XXX but I am not sure that this would work

    I was thinking to use Uboot and load an executable by serial using kermin, but I'm not sure of how to make a executable for this platform. Do anybody has a Hello_world_bare_metal.c or similar?

    Thanks in advance
     
  4. vpeter

    vpeter Active Member

    Joined:
    Nov 29, 2014
    Messages:
    303
    Likes Received:
    62
    Last edited: Aug 1, 2015
  5. gabriel

    gabriel New Member

    Joined:
    Jul 24, 2015
    Messages:
    4
    Likes Received:
    0
    Hello, it is me again.
    I have continue tinkering and I got the Uboot working. In order to compile it I used arm-none-eabi-cc compiler, and I got the code from UBOOT git repository. Also to store it in the SD I used this tutorial http://www.elinux.org/UDOO_creating_a_bootable_Micro_SD_card_from_precompiled_binaries
    I just formated the SD and copied the u-boot.imx as they say there and it work
    So far now when I connect the UDOO by the CN6 to the PC I can comunicate with Uboot by serial.

    My actual problem is how to compile and run an application on the board. I have tried to load the Uboot/examples/standalone/Hello_world, loading it using loadb (Hello_world.bin with ckermit) or loads( Hello_world.srec using cu). In both cases I have followed all the tutorials but none has worked. The Hello_world.bin does not work and the Hello_world.srec fails in the transmittion.

    Any idea?
    Someone has been able to run a standalone application that at least say something by the tty?
     

Share This Page