Release Notes of the QNX 6.4.0 BSP for AMCC PPC440 EP/GR Evaluation Kit (EVK) Trunk#

System requirements#

Target system

Host development system


System Layout#



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

ItemAddress
OS image loaded at:0x00200000
OS image begins execution at:0x002028e8
Flash base address0xFC000000
Monitor Flash offset0xFD400000
EMAC base addresses0xEF600E00 / 0xEF600F00 (IRQ: 11,33,34)
Serial base address (UART 0)0xEF600300 (IRQ: 0)
Serial base address (UART 1)0xEF600400 (IRQ: 1)
USB (440EP Reference board only)0xEF601000 (IRQ: 40)
IIC0xEF600700 (IRQ: 2)
SPI0xEF600900 (IRQ: 8)


Getting Started#



Starting Neutrino#

Step 1: Build the BSP

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

Step 2: Connect your hardware

1. Connect one end of the null-modem serial cable to the RS-232 port labeled P2 "UART0" the AMCC Reference board.

2. Connect the other end of the serial cable to the first available serial port of your host machine (e.g. ser1 on a Neutrino host).

Note: 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.

On your host machine, start your favorite terminal program with these settings:

Then, apply power to the target. You should see output similar to the following:

U-Boot 1.1.4-ga2c95a72 (Jul 28 2006 - 19:33:10)

CPU:   AMCC PowerPC 440GR Rev. B at 533.333 MHz (PLB=133, OPB=66, EBC=66 MHz)
       I2C boot EEPROM enabled
       Internal PCI arbiter disabled, PCI async ext clock used
       32 kB I-Cache 32 kB D-Cache
Board: Yellowstone - AMCC PPC440GR Evaluation Board
I2C:   ready
DRAM:  256 MB
FLASH: 64 MB
PCI:   Bus Dev VenId DevId Class Int
In:    serial
Out:   serial
Err:   serial
Net:   ppc_4xx_eth0, ppc_4xx_eth1

Type "run flash_nfs" to mount root filesystem over NFS

Hit any key to stop autoboot:  0
=> 

Note: The version number for U-Boot is displayed as 1.1.0, but it's really 1.1.2.

Step 3: Setup the environment

On your target, type the following, filling in the appropriate IP addresses and ifs file:

=> setenv ipaddr 192.168.200.2
=> setenv serverip 192.168.200.1
=> setenv bootfile root/ifs-ep440c.bin
=> setenv loadaddr 0x200000
=> setenv bootcmd 'tftpboot $loadaddr $bootfile; go $loadaddr'
=> saveenv
Saving Environment to Flash...
Un-Protected 1 sectors
Un-Protected 1 sectors
Erasing Flash...
. done
Erased 1 sectors
Writing to Flash... done
Protected 1 sectors
Protected 1 sectors

Step 4: Boot the IFS image

You can use TFTP download (the default) or serial download to transfer the image from your host to the target:

This method requires a raw image, which the buildfile creates by default.

Once the above setup is complete, you can run the load command at the => prompt to download the image:

=> boot

or

=> tftpboot 0x200000; go 0x200000

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:

=> tftpboot 0x200000; go 0x200000
ENET Speed is 100 Mbps - FULL duplex connection
Using ppc_4xx_eth0 device
TFTP from server 10.42.97.136; our IP address is 10.42.104.42
Filename '/root/ifs-ep440c.bin'.
Load address: 0x200000
Loading: #################################################################
         #################################################################
         #################################################################
         #################################################################
         ##############################################################
done
Bytes transferred = 1644888 (191958 hex)
## Starting application at 0x00200000 ...

System page at phys:0000b000 user:0000b000 kern:0000b000
Starting next program at v0024615c
Welcome to QNX Neutrino Trunk on the PPC 440 EP/GR Reference Board
#

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

Creating a flash partition#

1. Enter the following command to start the flash filesystem driver:

devf-generic -s0xFC000000,64M

2. To prepare the area for the partition,, enter the following command:

Caution:
Be aware of the ROM Monitor offset in flash. These commands will erase the ROM Monitor if not properly watched. The ROM Monitor / Linux image reside in the last 20MB of flash.
flashctl -p/dev/fs0 -l8M -ve

3. Format the partition:

flashctl -p/dev/fs0p0 -l8M -vf

4. Slay, then restart the driver:

slay devf-generic &
devf-generic -s0xFC000000,64M & 

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

Driver Command Summary#



The following table summarizes the commands to launch the various drivers.

ComponentBuildfile CommandRequired BinariesRequired LibrariesSource Location
Startupstartup-ep440c ..src/hardware/startup/boards/ep440c
Serialdevc-ser8250 -e -F -c11059200 -b115200 0xEF600300,0x0 0xEF600400,1devc-ser8250.src/hardware/devc/ser8250
Flash (NOR)devf-generic -s0xFC000000,64M devf-generic
flashctl
.src/hardware/flash/boards/generic
PCIpci-ppc440rb pci-ppc440rb
pci
.src/hardware/pci/ppc440rb
Networkio-pkt-v4 -dppc405-ep440c mac=001122334455,rmii -ptcpip io-pkt-v4-hc
ifconfig
devnp-ppc405-ep440c.so
libsocket.so
devnp-shim.so
src/hardware/devn/ppc405
I2Ci2c-ppc405 -p0xEF600700 -i2 i2c-ppc405.src/hardware/i2c/ppc405
SPI static library..libep440c-spi.asrc/hardware/spi/ep440c
SPI test utilityep440-spi ep440-spilibep440c-spi.asrc/hardware/support/ep440-spi
USB (440EP Reference board only)io-usb -d ohci-440ep ioport=0xEF601000,irq=40 io-usb
usb
devu-ohci-440ep.so
libusbdi.so
prebuilt only
/prebuilt/ppcbe/lib/dl/

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.

FPU support#

This BSP support AMCC PPC440 EP/GR 440 FPU.

SPI#

SPI support is included as a static library (libep440c-spi.a) which needs to be linked into the application which requires SPI functionality.

The ep440-spi sample utility included in this BSP has already been linked with this library.

The following is the expected output of the sample utility when run on the target:

# ep440-spi
Welcome to PPC440 SPI API testing program
bit rate is set to 125000 but is read back as 125313
if the error is too big, please set another value
Transmit successful
Transmit successful
Transmit successful
...

This utility assumes the following:


Known Issues#