QNX® Momentics® 6.3.2 Freescale ADS5121e Board Support Package 1.0.0 Release Notes
QNX® Momentics® 6.3.2
Freescale ADS5121e Board Support Package 1.0.0
Release Notes
Date of this edition: October 08, 2008
Target OS: This BSP is compatible with targets running
the QNX® Neutrino® RTOS 6.3.2.
Host OS: In order to use this BSP, you must have installed
QNX Momentics 6.3.2 as a self-hosted QNX® Neutrino® system, or
on one of the following development hosts:
- Microsoft Windows Vista, XP SP2, or 2000 SP4
- Linux Red Hat Enterprise Workstation 4 or 5,
Red Hat Fedora Core 6 or 7, Ubuntu 6.0.6 LTS or 7.0.4, or SUSE 10
Boards supported: Freescale ADS5121e reference boards
 |
- For information on installing this BSP, see the installation note.
- Ensure you've installed the latest version of the
QNX Momentics Character Driver Development Kit (DDK), because we've made
significant changes to it since we first released it;
for more information, see the Character DDK Release Notes.
- For the most up-to-date version of these release notes,
go to our website
(www.qnx.com),
log into your myQNX account, and then go to the Download area.
|
Throughout this document, you may see reference numbers
associated with particular issues, changes, etc. When
corresponding with QNX 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.
For information about the hardware or firmware, refer to the
documentation for your board. You may also find the
following website useful:
www.freescale.com
We assume that you're already familiar with the following docs:
| Title |
Chapter |
| Building Embedded Systems |
Making an OS image; for customizing the BSP from the command line |
| Building Embedded Systems |
Working with a BSP; for building the BSP |
| IDE User's Guide |
Building OS and Flash Images; for customizing the BSP within the
IDE |
This BSP contains:
- binary components:
- EIDE block driver
- Graphics driver
- USB driver
- DMA library
- I2C library
- SPI library
- CAN library
- Util library
- I/O character library
- canctl utility
- source code:
- Startup
- CAN driver
- AC97 audio driver
- I2S audio driver
- Serial driver
- Network driver
- NAND flash driver
- NOR flash driver
- I2C driver
- SPI driver
- PCI driver
- DMA library
- RTC utility
- DMA mutex utility
- Freescale ADS5121e Board Support Package release notes (HTML)
Each BSP guide contains board-specific information and
instructions on building an OS image for that particular
board.
When you install BSPs, you'll find the source code
in $QNX_TARGET\usr\src\archives\qnx\ on Windows, and in
$QNX_TARGET/usr/src/archives/qnx/ on QNX Neutrino and Linux.
You can read the documentation (including release notes) in the
Integrated Development Environment's help system on all host OSs;
on self-hosted QNX Neutrino systems, you can also read it
in the Photon helpviewer, or you can use a web browser to display:
${QNX_TARGET}/usr/help/product/momentics/bookset.html
This “roadmap” page contains links to the
various HTML booksets that accompany the OS (e.g.
System Architecture, QNX Neutrino Programmer's Guide,
Library Reference, Utilities Reference, etc.).
Depending on the particular BSP and type of driver, you'll
find the files in these locations:
| File |
Location |
| Buildfile |
$QNX_TARGET\cpu\boot\build |
| IPL and/or startup |
$QNX_TARGET\cpu\boot\sys |
| “sbin” drivers (serial, flash, block, PCI, PCMCIA, USB) |
$QNX_TARGET\cpu\sbin |
| “dll” drivers (audio, graphics, network) |
$QNX_TARGET\cpu\lib\dll |
| File |
Location |
| Buildfile |
$QNX_TARGET/cpu/boot/build |
| IPL and/or startup |
$QNX_TARGET/cpu/boot/sys |
| “bin” drivers (serial, flash, block, PCI, PCMCIA, USB) |
$QNX_TARGET/cpu/bin |
| “dll” drivers (audio, graphics, network) |
$QNX_TARGET/cpu/lib/dll |
Neutrino supports the following devices on the
Freescale ADS5121e reference boards:
- CAN: MSCAN controllers
- AUDIO: AC'97-compliant onboard audio controller
- AUDIO: I2S audio controller
- SERIAL: Programmable serial controller
- GRAPHICS: Fujitsu coralPA
- NETWORK: 10/100 BASE-T ethernet controller
- BLOCK: ATA/ATAPI Interface
- NAND FLASH: 512MB HYNIX HY27UG088G5M NAND flash (Only support CE1 at this point)
- NOR FLASH: 64MB Spansion GL256N11FFI02
- I2C: Inter-Integrated circuit protocol module
- SPI: Programmable serial controller
- PCI: PCI controller
- USB: EHCI USB host controller
 |
