Project Home
Project Home
Wiki
Wiki
Project Information
Project Info
wiki2729: TiOmap3530evm1.0.020080109ReleaseNotes (Version 6)


Release Notes for the omap3530 BSP#

System requirements#

Target system#

  • QNX Neutrino RTOS 6.4
  • Board version: OMAP35xEVM ES2.0 (OMAP-EVM-MB-1013 MainBoard, T4030-PW-1013 Power Module, O3530-PB-1013 CPU Module with OMAP35XX Rev. B)
  • ROM Monitor version: X-Loader 1.41-Mistral, UBoot v 1.1.4
  • Samsung Package-On-Package K5W1G1GACM: Comprises of 128 MB OneNAND flash (interface to OMAP via GPMC CS0 16-bit wide) and 128 Mobile DDR SDRAM 166Mhz (32MX32 bit, interface to OMAP via SDRC CS0)

Host development system#

  • QNX Momentics 6.4, one of the following host systems:
    • QNX Neutrino 6.4 Alpha M7
    • Microsoft Windows Vista, XP SP2 or SP3, 2000 SP4
    • Linux Red Hat Enterprise Workstation 4 or 5, Red Hat Fedora Core 6 or 7, Ubuntu 6.0.6 LTS or 7, or SUSE 10
  • Terminal emulation program (Qtalk, Momentics IDE Terminal, tip, HyperTerminal, etc.)
  • RS-232 serial port
  • NULL-modem serial cable
  • Ethernet link

Getting Started#

Step 1: Connect your hardware#

  • Connect the serial cable to the first serial port UART1 of the OMAP35xEVM 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:

X-Loader 1.41-Mistral
Detected Samsung MuxOneNAND1G Flash  Starting OS Bootloader...


U-Boot 1.1.4 (Mar  7 2008 - 16:57:15)

OMAP3-GP rev 2, CPU-OPP2 L3-165MHz
OMAP3EVM 1.0 Version + mPOP (Boot ONND)
DRAM:  128 MB
Muxed OneNAND 128MB 1.8V 16-bit (0x30)
Scanning device for bad blocks
num of blocks = 2048
In:    serial
Out:   serial
Err:   serial
 Test Pattern Bitmap displayed on the LCD. LCD bitmap test done. Reseting CHIP... Done
LAN9x18 (0x01150002) detected.
start Auto negotiation... (take ~2sec)
Auto negotiation failed
Hit any key to stop autoboot:  5

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-omap3530.raw image as follows (we'll assume it's in a directory called /xfer/) from the OMAP3EVM # prompt:

tftpboot 80010000 /xfer/ifs-omap3530.raw

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:

Reseting CHIP... Done
LAN9x18 (0x01150002) detected.
start Auto negotiation... (take ~2sec)
Auto negotiation complete, 100BaseTX, full duplex
TFTP from server 192.168.1.3; our IP address is 192.168.1.160
Filename 'ifs-omap3530.raw'.
Load address: 0x80010000
Loading: #################################################################
	 #################################################################
	 #################################################################
	 #################################################################
	 #################
done
Bytes transferred = 1417876 (15a294 hex)
OMAP3EVM #

Now, to run the image, enter:

go 80010000

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

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

System page at phys:80180000 user:fc404000 kern:fc404000
Starting next program at vfe03a7e0
cpu_startnext: cpu0 -> fe03a7e0
coproc_attach(10): replacing fe05afd0 with fe05a8b4
coproc_attach(11): replacing fe05afd0 with fe05a8b4
Welcome to QNX Neutrino 6.4 on the Texas Instruments OMAP 35X EVM Board
#

You can now 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. For sample command lines, please see the "Summary of driver commands" section.


Known issues for this BSP#

  • This BSP has been tested only on the OMAP35xEVM development system.
  • In Microsoft Windows, certain programs (e.g. Norton Ghost) add directories inside double quotation marks (e.g. ...;"c:\Program Files\Norton Ghost\";...) to your PATH environment variable. This causes the Cygwin spawn() function to fail, which in turn causes cp to fail when called by ln-w. (Ref# 20046) Workaround: Modify your PATH environment variable and remove any quotation marks.
  • In those instances where the the ROM monitor's MAC address is different from the one you pass in when running io-net, the host can cache the ROM monitor's address. This can result in a loss of connectivity. Workaround: If you need to specify a MAC address to io-net, we recommend that you use the same MAC address that the ROM monitor uses. This will ensure that if the host caches the ROM monitor's MAC address, you'll still be able to communicate with the target. Otherwise you might need to delete the target's arp entry on your host.

Summary of driver commands#

The driver command lines below are specific to the OMAP35x EVM board. See the online docs for each driver for additional command-line options and other details.

NOTE: Some of these 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.

Serial#

Command:
devc-seromap -e -F -b115200 -c48000000/16 0x4806A000^2,72

Ethernet#

Command:
io-pkt-v4 -dsmc911x ioport=0x2C000000,irq=176 -ptcpip
ifconfig en0 x.x.x.x. 
Required libraries and binaries:
  • io-pkt-v4
  • libsocket.so
  • devn-smc911x.so (driver)
  • devnp-shim.so

I2C:#

Command:
Interface 1:
i2c-omap35xx -i56 -p0x48070000
Interface 2:
i2c-omap35xx -i57 -p0x48072000

SPI:#

Command:
Interface 1:
spi-master -d omap3530 base=0x48098000,irq=65
Interface 2:
spi-master -d omap3530 base=0x4809A000,irq=66

If testing with an SPI test tool such as Aardvark, use:

spi-master -d omap3530_spi_library base=0x4809A000,bitrate=125000,clock=48000000,channel=0,irq=66,force=1

Audio#

Command:
i2c-omap35xx
io-audio -d omap35xevm
wave testfile.wav
Note: To start the audio system, you'll need to execute the Audio driver and commands in the order indicated.

Note: For more information about these commands, see the Neutrino Utilities Reference.