The table below depicts the memory layout for the image and for the flash.
Memory layout
| Item | Address |
|---|---|
| OS image loaded at: | 0xfe700000 |
| IPL location: | 0xfef00000 |
| Flash base address | 0xfe000000 |
2. Setting up the environment
This method requires a raw image, which the buildfile creates by default.
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 ifs-mpc8360mds.raw => setenv loadaddr 0x200000 => setenv bootcmd 'tftpboot $loadaddr $bootfile; go $loadaddr' => setenv bootdelay 2 => saveenv Saving Environment to Flash... Un-Protected 1 sectors Erasing Flash... flash erase done Erased 1 sectors Writing to Flash... done Protected 1 sectors => boot
geth: PHY is Marvell 88E11x1 (1410cc2) FSL GETH0: Full Duplex FSL GETH0: Speed 1000BT FSL GETH0: Link is up Using FSL GETH0 device TFTP from server 192.168.200.1; our IP address is 192.168.200.2 Filename 'ifs-mpc8360emds.raw'. Load address: 0x200000 Loading: ################################################################# ################################################################# ############################### done Bytes transferred = 819804 (c825c hex) ## Starting application at 0x00200000 ...
Welcome to QNX Neutrino trunk on the Freescale MPC8360E MDS board
erase fff00000 ffffffff
tftpboot 200000 ipl-mpc8360e
cp.b 200000 fff00000 8000
erase ff000000 ff1fffff
tftpboot 200000 ifs-mpc8360emds.raw
cp.b 200000 ff000000 200000
2. Using IPL
Note: This section assumes that the IPL has already been flashed into the CPU card.
Causion: This method requires an binary image. You have to modify the buildfile to create this format. Change this:
[virtual=ppcbe,raw]
[virtual=ppcbe,binary]
Welcome to QNX Neutrino on the Freescale MPC8360E MDS board
Hit 'd' to download a Neutrino image with sendnto
Press any other key to boot from flash
On a Windows host:
sendnto -b115200 -dCOM1 ifs-mpc8360emds.bin
On a QNX Neutrino host:
sendnto -b115200 -d/dev/ser1 ifs-mpc8360emds.bin
On a Linux host:
sendnto -b115200 -d/dev/ttyS0 ifs-mpc8360emds.bin
You should now see the Neutrino welcome message on your terminal screen:
Welcome to QNX Neutrino 6.3 on the Freescale MPC8360E MDS 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 " Driver Command Summary" section.
devf-generic -s0xFE000000,32M
flashctl -p/dev/fs0 -o0 -l6M-ve
flashctl -p/dev/fs0p0 -o0 -l6M-vf
slay devf-generic
devf-generic -s0xFE000000,32M;
The driver command lines below are specific to the Freescale MPC8360E MDS 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.
| Component | Buildfile Command | Required Binaries | Required Libraries | Source Location |
|---|---|---|---|---|
| Startup | startup-mpc8360e | . | . | src/hardware/startup/boards/mpc8360e |
| Serial | devc-ser8250 -e -F -c264000000 -b115200 0xe0004500,0x09 0xe0004600,0x0A | devc-ser8250 | . | src/hardware/devc/ser8250 |
| PCI | pci-mpc83xx | pci-mpc83xx pci | . | src/hardware/pci/mpc83xx |
| Network | io-pkt-v4 -ducc_ec-mds mac=00e02991234c,channel=1,phy=0,mode=GMII -ptcpip | io-pkt-v4 ifconfig | devn-ucc_ec-mds.so libsocket.so devnp-shim.so | src/hardware/devn/ucc_ec/ppc/mds.dll.be |
| I2C | i2c-mpc5200 -p0xe0003000 -c88000000 -i14 --u1 (Channel 1)
i2c-mpc5200 -p0xe0003100 -c88000000 -i15 --u0(Channel 2) | i2c-mpc5200 | . | src/hardware/i2c/mpc5200 |
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.
Note: PCI driver must be started after the I2C driver is active.
MPC8360E silicon rev. 2.1
Board assembly rev. 0.51
Factory preset switches
256 MB DDR2 SO-DIMM pugged into U33
Workaround: For a binary-only BSP, change these lines in the root Makefile:
all: install links $(if $(wildcard images/*),images) @echo done