If you need support for a particular device that isn't
listed here, please contact us. The solution may be as
simple as modifying an existing driver, which you might be
able to do yourself, or it may involve more extensive
support (e.g. a Custom Engineering arrangement). Contact a
QNX technical support representative or Field Application
Engineer to help you decide how to proceed. |
- Freescale ADS5121e reference board
- 64 MB flash
- U-Boot or IPL
- Terminal emulation program (e.g. HyperTerminal, qtalk, tip, minicom, or Momentics IDE editor)
- 150 MB of free disk space
- 32 MB of RAM
- RS-232 serial port
- NULL-modem serial cable
- Ethernet link (optional, but recommended for image transfers)
 |
For other system requirements (e.g. disk, RAM), see the installation notes
for QNX Momentics. |
Connect the serial cable to the first serial port of the
Freescale ADS5121e reference board and to the first serial port of your host
machine (e.g. ser1 on a Neutrino host, /dev/ttyS* on
Linux, COM1 on Windows, etc).
 |
If you have a Neutrino host with a serial mouse,
you may have to move it to the second serial port on your
host, because some terminal programs require the first serial port. |
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.
- On your host machine, start your favorite terminal
program with these settings:
- Baud: 115200
- Bits: 8
- Stop bits: 1
- Parity: none
- Apply power to the board.
- Configure the board for a TFTP transfer.
- Copy the image from your host to the target using this
command:
tftpboot 0x200000 /xfer/ads5121e.raw
go 0x200000
You should now see the Neutrino welcome message on your
terminal screen:
Welcome to QNX Neutrino 6.3 on the Freescale ADS5121e 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).
The table below depicts the memory layout for the image and
for the flash.
| Item |
Address |
| OS image loaded at: |
0x80200000 |
| OS image begins execution at: |
0x80200000 |
| NOR Flash base address |
0xfc000000 |
| NAND Flash base address |
0x40000000 |
The driver command lines below are specific to the freescale ADS5121e reference board.
See the online docs for each driver for additional command-line options and other details.
- Command:
- devc-sermpc512x -c 66000000 -b 115200 -p 3 -e -F -S -x 40
 |
For ADS5121e HW Rev 2D and later, the clock frequency is 66MHz; For ADS5121e HW Rev 2, the clock frequency is 99MHz |
- Command:
- pci-mpc5121
- Notes:
- Required binaries:
- Command:
- devb-eide-mpc5121 eide nobmstr
- Notes:
- Required binaries:
- devb-eide-mpc5121
- libcam.so
- io-blk.so
- cam-xxx.so
- fs-xxx.so
- Command:
- io-net -d mpc5121 mac=662200043039 verbose -ptcpip
- Notes:
- Required libraries and binaries:
- devn-mpc5121.so
- libsocket.so
- npm-tcpip.so
- io-net
- ifconfig
- nicinfo
- netstat
- ping
- Command:
- dev-can-mpc5121 -u 0 can0
- Notes:
- Required binaries:
- Command:
- devf-mgt5200 -s0xfc000000,64M -r
- Notes:
- Required binaries:
- Command:
- fs-etfs-mpc5121 -m /fs/etfs
- Notes:
- Required binaries:
- Command:
- io-usb -d ehci-mpc512x ioport=0x80004000,irq=44,verbose=1 -vvv &
- Notes: Please use the mini-ATX power supply and remove P1 jumper to obtain the enough power for USB, otherwise the system may reset unexpected.
- Required libraries and binaries:
- devu-ehci-mpc512x.so
- libusbdi.so
- io-usb
- usb
- devb-umass
- Command:
- spi-master -d mpc5121
- Notes:
- Required libraries and binaries:
- spi-mpc5121.so
- spi-master
- Command:
- io-audio -d mpc512x
- Notes: DMA mutex infrastructure need to be created before starting this driver
- Required libraries and binaries:
- deva-ctrl-mpc512x.so
- deva-mixer-ac97.so
- libasound.so.2
- deva-util-restore.so
- libdma-mpc512x.so
- io-audio
- Command:
- io-audio -d mpc5121_i2s
- Notes: DMA mutex infrastructure need to be created before starting this driver
- Required libraries and binaries:
- deva-ctrl-mpc5121_i2s.so
- libasound.so.2
- deva-util-restore.so
- libdma-mpc512x.so
- io-audio
- Command:
- i2c-mpc5200 -o1 -p0x8001700 -c100000000 -i9
- Notes:
- Required binaries:
- Command:
- io-display -dvid=0,did=0
- Notes: The Advanced Graphics Technology Development Kit (TDK) 2.0 with patch 331 are required for this BSP
- Required libraries and binaries:
- devg-mpc5121.so
- libffb.so.2
- libgf.so.1
- io-display
- vsync
- display.conf
- mpc5121.conf
- Command:
- mpc512x_dma_cfg -c
- Notes:
- Required libraries and binaries:
- Command:
- rtc m41t6x
- rtc -s m41t6x
- Notes: The rtc command must be run after the I2C driver is active
- Required binaries:
 |
