Project Home
Project Home
Project Information
Project Info
wiki4067: Nto640TiOmapL137EvmTrunkReleasenotes (Version 14)

Release Notes for the QNX Neutrino 6.4.0 BSP for TI OMAP-L137 EVM#

1.System Requirements#

Target Requirements
  1. QNX Neutrino RTOS 6.4.0
  2. Board version: TI OMAP-L137 EVM
  3. L137 processor
  5. 4 MB SPI flash

Host Requirements

  1. QNX Momentics 6.4.0
  2. Terminal emulation program (Qtalk, Momentics IDE Terminal, tip, HyperTerminal, etc.)
  3. RS-232 serial port and serial cable, or a USB-to-serial cable
  4. Ethernet link

2.Getting Started#

2.1 Building the BSP#

You can build a BSP OS image from the source code or the binary components contained in a BSP package. For instructions about building a BSP OS image, please refer to the chapter Working with a BSP in the Building Embedded Systems manual.

2.2 Connect your Hardware#

Connect the serial cable to the serial port of the OMAP L137 EVM board to the first serial port of your host machine. There is 1 serial port on OMAP L137 EVM board. Use the one which is near the boundary of the board. Usually you should see some Uboot output on the console when you connect cable to the correct port. If you have a Neutrino host with a serial mouse, you may have to move the mouse to the second serial port on your host, because some terminal programs require the first serial port.

The correct terminal settings of the program handling serial connection should be:

baudrate 115200
data 8 bit
parity none
stop 1bit
flow control none

2.3 Setup you environment#

1. Power on your target. You should see the u-boot output on your console. 2. Conenct an ethernet cable to any of the 2 PHY port available on the back side of the board.

3. Boot the IFS image#

You can use TFTP download (the default) or serial download to transfer an OS image to the board, as described below.

3.1 Boot via tftp#

This method requires that you put the raw image generated by BSP (by default at $BSP_ROOT/images/ifs-omapl137.raw) to a TFTP server. This server must be reachable via board and preferably should be on the same LAN. As soon as u-boot starts, press any key so that u-boot stops and doesnt boot the prebuild linux kernel. Configure u-boot parameters as follows:

=> setenv ipaddr
=> setenv serverip
=> setenv netmask
=> setenv gatewayip
=> setenv bootfile ifs-omapl137.raw
=> setenv loadaddr 0xC0008000
=> setenv bootcmd 'tftpboot $loadaddr $bootfile; go $loadaddr'
=> setenv bootdelay 2
=> saveenv
Saving Environment to SPI Flash...
Erasing SPI flash...Writing to SPI flash...done
=> boot

Note: You should set the ipaddr, serverip, netmask, gatewayip accordingly to your network.

At this point, you should see output similar to this when it finishes downloading:

## Starting application at 0xC0008000 ...
Welcome to QNX Neutrino 6.4.0 on the TI OMAPL137EVM Board

Congratulations! QNX 6.4.0 kernel is running on your system. You can test the OS simply by executing any shell builtin command or any command residing within the OS image (e.g. ls). Once the initial image is running, you can update the OS image using the network and flash drivers. Still the network and flash drivers need to be supported for the TI OMAP L137 EVM board.

4. Driver Command Summary#

Component Buildfile Command Required Binaries Required Libraries Source Location
Startup startup-omapl137 -wt -L 0x80000000,0x20000 -vvv startup-omapl137 libstartup.a src/hardware/startup/boards/omapl137
Serial devc-ser8250 -e -F -S -b115200 -c150000000/16 0x01d0d000^2,61
waitfor /dev/ser1 4
reopen /dev/ser1
devc-ser8250 none src/hardware/devc
I2C i2c-dm6446 -a0x1 -i15 -p0x01c22000 -f24000000 -l0x1000 --b10000 --u0 (for controller 1)
i2c-dm6446 -a0x2 -i51 -p0x01e28000 -f24000000 -l0x1000 --b10000 --u1 (for controller 2)
i2c-dm6446 libi2c-master.a src/hardware/i2c/dm6446
USB io-usb -dohci-omapl1xx ioport=0x01E25000,irq=59 -dotg-omapl1xx ioport=0x01E00000,irq=58
Network io-pkt-v4 -ddm644x-omapl1xx phy=2 -ptcpip io-pkt-v4
ifconfig /src/hardware/devn
SPI spi-master -d dm644x base=0x01c41000,irq=20,clock=150000000,edma=0,en0def=1,spicntrlr=omapl1xx
spi-master -u1 -d dm644x base=0x01E12000,irq=56,clock=150000000,edma=0,en0def=1,spicntrlr=omapl1xx
spi-master /src/hardware/spi/dm644x
RTC rtc -s -v omapl1xx
rtc -v omapl1xx
libutil.a src/utils/r/rtc
DSPLink libdsplink160-clientS.a "prebuiltonly"


To start the Serial driver, run the following command:

devc-ser8250 -e -F -S -b115200 -c150000000/16 0x01d0d000^2,61


To start network driver, run:

io-pkt-v4 -ddm644x-omapl1xx phy=2 -ptcpip

Note : Here the phy=2 indicates which ethernet port on the OMAPL137 board you are connecting to, the ethernet port next to the serial interface on the board corresponds to phy = 2, and the next to that one corresponds to phy = 1.

you should see following output when you run ifconfig

# ifconfig en0       
en0: flags=80008802<BROADCAST,SIMPLEX,MULTICAST,SHIM> mtu 1500
        address: 00:0e:99:02:f9:4e
        media: Ethernet 100baseTX
        status: active

To bring the network interface up, type following command

ifconfig en0 up

Here is the IP address assigned to your target and 24 is the netmask bits (i.e. The LEDs of the RJ45 port corresponding to the enabled interface shall glow periodically. This can be used to identify the correct port, port 1 (phy 1) or port 2 (phy 2).


To set the RTC time as that of the System time, run:

rtc -s -v omapl1xx

To set the System time as that of the RTC time, run:

rtc -v omapl1xx


To start spi driver for spi0 interface, run:

spi-master -d dm644x base=0x01c41000,irq=20,clock=150000000,edma=0,en0def=1,spicntrlr=omapl1xx

you can see a file /dev/spi0 after the above step.

To start spi driver for spi1 interface, run:

spi-master -u1 -d dm644x base=0x01E12000,irq=56,clock=150000000,edma=0,en0def=1,spicntrlr=omapl1xx

you can see a file /dev/spi1 after the above step.

For reading the on-board spi-flash you need to use /dev/spi0.


To start both USB OHCI (1.1) and USB EHCI OTG (2.0) drivers, run:

io-usb -dohci-omapl1xx ioport=0x01E25000,irq=59 -dotg-omapl1xx ioport=0x01E00000,irq=58

wait for /dev/io-usb/io-usb

To list and mount mass storage device, run:

devb-umass& (This will exit if it doesn't find any mass storage device, so start this only after plugging in a device)

mount -t <file_system_name> /dev/<device_name> <path to be mounted at>

5. Burning the QNX IFS image to the SPI flash#

6. Known Issues for This BSP#

  1. The network driver will not behave properly if issued with a flood ping of more than 50000 bytes (refer PR : 74266)