Innovator Instructions

From eLinux.org
Jump to: navigation, search

This page describes how to load Linux on the Innovator development board. Unfortunately, this is not an easy process, since the pre-installed firmware (iBoot from PSI) does not support reflashing the device with Linux. You need to install another piece of firmware (rrload) and use that to write the bootloader to flash, and to load Linux or write Linux to flash.

Table Of Contents:


Here is a description of the steps necessary to bootstrap my TI Innovator board.


Here's how I (Tim Bird) did it:

Hardware Used

- Abatron BDI2000
- TI OMAP Deluxe Innovator development kit
- Linux host system (running Red Hat 7.3)

Software and Configuration Files Used

- Abatron
  - Abatron firmware image for ARM
  - Abatron setup program
  - innov925.cfg
  - reg925t.def
- rrload
  - setup
  - rrload.com1
- toolchains
  - Arm toolchains from Sony
- kernel
  - celinux-031030.tar.bz2
- root filesystem
  - [not documented yet]


Terms

BOB = Break-Out-Board

General Outline For Bootstrapping using Abatron JTAG and rrload

configure abatron

  - install abatron firmware
  - set network address for abatron

prepare target hardware and connections

  - disassemble innovator, and install separate boards in break-out-board
    - see instructions for Innovator Quick Start on PSI disk
  - connections:
    - host machine ethernet to hub (I configured as 192.168.1.1)
    - abatron ethernet to hub (I configured as 192.168.1.2)
    - BOB ethernet to hub (I configured as 192.168.1.3)
    - Abatron jtag to multi-ICE connector on BOB
      - use the 14-pin to 20-pin connector, labelled "BDI side" on one end and "ARM/XScale" on the other end
      - attach this cable with "BDI side" in "Target A" on the Abatron and with "ARM/XScale" on J13
      on the BOB
      - set JP1 and JP2 on the BOB with jumpers on pins 1-2.  This means put the jumpers on the
      RIGHT side on each set of pins.
    - connect dual serial cable between BOB and host machine
      - connect DB9 connector to interface module serial port
      - connect end of serial cable labeled COM1 to a null-modem (crossover cable)
      - connect other end of null-modem cable to first serial port (ttyS0) on the linux host machine

prepare host software

  - download and place files in /tftpboot
    - innov925.cfg
    - reg925t.def
    - setup
    - rrload.com1
  - make sure tftpd is ready to run
  - make sure minicom is configured to access /dev/ttyS0, at 115K N81
  - in one window, run minicom to be listening to the serial output from the Innovator board
  - in another window, be ready to run telnet to control the abatron
    - you may want to add "192.168.1.2    abatron" to your /etc/hosts file

install rrload in user flash 0

  - make sure jumpers are set on BOB for access to user flash 0
  - power up abatron by plugging in power cable at back
  - start abatron by telnetting into it
    - [hostpc]% telnet abatron
  - start Innovator by flipping switch on interface module
  - load and run setup
    - [abatron prompt]>load setup
    - [abatron prompt]>g
  - load and run rrload.com1
    - [abatron prompt]>load rrload.com1
    - [abatron prompt]>g
  - the rrload menu should appear in minicom
  - save rrload to flash
    - [rrload menu] E (for Erase component)
    - [rrload menu] 1 (to erase the flash memory where the bootloader resides)
    - [rrload menu] 0 (to return to the Main menu)
    - [rrload menu] 2 (to store component to flash)
    - [rrload menu] 1 (to store the bootloader)
    - [rrload menu] 0 (to return to the Main menu)
  - set configuration for rrload
    - [need more detail]
  - save configuration (bootloader params) to flash
    - [rrload menu] E (for Erase component)
    - [rrload menu] 2 (to erase the flash memory where the bootloader params resides)
    - [rrload menu] 0 (to return to the Main menu)
    - [rrload menu] 2 (to store component to flash)
    - [rrload menu] 2 (to store the bootloader params)
    - [rrload menu] 0 (to return to the Main menu)

use rrload to boot the kernel and root filesystem

[ need more detail]

build the kernel

Here are some commands I used to build the kernel:

- cd celinux-031030/
- export PATH=$PATH:/usr/local/armv4tl-celf-linux/bin
- cp arch/arm/def-configs/innovator .config
- make ARCH=arm CROSS_COMPILE=armv4tl-celf-linux- oldconfig
- make ARCH=arm CROSS_COMPILE=armv4tl-celf-linux- dep
- make ARCH=arm CROSS_COMPILE=armv4tl-celf-linux- zImage

prepare kernel for download

- /home/tbird/innovator/rrload/mkimage --LAddr 10c08000 --EAddr 10C08000 arch/arm/boot/compressed/vmlinux vmlinux.rr
- cp vmlinux.rr /tftpboot/

download kernel to board

- minicom (set to /dev/ttyS0)
- turn on development board, you should see the rrload menu
- choose option 3 (view/edit params) on the rrload menu
  - choose option 3 (I/O load format)
  - set value to "rrbin"
- choose option 4 (I/O load port)
  - set value to "ser"
- choose option 0 (back to main menu)
- choose option 1 (load from I/O port)
  - choose option 1 (load kernel)

On the host, as root copy the file to the serial port:

- cat /tftpboot/vmlinux.rr >/dev/ttyS0

On the client, wait for download to complete. Dots will appear as the kernel is downloaded.

- choose option o (back to main menu)

download rootfs to board

[need more detail here]

boot the kernel

- choose option 4 (boot kernel)


Important Notes

- I couldn't find documentation on JP1 and JP2.  After trial-and-error, it was determined by
Takao Shinohara (of Sony) that pin 1 is on the RIGHT of these jumpers.

Files

Here is a list of lots of relevant (or maybe not relevant) files:

Here are some files I used for bootstrapping:

- Media:innov925.cfg
- Media:reg925t.def
- Media:setup - could not upload file.  Please see old wiki download
- Media:rrload.com1

This is a file I got from TI describing how to build Linux for the Innovator and bootstrap using a JTAG device and Code Composer Studio, from Windows:

- Media:Building_Linux_For_Innovator.pdf
- http://focus.ti.com/lit/an/swpa011/swpa011.pdf - above pdf on ti site
- http://focus.ti.com/lit/ug/spru667/spru667.pdf - Innovator Development Kit Manual
- http://focus.ti.com/docs/toolsw/folders/print/innovatorevmv1.html - product info
- innovator specs

Other support sites

- see http://muru.com/linux/omap/ for an unnofficial web site supporting Linux on Innovator
- see Linux for TI OMAP mail archives at: http://linux.omap.com/pipermail/linux-omap-open-source/
- to subscribe: http://linux.omap.com/mailman/listinfo/linux-omap-open-source
- TI page with lots of downloads and links to other resources is here:
http://focus.ti.com/docs/general/splashdsp.jhtml?&path=templatedata/cm/splashdsp/data/linux_com_portal
- The following page has a link to the 2.6 BitKeeper tree for TI OMAP:
http://focus.ti.com/docs/general/splashdsp.jhtml?&path=templatedata/cm/splashdsp/data/linux_com_resources