For more information about these commands, see the Neutrino
Utilities Reference. |
- Enter the following command to start the flash
filesystem driver:
devf-mgt5200 -s0xfc000000,64M -r
- To prepare the area for the partition, enter the
following command:
flashctl -p/dev/fs0 -o7m -l50m -ve
- Format the partition:
flashctl -p/dev/fs0p0 -o7m -l50m -vf
- Slay, then restart the driver:
slay devf-mgt5200
devf-mgt5200 -s0xfc000000,64M -r
You should now have a /fs0p0 directory where you can copy
files to.
This version of the BSP addresses the following issues:
- The current NAND Flash driver works on ADS5121e Rev3.2 boards. The NAND interface was
modified (significantly) for the ADS5121e Rev3.5 and Rev 4 boards. A new NAND Flash driver
will be delivered in a follow-on release of the ADS5121e BSP.
- The current EIDE driver only works in PIO mode. DMA mode will be supported in a follow-on
release of the ADS5121e BSP.
- There are no real audio codec connect to the I2S interface on the board. The I2S audio driver
deva-ctrl-mpc5121_i2s.so was tested by loopback mode. An invalid clock rate
issue is observed in the loopback mode.
- The resolution of the playback/capture positional information returned by the audio drivers
deva-ctrl-mpc512x.so and deva-ctrl-mpc5121_i2s.so to
the client is limited to the fragment size.
- Don't rename the directory after running setupbsp, or
else you won't be able to build or uninstall the BSP properly.
(QNX Ref# 38361)
- If you uninstall this BSP, the uninstaller removes only those files
that were originally shipped with the BSP (whether or not you modified
them).
If you've added any files, they remain on your system.
(QNX Ref# 38368)
- The uninstaller script doesn't remove itself when you uninstall the BSP.
(QNX Ref# 38368)
- If you install a BSP more than once, and then uninstall an instance of
it, the documentation for all copies of the BSP is uninstalled.
(QNX Ref# 38320)
- All QNX BSPs ship with an images/Makefile whose purpose
is to build an image filesystems (ifs) file using drivers
built from source.
Currently, it's set up to copy buildfiles from within the source directory
structure (source/hardware/startup) to the
images directory so that it can generate an
ifs.
This happens automatically when you do a top-level make, but
this mechanism doesn't work when you're making an binary BSP.
(QNX Ref# 38242)
Workaround: For a binary-only BSP, change these lines in the root
Makefile:
all: install links $(if $(wildcard images/*),images)
@echo done
to the following:
all: prebuilt links $(if $(wildcard images/*),images)
@echo done
To obtain technical support for any QNX product, visit the
Support + Services area
on our website (www.qnx.com).
You'll find a wide range of support options, including community forums.