Project Home
Project Home
Wiki
Wiki
Project Information
Project Info
wiki3951: TiAm3517EvmNto641ReleaseNotes (Version 2)


Release Notes for the QNX Neutrino 6.4.1 BSP for Texas Instruments AM3517 EVM Board#

System requirements#

Target system#

  • QNX Neutrino RTOS 6.4.1
  • Board version: TI AM3530 EVM (Beta Board)
  • ROM Monitor version: Texas Instruments X-Loader 1.42, UBoot 2009.03
  • Micron 512 MB NAND flash: MT29F4G16ABCHC
  • 256 MB DDR2 SDRAM

Host development system#

  • QNX Momentics 6.4.1
  • Terminal emulation program (Qtalk, Momentics IDE Terminal, tip, HyperTerminal, etc.)
  • RS-232 serial port
  • NULL-modem serial cable
  • Ethernet link


System Layout#

The tables below depict the memory layout for the image and for the flash.

ItemAddress
OS image loaded at: 0x80100000
NOR flash base address: 0x10000000

The interrupt vector table can be found in the buildfile located at src/hardware/startup/boards/omap3517evm/build

Getting Started#

Step 1: Connect your hardware#

  • Connect the serial cable to the serial port P1(UART3) of the AM3517 EVM experimenter board to the first serial port of your host machine (e.g. ser1 on a Neutrino host).
  • 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.

Step 2: Build 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.

Step 3: Transfer the OS image to the target using the ROM monitor#

On your host machine, start your favorite terminal program with these settings:
  • Baud: 115200
  • Bits: 8
  • Stop bits: 1
  • Parity: none
  • Flow control: none


Setting up the environment#

Apply power to the target board. You should see output on your terminal console, similar to the following:

Texas Instruments X-Loader 1.42
Starting X-loader on MMC
Reading boot sector

183864 Bytes Read from MMC
Starting OS Bootloader from MMC...
Starting OS Bootloader...


U-Boot 2009.03 (Jul 03 2009 - 02:12:04)

OMAP3530-GP rev 2, CPU-OPP2 L3-165MHz
OMAP3 omap3517evm board + LPDDR/NAND
DRAM:  256 MB
NAND:  512 MiB
In:    serial
Out:   serial
Err:   serial
Driving GPIO 30 low
Driving GPIO 30 high
Ethernet PHY: GENERIC @ 0x00
read HW config for PHY 0x60e0
Program HW config as 0x60e0
Die ID #40a600000000000001543b210601a01b
Hit any key to stop autoboot:  0
Use the printenv command to show the current settings for ipaddr, ethaddr, serverip etc.

TFTP download#

This method requires a raw image, which is simply a binary image, with a header on the beginning, that allows the bootloader to jump to the very beginning of the image (the raw header), where it executes another jump to the first instruction of the image.

Next, use the setenv command to configure the following parameters: serverip gatewayip netmask bootfile ipaddr ethaddr

Once these parameters are configured, use the saveenv command to store your changes. Refer to the U-Boot documentation for more information.

After U-boot is configured, boot the ifs-omap3517evm.raw image as follows (we'll assume it's in a directory called /xfer/) from the OMAP3517EVM # prompt: tftpboot 0x80100000 /xfer/ifs-omap3530evm.raw

At this point you should see the ROM monitor download the OS image, indicated by a series of number signs. You'll also see output similar to this when it completes downloading:

TFTP from server 10.42.104.16; our IP address is 10.42.104.17
Filename '/root/ifs-omap3517.raw'.
Load address: 0x80100000
Loading: #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         ######
done
Bytes transferred = 2355312 (23f070 hex)
OMAP3517EVM # 
Now, to run the image, enter:

go 0x80100000

You should see output similar to the following, with the QNX Neutrino welcome message on your terminal screen:

## Starting application at 0x80100000 ...
CPU0: L1 Icache: 256x64
CPU0: L1 Dcache: 256x64 WB
CPU0: L2 Dcache: 4096x64 WB
CPU0: VFP 410330c1
CPU0: 411fc087: Cortex A8 rev 7 500MHz

System page at phys:80011000 user:fc404000 kern:fc404000
Starting next program at vfe043df0
cpu_startnext: cpu0 -> fe043df0
coproc_attach(10): replacing fe065044 with fe064928
coproc_attach(11): replacing fe065044 with fe064928
Welcome to QNX Neutrino 6.4.0 on the Texas Instruments OMAP3517 EVM (ARMv7 Cortex-A8 core)
You can now test the OS simply by executing any shell builtin command or any command residing within the OS image (e.g. ls).

SD card download#

