Bare metal boot of Octavo Red

Forums Reference, Evaluation, and Development Boards Bare metal boot of Octavo Red

Viewing 2 reply threads
  • Author
    Posts
    • #4393

      Has anyone the instructions for getting the Octavo Red to boot directly into a bare metal application, for example the ‘OSD335x Bare Minimum Board Boot Process’ example?

      I am developing an application for OSD335x using Starterware and I want to load directly on boot-up, not under Linux.

      I am not planning on having an sd card in the product, so I guess this process would have to be based on U-boot?

      Thanks in advance

       

      steve robinson

       

    • #4440
      Eshtaartha Basu
      Moderator

        Hello Steve,

        We found few interesting links that talk about loading and running bare metal applications using U-Boot:

        Guides:
        https://www.cs.sfu.ca/CourseCentral/433/bfraser/other/BareMetalGuide.pdf
        https://www.twosixlabs.com/running-a-baremetal-beaglebone-black-part-2/

        Forum Posts:
        https://e2e.ti.com/support/embedded/starterware/f/790/t/431403
        https://groups.google.com/forum/#!topic/beagleboard/eEZVrthmb8w
        (4th post from the bottom)

         

        Code:
        https://github.com/allexoll/BBB-BareMetal

         

        We will validate these links for the RED board and get back to you beginning of next week.

      • #4500
        Eshtaartha Basu
        Moderator

          TI provides a guide on how to boot a bare metal application using the StarterWare boot loader (http://processors.wiki.ti.com/index.php/AM335X_StarterWare_Booting_And_Flashing).  However, you can also run Bare Metal applications directly from on board eMMC or SD card of the RED board using U-Boot. To do so:

          1. Locate the “.bin” file that was created as part of the build process for the bare metal application in CCS.

          2. Boot the OSD3358-SM-RED board.  You can either boot directly from the eMMC or you can create an SD Card with the latest image (https://octavosystems.com/files/osd3358-sm-red-linux-image/) and boot from that.

          3. Load the “.bin” file of the application on to the eMMC/SD card of the OSD3358-SM-RED.  You can use Cloud 9 or an FTP client like WinSCP or similar to transfer the file to the board. Note the location of the file.

          4. Connect to the UART0 debug header of the OSD3358-SM-RED board (Jumper J3) using a USB to UART adapter and use a terminal program, like Putty, to communicate with the OSD3358-SM-RED.  This will allow you to see the initial boot messages that are put on UART0.

          5. Reboot the OSD3358-SM-RED board.

          6. As soon as it reboots, you will start seeing U-Boot boot messages on the serial interface. Press “Space bar” to enter U-Boot command line interface.

          7.

          To load a program from on board eMMC:

          >> load mmc 1:1 0x80000000 <path to your app’s .bin file>

          >> go 0x80000000

          For example,

          >> load mmc 1:1 0x80000000 /home/debian/demoApp.bin

          >> go 0x80000000

          To load a program from SD Card:

          >> load mmc 0:1 0x80000000 <path to your app’s .bin file>

          >> go 0x80000000

          8.  This will start your application.  If you want to automate this process on boot then you can update the u-boot environment settings to autoboot your application.

          You can try this out with the demo applications provided by StarterWare.  However, there are a couple of caveats:

          1.  Currently, the u-boot device tree on the OSD3358-SM-RED does not support Ethernet networking.  We will be releasing an updated to fix that in the near future.

          2.  Depending on the u-boot configuration, the Watch Dog Timer may be enabled.  You can make sure you understand the state of the Watch Dog Timer and set it appropriately for your application.

      Viewing 2 reply threads
      • You must be logged in to reply to this topic.