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.