Copy the raw OS image ifs-omap3517evm.raw into a mmcsd card, then insert the SD card in J14 MMCSD port and apply power to the target board. After U-boot is started, boot the ifs-omap3517evm.raw image in the mmcsd card as follows from the OMAP3517EVM # prompt:

mmcinit
fatload mmc 0 0x80100000 ifs-omap3517evm.raw
go 80100000

At this point you should see the ROM monitor download the boot image, indicated by a series of number signs. You'll also see output similar to this when it completes downloading:

reading ifs-omap3517evm.raw

1536276 bytes read
## Starting application at 0x80100000 ...
CPU0: L1 Icache: 256x64
CPU0: L1 Dcache: 256x64 WB
CPU0: L2 Dcache: 4096x64 WB
CPU0: VFP 410330c1
CPU0: 411fc087: Cortex A8 rev 7 500MHz

System page at phys:80011000 user:fc404000 kern:fc404000
Starting next program at vfe043df0
cpu_startnext: cpu0 -> fe043df0
coproc_attach(10): replacing fe065044 with fe064928
coproc_attach(11): replacing fe065044 with fe064928
Welcome to QNX Neutrino 6.4.0 on the Texas Instruments OMAP3517 EVM (ARMv7 Cortex-A8 core)

Now you can test the OS, simply by executing any shell builtin command or any command residing within the OS image (e.g. ls).


Creating a new flash partition#

  • Enter the following command to start the flash filesystem driver: devf-generic -s0x10000000,8m
  • Erase a section of the flash: flashctl -p/dev/fs0 -o1M -l7M -ve
  • Format the new patition filesystem: flashctl -p/dev/fs0p0 -o1M -l7M -vf
  • slay the devf-generic driver: slay devf-generic
  • Restart the driver to mount the new partition devf-generic -s0x10000000,8M

You should now have a /fs0p1 directory which you can copy files to.


Summary of driver commands#

The following tables summarize the commands to launch the various drivers.

ComponentBuildfile CommandRequired BinariesRequired LibrariesSource Location
Startup startup-omap3517evm . . src/hardware/startup/boards/omap3517evm
Serial devc-seromap -e -F -b115200 -c48000000/16 0x49020000^2,74 devc-seromap . src/hardware/devc/seromap
I2C i2c-omap35xx
For I2C1: i2c-omap35xx -p0x48070000 -i56 --u0
For I2C2: i2c-omap35xx -p0x48072000 -i57 --u1
For I2C3: i2c-omap35xx -p0x48060000 -i61 --u2
i2c-omap35xx . src/hardware/i2c/omap35xx
SPI spi-master -d omap3530 base=0x48098000,bitrate=125000,clock=48000000,irq=65,force=1,num_cs=1,channel=1,sdma=1 spi-master spi-omap3530.so src/hardware/spi/omap3530
USB EHCI Host io-usb -dehci-omap3 ioport=0x48064800,irq=77 io-usb
usb*
devu-ehci-omap3.so
libusbdi.so
prebuilt only
CAN dev-can-am3517 can1 dev-can-am3517
canctl
. src/hardware/cani/am3517
SD card For MMCSD1: devb-mmcsd-omap3517 cam quiet blk cache=2m mmcsd ioport=0x4809C000,ioport=0x48056000,irq=83,dma=30,dma=61,dma=62
For MMCSD2: devb-mmcsd-omap3517 cam quiet blk cache=2m mmcsd ioport=0x480b4000,ioport=0x48056000,irq=86,dma=23,dma=47,dma=48
devb-mmcsd libcam.so
fs-dos.so
cam-disk.so
src/hardware/devb/mmcsd
NOR flash devf-generic -s0x10000000,8m devf-generic
flashctl
. src/hardware/flash/boards/generic
NAND flash fs-etfs-omap3530_micron -r65536 -m /fs/etfs fs-etfs-omap3530_micron
etfsctl
. src/hardware/etfs/nand2048/omap3530_micron
RTC rtc hw /dev/i2c0 rtc
date
. src/utils/r/rtc
DMA Manager resource_seed dma=0,31 resource_seed . src/utils/r/resource_seed
Some of the drivers are commented out in the default buildfile. To use the drivers in the target hardware, you'll need to uncomment them in your buildfile, rebuild the image, and load the image into the board.


Known issues for this BSP#

  1. Only the mainboard USB host port is supported, and can only be controlled by the EHCI controller. Due to a SoC limitation, the OHCI controller cannot be used as a companion controller on this port. As a result, a high speed hub must be used to connect full/low speed devices.
  2. The OTG controller and the host port on on the UI board are not yet supported.