summaryrefslogtreecommitdiff
path: root/nuttx/configs/ubw32/README.txt
diff options
context:
space:
mode:
Diffstat (limited to 'nuttx/configs/ubw32/README.txt')
-rw-r--r--nuttx/configs/ubw32/README.txt515
1 files changed, 515 insertions, 0 deletions
diff --git a/nuttx/configs/ubw32/README.txt b/nuttx/configs/ubw32/README.txt
new file mode 100644
index 000000000..f1f13d0ac
--- /dev/null
+++ b/nuttx/configs/ubw32/README.txt
@@ -0,0 +1,515 @@
+configs/ubw32 README
+====================
+
+This README file discusses the port of NuttX to the Sparkfun UBW32 board.
+This port uses the original v2.4 board which is based on the MicroChip
+PIC32MX460F512L. See http://www.sparkfun.com/products/8971. This older
+version has been replaced with this board http://www.sparkfun.com/products/9713.
+See also http://www.schmalzhaus.com/UBW32/.
+
+Contents
+========
+
+ PIC32MX460F512L Pin Out
+ MAX3232 Connection
+ Toolchains
+ Loading NuttX with PICkit2
+ LEDs
+ PIC32MX Configuration Options
+ Configurations
+
+PIC32MX460F512L Pin Out
+=======================
+
+ PIC32MX460F512L 100-Pin TQFP (USB) Pin Out. The mapping to the pins on
+ the PCL Logic board are very simple, each pin is brought out to a connector
+ label with the PIC32MX460F512L pin number.
+
+ On board logic only manages power, crystal, and USB signals.
+
+ LEFT SIDE, TOP-TO-BOTTOM (if pin 1 is in upper left)
+ ---- ---------------------------- -------------------------------------------------------
+ PIN NAME Board Connection (omitting pins brought to J3 and J4)
+ ---- ---------------------------- -------------------------------------------------------
+ 1 RG15
+ 2 Vdd
+ 3 PMD5/RE5
+ 4 PMD6/RE6 RE6 User switch
+ 5 PMD7/RE7 RE7 Program switch
+ 6 T2CK/RC1
+ 7 T3CK/RC2
+ 8 T4CK/RC3
+ 9 T5CK/SDI1/RC4
+ 10 SCK2/PMA5/CN8/RG6
+ 11 SDI2/PMA4/CN9/RG7
+ 12 SDO2/PMA3/CN10/RG8
+ 13 MCLR
+ 14 SS2/PMA2/CN11/RG9
+ 15 Vss
+ 16 Vdd
+ 17 TMS/RA0
+ 18 INT1/RE8
+ 19 INT2/RE9
+ 20 AN5/C1IN+/VBUSON/CN7/RB5
+ 21 AN4/C1IN-/CN6/RB4
+ 22 AN3/C2IN+/CN5/RB3
+ 23 AN2/C2IN-/CN4/RB2 RB1 ICSP/Debug/IO (J5) pin 6 (labeled B2)
+ 24 PGEC1/AN1/CN3/RB1 RB1 ICSP/Debug/IO (J5) pin 7 (labeled B1)
+ 25 PGED1/AN0/CN2/RB0 RB0 ICSP/Debug/IO (J5) pin 8 (labeled B0)
+
+ BOTTOM SIDE, LEFT-TO-RIGHT (if pin 1 is in upper left)
+ ---- ---------------------------- -------------------------------------------------------
+ PIN NAME Board Connection (omitting pins brought to J3 and J4)
+ ---- ---------------------------- -------------------------------------------------------
+ 26 PGEC2/AN6/OCFA/RB6 PGC ICSP/Debug/IO (J5) pin 5 (labled PGC)
+ 27 PGED2/AN7/RB7 PGD ICSP/Debug/IO (J5) pin 4 (labled PGD)
+ 28 VREF-/CVREF-/PMA7/RA9
+ 29 VREF+/CVREF+/PMA6/RA10
+ 30 AVdd
+ 31 AVss
+ 32 AN8/C1OUT/RB8
+ 33 AN9/C2OUT/RB9
+ 34 AN10/CVREFOUT/PMA13/RB10
+ 35 AN11/PMA12/RB11
+ 36 Vss
+ 37 Vdd
+ 38 TCK/RA1
+ 39 U2RTS/RF13
+ 40 U2CTS/RF12
+ 41 AN12/PMA11/RB12
+ 42 AN13/PMA10/RB13
+ 43 AN14/PMALH/PMA1/RB14
+ 44 AN15/OCFB/PMALL/PMA0/CN12/RB15
+ 45 Vss
+ 46 Vdd
+ 47 U1CTS/CN20/RD14
+ 48 U1RTS/CN21/RD15
+ 49 U2RX/PMA9/CN17/RF4
+ 50 U2TX/PMA8/CN18/RF5
+
+ RIGHT SIDE, TOP-TO-BOTTOM (if pin 1 is in upper left)
+ ---- ---------------------------- -------------------------------------------------------
+ PIN NAME Board Connection (omitting pins brought to J3 and J4)
+ ---- ---------------------------- -------------------------------------------------------
+ 75 Vss
+ 74 SOSCO/T1CK/CN0/RC14
+ 73 SOSCI/CN1/RC13
+ 72 SDO1/OC1/INT0/RD0
+ 71 IC4/PMCS1/PMA14/RD11
+ 70 SCK1/IC3/PMCS2/PMA15/RD10
+ 69 SS1/IC2/RD9
+ 68 RTCC/IC1/RD8
+ 67 SDA1/INT4/RA15
+ 66 SCL1/INT3/RA14
+ 65 Vss
+ 64 OSC2/CLKO/RC15
+ 63 OSC1/CLKI/RC12
+ 62 Vdd
+ 61 TDO/RA5
+ 60 TDI/RA4
+ 59 SDA2/RA3
+ 58 SCL2/RA2
+ 57 D+/RG2 D+ Alternate USB (J6) pin 3 (labeled D+)
+ USB host (JP1) pin
+ USB Function (Mini B)
+ 56 D-/RG3 D- Alternate USB (J6) pin 2 (labeled D-)
+ USB host (JP1) pin
+ USB Function (Mini B)
+ 55 VUSB
+ 54 VBUS VBUS Alternate USB (J6) pin 1 (labeled VBUS)
+ USB host (JP1) pin
+ USB Function (Mini B)
+ Jumper JP1 for USB host functionality
+ 53 U1TX/RF8
+ 52 U1RX/RF2
+ 51 USBID/RF3 USBID Alternate USB (J6) pin 4 (labeled ID)
+ USB Function (Mini B)
+ Also USB LED
+
+ TOP SIDE, LEFT-TO-RIGHT (if pin 1 is in upper left)
+ ---- ---------------------------- -------------------------------------------------------
+ PIN NAME Board Connection (omitting pins brought to J3 and J4)
+ ---- ---------------------------- -------------------------------------------------------
+ 100 PMD4/RE4
+ 99 PMD3/RE3
+ 98 PMD2/RE2 RE2 LED1
+ 97 TRD0/RG13
+ 96 TRD1/RG12
+ 95 TRD2/RG14
+ 94 PMD1/RE1 RE1 LED2
+ 93 PMD0/RE0 RE0 LED3
+ 92 TRD3/RA7
+ 91 TRCLK/RA6
+ 90 PMD8/RG0
+ 89 PMD9/RG1
+ 88 PMD10/RF1
+ 87 PMD11/RF0
+ 86 ENVREG
+ 85 Vcap/Vddcore
+ 84 PMD15/CN16/RD7
+ 83 PMD14/CN15/RD6
+ 82 PMRD/CN14/RD5
+ 81 OC5/PMWR/CN13/RD4
+ 80 PMD13/CN19/RD13
+ 79 IC5/PMD12/RD12
+ 78 OC4/RD3
+ 77 OC3/RD2
+ 76 OC2/RD1
+
+MAX3232 Connection
+==================
+
+ I use a tiny, MAX3232 board that I got from the eBay made by NKC
+ Electronics (http://www.nkcelectronics.com/). As of this writing, it
+ is also available here: http://www.nkcelectronics.com/rs232-to-ttl-3v--55v-convert232356.html
+
+ CTS -- Not connected
+ RTS -- Not connected
+ TX -- J4 pin 31: U1TX/RF8
+ RX -- J4 pin 30: U1RX/RF2
+ GND -- J4 pin 40: GND
+ Vcc -- J4 pin 39: 5V
+
+Toolchains
+==========
+
+ I am using the free, LITE version of the PIC32MX toolchain available
+ for download from the microchip.com web site. I am using the Windows
+ version. The MicroChip toolchain is the only toolchaing currently
+ supported in these configurations, but it should be a simple matter to
+ adapt to other toolchains by modifying the Make.defs file include in
+ each configuration.
+
+ Toolchain Options:
+
+ CONFIG_PIC32MX_MICROCHIPW - MicroChip full toolchain for Windows
+ CONFIG_PIC32MX_MICROCHIPL - MicroChip full toolchain for Linux
+ CONFIG_PIC32MX_MICROCHIPW_LITE - MicroChip LITE toolchain for Windows
+ CONFIG_PIC32MX_MICROCHIPL_LITE - MicroChip LITE toolchain for Linux
+
+ Windows Native Toolchains
+
+ NOTE: There are several limitations to using a Windows based toolchain in a
+ Cygwin environment. The three biggest are:
+
+ 1. The Windows toolchain cannot follow Cygwin paths. Path conversions are
+ performed automatically in the Cygwin makefiles using the 'cygpath' utility
+ but you might easily find some new path problems. If so, check out 'cygpath -w'
+
+ 2. Windows toolchains cannot follow Cygwin symbolic links. Many symbolic links
+ are used in Nuttx (e.g., include/arch). The make system works around these
+ problems for the Windows tools by copying directories instead of linking them.
+ But this can also cause some confusion for you: For example, you may edit
+ a file in a "linked" directory and find that your changes had no effect.
+ That is because you are building the copy of the file in the "fake" symbolic
+ directory. If you use a Windows toolchain, you should get in the habit of
+ making like this:
+
+ make clean_context all
+
+ An alias in your .bashrc file might make that less painful.
+
+ 3. Dependencies are not made when using Windows versions of the GCC. This is
+ because the dependencies are generated using Windows pathes which do not
+ work with the Cygwin make.
+
+ Support has been added for making dependencies with the windows-native toolchains.
+ That support can be enabled by modifying your Make.defs file as follows:
+
+ - MKDEP = $(TOPDIR)/tools/mknulldeps.sh
+ + MKDEP = $(TOPDIR)/tools/mkdeps.sh --winpaths "$(TOPDIR)"
+
+ If you have problems with the dependency build (for example, if you are not
+ building on C:), then you may need to modify tools/mkdeps.sh
+
+Loading NuttX with PICkit2
+==========================
+
+ NOTE: You need a PICKit3 if you plan to use the MPLAB debugger! The PICKit2
+ can, however, still be used to load programs. Instructions for the PICKit3
+ are similar.
+
+ Intel Hex Forma Files:
+ ----------------------
+
+ When NuttX is built it will produce two files in the top-level NuttX
+ directory:
+
+ 1) nuttx - This is an ELF file, and
+ 2) nuttx.hex - This is an Intel Hex format file. This is controlled by
+ the setting CONFIG_INTELHEX_BINARY in the .config file.
+
+ The PICkit tool wants an Intel Hex format file to burn into FLASH. However,
+ there is a problem with the generated nutt.hex: The tool expects the nuttx.hex
+ file to contain physical addresses. But the nuttx.hex file generated from the
+ top-level make will have address in the KSEG0 and KSEG1 regions.
+
+ tools/mkpichex:
+ ---------------
+
+ There is a simple tool in the configs/ubw32/tools directory
+ that can be used to solve both issues with the nuttx.hex file. But,
+ first, you must build the the tools:
+
+ cd configs/ubw32/tools
+ make
+
+ Now you will have an excecutable file call mkpichex (or mkpichex.exe on
+ Cygwin). This program will take the nutt.hex file as an input, it will
+ convert all of the KSEG0 and KSEG1 addresses to physical address, and
+ it will write the modified file, replacing the original nuttx.hex.
+
+ To use this file, you need to do the following things:
+
+ . ./setenv.sh # Source setenv.sh. Among other this, this script
+ # will add configs/ubw32/tools to your
+ # PATH variable
+ make # Build nuttx and nuttx.hex
+ mkpichex $PWD # Convert addresses in nuttx.hex. $PWD is the path
+ # to the top-level build directory. It is the only
+ # required input to mkpichex.
+
+LEDs
+====
+
+ ----- ----- -------------------------------------------------------------
+ LABEL COLOR CONTROL
+ ----- ----- -------------------------------------------------------------
+ USB Green RF3. This could be used by software if USB is not used.
+ Otherwise, RF3 is used as the USBID signal.
+ LED1 While RE2, Pulled up. Low value illuminates
+ LED2 Red RE1, Pulled up. Low value illuminates
+ LED3 Yellow RE0, Pulled up. Low value illuminates
+ PWR Blue Illuminated when 5V is present, not controlled by software
+
+ If CONFIG_ARCH_LEDS is defined, then NuttX will control these LEDs as follows:
+
+ ON OFF
+ ------------------------- ---- ---- ---- ---- ---- ----
+ LED1 LED2 LED3 LED1 LED2 LED3
+ ------------------------- ---- ---- ---- ---- ---- ----
+ LED_STARTED 0 OFF OFF OFF --- --- ---
+ LED_HEAPALLOCATE 1 ON OFF N/C --- --- ---
+ LED_IRQSENABLED 2 OFF ON N/C --- --- ---
+ LED_STACKCREATED 3 ON ON N/C --- --- ---
+ LED_INIRQ 4 N/C N/C ON N/C N/C OFF
+ LED_SIGNAL 4 N/C N/C ON N/C N/C OFF
+ LED_ASSERTION 4 N/C N/C ON N/C N/C OFF
+ LED_PANIC 5 ON N/C N/C OFF N/C N/C
+
+PIC32MX Configuration Options
+=============================
+
+ General Architecture Settings:
+
+ CONFIG_ARCH - Identifies the arch/ subdirectory. This should
+ be set to:
+
+ CONFIG_ARCH=mips
+
+ CONFIG_ARCH_family - For use in C code:
+
+ CONFIG_ARCH_MIPS=y
+
+ CONFIG_ARCH_architecture - For use in C code:
+
+ CONFIG_ARCH_MIPS32=y
+
+ CONFIG_ARCH_CHIP - Identifies the arch/*/chip subdirectory
+
+ CONFIG_ARCH_CHIP=pic32mx
+
+ CONFIG_ARCH_CHIP_name - For use in C code to identify the exact
+ chip:
+
+ CONFIG_ARCH_CHIP_PIC32MX460F512L=y
+
+ CONFIG_ARCH_BOARD - Identifies the configs subdirectory and
+ hence, the board that supports the particular chip or SoC.
+
+ CONFIG_ARCH_BOARD=ubw32
+
+ CONFIG_ARCH_BOARD_name - For use in C code
+
+ CONFIG_ARCH_BOARD_UBW32=y
+
+ CONFIG_ARCH_LOOPSPERMSEC - Must be calibrated for correct operation
+ of delay loops
+
+ CONFIG_ENDIAN_BIG - define if big endian (default is little
+ endian)
+
+ CONFIG_DRAM_SIZE - Describes the installed DRAM (CPU SRAM in this case):
+
+ CONFIG_DRAM_SIZE=(32*1024) (32Kb)
+
+ There is an additional 32Kb of SRAM in AHB SRAM banks 0 and 1.
+
+ CONFIG_DRAM_START - The start address of installed DRAM
+
+ CONFIG_DRAM_START=0x10000000
+
+ CONFIG_DRAM_END - Last address+1 of installed RAM
+
+ CONFIG_DRAM_END=(CONFIG_DRAM_START+CONFIG_DRAM_SIZE)
+
+ CONFIG_ARCH_IRQPRIO - The PIC32MXx supports interrupt prioritization
+
+ CONFIG_ARCH_IRQPRIO=y
+
+ CONFIG_ARCH_LEDS - Use LEDs to show state. Unique to boards that
+ have LEDs
+
+ CONFIG_ARCH_INTERRUPTSTACK - This architecture supports an interrupt
+ stack. If defined, this symbol is the size of the interrupt
+ stack in bytes. If not defined, the user task stacks will be
+ used during interrupt handling.
+
+ CONFIG_ARCH_STACKDUMP - Do stack dumps after assertions
+
+ CONFIG_ARCH_LEDS - Use LEDs to show state. Unique to board architecture.
+
+ CONFIG_ARCH_CALIBRATION - Enables some build in instrumentation that
+ cause a 100 second delay during boot-up. This 100 second delay
+ serves no purpose other than it allows you to calibratre
+ CONFIG_ARCH_LOOPSPERMSEC. You simply use a stop watch to measure
+ the 100 second delay then adjust CONFIG_ARCH_LOOPSPERMSEC until
+ the delay actually is 100 seconds.
+
+ PIC32MX Configuration
+
+ CONFIG_PIC32MX_MVEC - Select muli- vs. single-vectored interrupts
+
+ Individual subsystems can be enabled:
+
+ CONFIG_PIC32MX_WDT - Watchdog timer
+ CONFIG_PIC32MX_T2 - Timer 2 (Timer 1 is the system time and always enabled)
+ CONFIG_PIC32MX_T3 - Timer 3
+ CONFIG_PIC32MX_T4 - Timer 4
+ CONFIG_PIC32MX_T5 - Timer 5
+ CONFIG_PIC32MX_IC1 - Input Capture 1
+ CONFIG_PIC32MX_IC2 - Input Capture 2
+ CONFIG_PIC32MX_IC3 - Input Capture 3
+ CONFIG_PIC32MX_IC4 - Input Capture 4
+ CONFIG_PIC32MX_IC5 - Input Capture 5
+ CONFIG_PIC32MX_OC1 - Output Compare 1
+ CONFIG_PIC32MX_OC2 - Output Compare 2
+ CONFIG_PIC32MX_OC3 - Output Compare 3
+ CONFIG_PIC32MX_OC4 - Output Compare 4
+ CONFIG_PIC32MX_OC5 - Output Compare 5
+ CONFIG_PIC32MX_I2C1 - I2C 1
+ CONFIG_PIC32MX_I2C2 - I2C 2
+ CONFIG_PIC32MX_SPI1 - SPI 1
+ CONFIG_PIC32MX_SPI2 - SPI 2
+ CONFIG_PIC32MX_UART1 - UART 1
+ CONFIG_PIC32MX_UART2 - UART 2
+ CONFIG_PIC32MX_ADC - ADC 1
+ CONFIG_PIC32MX_PMP - Parallel Master Port
+ CONFIG_PIC32MX_CM1 - Comparator 1
+ CONFIG_PIC32MX_CM2 - Comparator 2
+ CONFIG_PIC32MX_RTCC - Real-Time Clock and Calendar
+ CONFIG_PIC32MX_DMA - DMA
+ CONFIG_PIC32MX_FLASH - FLASH
+ CONFIG_PIC32MX_USBDEV - USB device
+ CONFIG_PIC32MX_USBHOST - USB host
+
+ PIC32MX Configuration Settings
+ DEVCFG0:
+ CONFIG_PIC32MX_DEBUGGER - Background Debugger Enable. Default 3 (disabled). The
+ value 2 enables.
+ CONFIG_PIC32MX_ICESEL - In-Circuit Emulator/Debugger Communication Channel Select
+ Default 1 (PG2)
+ CONFIG_PIC32MX_PROGFLASHWP - Program FLASH write protect. Default 0xff (disabled)
+ CONFIG_PIC32MX_BOOTFLASHWP - Default 1 (disabled)
+ CONFIG_PIC32MX_CODEWP - Default 1 (disabled)
+ DEVCFG1: (All settings determined by selections in board.h)
+ DEVCFG2: (All settings determined by selections in board.h)
+ DEVCFG3:
+ CONFIG_PIC32MX_USBIDO - USB USBID Selection. Default 1 if USB enabled
+ (USBID pin is controlled by the USB module), but 0 (GPIO) otherwise.
+ CONFIG_PIC32MX_VBUSIO - USB VBUSON Selection (Default 1 if USB enabled
+ (VBUSON pin is controlled by the USB module, but 0 (GPIO) otherwise.
+ CONFIG_PIC32MX_WDENABLE - Enabled watchdog on power up. Default 0 (watchdog
+ can be enabled later by software).
+
+ The priority of interrupts may be specified. The value ranage of
+ priority is 4-31. The default (16) will be used if these any of these
+ are undefined.
+
+ CONFIG_PIC32MX_CTPRIO - Core Timer Interrupt
+ CONFIG_PIC32MX_CS0PRIO - Core Software Interrupt 0
+ CONFIG_PIC32MX_CS1PRIO - Core Software Interrupt 1
+ CONFIG_PIC32MX_INT0PRIO - External Interrupt 0
+ CONFIG_PIC32MX_INT1PRIO - External Interrupt 1
+ CONFIG_PIC32MX_INT2PRIO - External Interrupt 2
+ CONFIG_PIC32MX_INT3PRIO - External Interrupt 3
+ CONFIG_PIC32MX_INT4PRIO - External Interrupt 4
+ CONFIG_PIC32MX_FSCMPRIO - Fail-Safe Clock Monitor
+ CONFIG_PIC32MX_T1PRIO - Timer 1 (System timer) priority
+ CONFIG_PIC32MX_T2PRIO - Timer 2 priority
+ CONFIG_PIC32MX_T3PRIO - Timer 3 priority
+ CONFIG_PIC32MX_T4PRIO - Timer 4 priority
+ CONFIG_PIC32MX_T5PRIO - Timer 5 priority
+ CONFIG_PIC32MX_IC1PRIO - Input Capture 1
+ CONFIG_PIC32MX_IC2PRIO - Input Capture 2
+ CONFIG_PIC32MX_IC3PRIO - Input Capture 3
+ CONFIG_PIC32MX_IC4PRIO - Input Capture 4
+ CONFIG_PIC32MX_IC5PRIO - Input Capture 5
+ CONFIG_PIC32MX_OC1PRIO - Output Compare 1
+ CONFIG_PIC32MX_OC2PRIO - Output Compare 2
+ CONFIG_PIC32MX_OC3PRIO - Output Compare 3
+ CONFIG_PIC32MX_OC4PRIO - Output Compare 4
+ CONFIG_PIC32MX_OC5PRIO - Output Compare 5
+ CONFIG_PIC32MX_I2C1PRIO - I2C 1
+ CONFIG_PIC32MX_I2C2PRIO - I2C 2
+ CONFIG_PIC32MX_SPI1PRIO - SPI 1
+ CONFIG_PIC32MX_SPI2PRIO - SPI 2
+ CONFIG_PIC32MX_UART1PRIO - UART 1
+ CONFIG_PIC32MX_UART2PRIO - UART 2
+ CONFIG_PIC32MX_CN - Input Change Interrupt
+ CONFIG_PIC32MX_ADCPRIO - ADC1 Convert Done
+ CONFIG_PIC32MX_PMPPRIO - Parallel Master Port
+ CONFIG_PIC32MX_CM1PRIO - Comparator 1
+ CONFIG_PIC32MX_CM2PRIO - Comparator 2
+ CONFIG_PIC32MX_FSCMPRIO - Fail-Safe Clock Monitor
+ CONFIG_PIC32MX_RTCCPRIO - Real-Time Clock and Calendar
+ CONFIG_PIC32MX_DMA0PRIO - DMA Channel 0
+ CONFIG_PIC32MX_DMA1PRIO - DMA Channel 1
+ CONFIG_PIC32MX_DMA2PRIO - DMA Channel 2
+ CONFIG_PIC32MX_DMA3PRIO - DMA Channel 3
+ CONFIG_PIC32MX_FCEPRIO - Flash Control Event
+ CONFIG_PIC32MX_USBPRIO - USB
+
+ PIC32MXx specific device driver settings
+
+ CONFIG_UARTn_SERIAL_CONSOLE - selects the UARTn for the
+ console and ttys0 (default is the UART0).
+ CONFIG_UARTn_RXBUFSIZE - Characters are buffered as received.
+ This specific the size of the receive buffer
+ CONFIG_UARTn_TXBUFSIZE - Characters are buffered before
+ being sent. This specific the size of the transmit buffer
+ CONFIG_UARTn_BAUD - The configure BAUD of the UART. Must be
+ CONFIG_UARTn_BITS - The number of bits. Must be either 7 or 8.
+ CONFIG_UARTn_PARTIY - 0=no parity, 1=odd parity, 2=even parity
+ CONFIG_UARTn_2STOP - Two stop bits
+
+ PIC32MXx USB Device Configuration
+
+ PIC32MXx USB Host Configuration (the PIC32MX does not support USB Host)
+
+Configurations
+==============
+
+Each PIC32MX configuration is maintained in a sudirectory and can be
+selected as follow:
+
+ cd tools
+ ./configure.sh ubw32/<subdir>
+ cd -
+ . ./setenv.sh
+
+Where <subdir> is one of the following:
+
+ ostest:
+ This configuration directory, performs a simple OS test using
+ apps/examples/ostest.