Home
Developer Resources
Technical Articles

QNX Technical Articles

QNX® Momentics® 6.3.0 SH4 Critical Patch: Renesas Biscayne (SH7760) BSP Release Notes

QNX® Momentics® 6.3.0

Date of this edition: January 14, 2005

Target OS: QNX® Neutrino® 6.3.0

Host OS: Microsoft Windows XP SP1 or 2000 SP4; Sun Solaris 7/8; QNX® Neutrino® 6.3.0; Linux (Red Hat 8/9)


Note: The SH4 Critical Patches are included in QNX Momentics 6.3.0 Service Pack 1. We highly recommend that you install SP1 instead of these patches.

For information on installing this patch, see the SH4 Critical Patch Installation Note.


Contents


Note: Throughout this document, you may see reference numbers associated with particular issues, changes, etc. When corresponding with our Technical Support staff about a given issue, please quote the relevant reference number. You might also find the reference numbers useful for tracking issues as they become fixed.

What's in this patch?

There are two forms of this patch; one includes binary components, and the other includes source code.

Binary components

The binary patch contains new versions of the following:

  • USB driver.

Source code

The source patch contains all the source:

  • IPL
  • Startup
  • PCI server
  • Serial driver (SCI and HSPI)
  • I2C driver
  • Camelot utility
  • Camelot DMA library
  • AC97 audio driver
  • I2S audio driver
  • Graphics driver
  • Network driver.

Note: The source code requires a BSP Source License.

The flash filesystem driver binary and the flash filesystem library are included in the separately available Flash Filesystem & Embedding TDK.


The source patch includes new versions of the following:

  • prebuilt/shle/usr/lib/libi2c-master.a
  • src/hardware/deva/ctrl/common.mk
  • src/hardware/devc/hspi/tspi.c.readme
  • src/hardware/devc/sersci/externs.h
  • src/hardware/devc/sersci/init.c
  • src/hardware/devc/sersci/options.c
  • src/hardware/devc/sersci/tto.c
  • src/hardware/devn/smc9000/smc.c
  • src/hardware/devn/smc9000/xfer.c
  • src/hardware/flash/mtd-flash/amd/aMB_v2resume.c
  • src/hardware/flash/mtd-flash/intel/iCFI_v2lock.c
  • src/hardware/flash/mtd-flash/intel/iCFI_v2unlock.c
  • src/hardware/flash/mtd-flash/intel/iCFI_v2unlockall.c
  • src/hardware/startup/boards/biscayne/build
  • src/hardware/startup/boards/biscayne/callout_interrupt_onchip.s
  • src/lib/dma/camelot/camelot.c
  • src/lib/dma/camelot/camelot.h

Fixed issues for this BSP

This patch contains fixes for the following issues:

devn-smc9000
  • We fixed an unaligned data access in the devn-smc9000.so driver that caused io-net to SIGBUS. The SH4 Critical Patch includes the new binary; the BSP source patches include the new source. (Ref# 19170)
  • The SMC9000 stopped transmitting under load (because of an underrun on the receive buffer). (Ref# 21392)
devu-ohci-biscayne.so
  • Copying a file to a USB mass-storage device used to result in data corruption at certain offsets in the file. (Ref# 21506)
  • If you didn't specify the correct number of endpoint descriptors (EDs), io-usb would crash.

    The driver requires a minimum of 65 EDs to fill in interrupt-scheduling information. One extra ED is needed per device endpoint plugged in as well as potentially 2 TDs per endpoint. The num_ed option has been changed to add the specified value to the minimum number of required EDs. (Ref# 21554)

See also the release notes for the SH4 Critical Patch.

Known issues for this BSP

devg-camelot.so
As documented by Renesas, there are bandwidth restrictions on the LCD controller. It supports 16 x 1 to 1024 x 1024 dots (8 bpp: a maximum of 640 x 480 dots, 16 bpp: a maximum of 320 x 240 dots). If you try to run at 640 x 480 x 16 on the Renesas Biscayne board, you'll get display corruption and flicker.
phfont
If windows aren't properly displayed under Photon, make sure that phfont is running.
devn-smc9000
  • The SMC9000 driver has an auto-negotiation issue. (Ref# 21541)

    Workaround: Use command-line arguments to specify the speed and duplex setting for the driver.

  • Not all IPv6 multicast protocols function properly with this driver. (Ref# 21720)
BSP documentation
The instructions in the Inside the Flash chapter for creating a flash partition are valid only if the board boots from the ROM monitor (DMON). If your board boots from the IPL, erasing the flash erases the IPL. The next BSP release will include the proper procedure to follow for this particular case. (Ref# 19035)

If you're booting from the IPL:

  1. Start the flash driver:
    devf-generic -s0x0,32M
        
  2. Erase the flash, specifying the offset from which to start. Since the IPL is at the start of the flash, use the size of the IPL image as the offset:

    flashctl -p/dev/fs0 -ooffset -ev

  3. Format the flash, again specifying the size of the IPL image as the offset:

    flashctl -p/dev/fs0p0 -ooffset -f

  4. Kill the flash driver:
    slay devf-generic
        
  5. Restart the flash driver:
    devf-generic -s0x0,32M
        

If you're booting from the ROM monitor:

  1. Start the flash driver:
    devf-generic -s0xe8000000,32M
        
  2. Erase the flash:
    flashctl -p/dev/fs0 -ev
        
  3. Format the flash:
    flashctl -p/dev/fs0p0 -f
        
  4. Kill the flash driver:
    slay devf-generic
        
  5. Restart the flash driver:
    devf-generic -s0xe8000000,32M
        

Technical support

If you have any questions, comments, or problems with a QNX product, please contact Technical Support. For more information, see the How to Get Help chapter of the Welcome to QNX Momentics guide or visit our website, www.qnx.com.