Release Notes for QNX Neutrino 6.4.0 BSP for Renesas SH7774 GoldAle 1.0.0#

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:0x88010000

Getting Started#

Step 1: Connect your hardware#

Connect the serial cable to the Debug0 serial port of the Renesas SH7774 GoldAle and to a free serial port on the 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.

Step 2: Build the BSP#

Step 3: Transfer the OS image to the target#

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

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

To boot using the ROM monitor, you must first modify the image format in your build file.

1. Modify the following line in your build (images/goldale.build): [virtual=shle/binary +compress] .bootstrap = {

to this:

[virtual=shle/srec +compress] .bootstrap = {

Note: The name of the resultant image will remain ifs-goldale.bin.

2. Once you've made the change, you must regenerate the image by typing make in the images directory:

# make

3. Connect to your board, and at the boot monitor prompt, type "h" to get the help infomation:

      SH7774/little/map0 (c)Renesas Technology Corp. $Date: 2006/02/07 01:11:40 $
      ]h
      SH monitor commands
      D  {sadr {eadr}}        memory dump  (DM sets dump size)
      F  [sadr] [eadr] [data] fill memory
      FL [sadr] [eadr] [data] fill memory(LONG)
      G  {start_adr}          go program
      H                       help
      M  [adr]                set memory(BYTE)
      MW [adr]                set memory(WORD)
      ML [adr]                set memory(LONG)
      X  {reg {data}}         change register
      R                       display registers
      L                       load program
      DM {B|W|L}              set&disp dump mode
      MV [sadr] [dadr] [len]  move memory
      CF                      LAN/ATA-flash
      TM {sadr eadr}          memory test
      ]
4. Type "L" or "l" to load image to target.
      ] l
      please send ! ('.' & CR stop load)

5. Copy the image to a serial port (you may need to connect your terminal session): cp -v ifs-goldale.bin /dev/ser1

6. Jump to the image

     ]g address-of-startup-entry-point 

You can find this address from the output of the the mkifs utility: For example:

     # make
     make
     mkifs -r../install -v  goldale.build ifs-goldale.bin
     Offset   Size    Entry   Ramoff Target=Host
     88010000    100     ----      --- Startup-header
     88010100   c008 88011fc0      --- /tmp/FAA891574
     8801c108     5c     ----      --- Image-header
     8801c164    72c     ----      --- Image-directory
              ----    ---     ----      --- tmp=/dev/shmem
              ----    ---     ----      --- dev/console=/dev/ser1
      ...

Note: 88011fc0 is the address to use.

You should now see the Neutrino welcome message on your terminal screen:

     Welcome to QNX Neutrino 6.4.0 on the Renesas Goldale SH7774

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

Step 3B: Transfer the OS image to the target using IPL#

You can write the IPL to the flash. This may be desirable once you've tweaked the OS image exactly the way you want it, and you want the board to boot the image automatically, immediately on power up.

1.Modify your buildfile to generate a binary image.
2.Run the mkimage script, inside the /images directory of the BSP. The output file from this script is a combined IPL/OS image called ipl-ifs-goldale.bin. You'll download this file to the board's memory using the bootloader, and then burn the image into the board's flash.

Here is the mkimage script:

#!/bin/sh
#
# Generate a binary image from IPL code for the goldale 
# board and combine with the binary OS image
set -v
# Convert IPL into BINARY format
${QNX_HOST}/usr/bin/ntosh-objcopy --input-format=elf32-shl --output-format=binary -R.data ../install/shle/boot/sys/ipl-goldale ipl-tmp-goldale.bin
# Pad BINARY IPL
mkrec -s256k -ffull -r ipl-tmp-goldale.bin > ipl-tmp2-goldale.bin
# Combine the BINARY IPL with the BINARY OS Image
cat ipl-tmp2-goldale.bin ifs-goldale.raw > ipl-ifs-goldale.bin
# Cleaning up temporary files
rm -f *tmp*

3.Boot the board as described above, using Rom Monitor to download the ifs-goldale.bin boot image.

4.You should make the ipl-ifs-goldale.bin available to your target. In this example we copied it into /dev/shmem .

When the copy is complete, you can reboot; it should now boot from the native QNX IPL. You should see output as follows:

QNX Neutrino IPL for the Goldale :
Commands:
          d: download image to RAM
          f: scan flash for image
ipl>

5. If you wish to download the OS image serially, press the d key and use sendnto to download the image:

sendnto -b115200 -d/dev/ser1 ifs-goldale.bin


Creating a flash partition#

We'll create a filesystem partition at 4.0 MB offset from the beginning of flash to reserve room for a Neutrino image plus IPL:

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

# devf-generic -s0x4000000,64M

2. Erase the flash at offset 4 MB for a length of 60 MB:

# flashctl -p/dev/fs0 -o4M -l60M -ve

3. Format the partition:

# flashctl -p/dev/fs0p0 -o4M -l60M -f

This command will format the 60 MB partition.

4. Slay the flash filesystem driver:

# slay devf-generic

5. Restart the driver:

# devf-generic -s0x4000000,64M

You should now have a read/write partition mounted as /fs0p1 off the root directory.


Driver Command Summary#



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

ComponentBuildfile CommandRequired BinariesRequired LibrariesSource Location
Startupstartup-goldale ..src/hardware/startup/boards/goldale
Serialdevc-sersci -e -F -b115200 -x -c 14745600/16 scif0&
devc-sersci -e -F -u2 -b115200 -x -c 14745600/16 scif1&
devc-sersci.src/hardware/devc/sersci
Flash (NOR)devf-generic -s0x4000000,64M devf-generic
flashctl
.src/hardware/flash/boards/generic
Networkio-pkt-v4 -dsmc9000 ioport=0x18180000,irq=0x804 -ptcpip io-pkt-v4
ifconfig
devn-smc9000.so
libsocket.so
src/hardware/devn/smc9000
Graphicsio-display -dvid=0,did=0 io-display
goldale.conf
img.conf
devg-goldale.so
devg-soft3d-fixed.so
libGLES_CL.so.1
libffb.so.2
libm.so.2
libdisputil.so
src/hardware/devg/goldale

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#