US7032EVB1

Tags: arch:renesas experimental

Warning

The port is basically complete and many examples run correctly. However, there are remaining instabilities that make the port un-usable. The nature of these is not understood; the behavior is that certain SH-1 instructions stop working as advertised. This could be a silicon problem, some pipeline issue that is not handled properly by the gcc 3.4.5 toolchain (which has very limited SH-1 support to begin with), or perhaps with the CMON debugger. At any rate, I have exhausted all of the energy that I am willing to put into this cool old processor for the time being.

Toolchain

A GNU GCC-based toolchain is assumed. The PATH environment variable should be modified to point to the correct path to the SH toolchain (if different from the default).

If you have no SH toolchain, one can be downloaded from the NuttX Bitbucket download site (https://bitbucket.org/nuttx/buildroot/downloads/).

  1. You must have already configured NuttX in <some-dir>nuttx.

$ tools/configure.sh us7032evb1:<sub-dir>
  1. Download the latest buildroot package into <some-dir>

  2. unpack

  3. $ cd <some-dir>/buildroot
    $ cp boards/sh-defconfig .config
    $ make oldconfig
    $ make
    
  4. Make sure that the PATH variable includes the path to the newly built binaries.

shterm

The USB7032EVB1 supports CMON in PROM. CMON requires special serial interactions in order to upload and download program files. Therefore, a standard terminal emulation program (such as minicom) cannot be used.

The shterm subdirectory contains a small terminal emulation program that supports these special interactions for file transfers.

Configurations

Each SH-1 configuration is maintained in a sub-directory and can be selected as follows:

$ tools/configure.sh us7032evb1:<subdir>

Where <subdir> is one of the configuration sub-directories described in the following paragraph.

ostest

This configuration directory performs a simple OS test using examples/ostest in the nuttx-apps repository.

nsh

Configures the NuttShell (nsh) located at examples/nsh. The Configuration enables only the serial NSH interfaces.

Note

At present, the NSH example does not run.

Configuration Options

Each unused chip block should be disabled to save space:

  • CONFIG_SH1_DMAC0

  • CONFIG_SH1_DMAC1

  • CONFIG_SH1_DMAC2

  • CONFIG_SH1_DMAC3

  • CONFIG_SH1_ITU1

  • CONFIG_SH1_ITU2

  • CONFIG_SH1_ITU3

  • CONFIG_SH1_ITU4

  • CONFIG_SH1_SCI0

  • CONFIG_SH1_SCI1

  • CONFIG_SH1_PCU

  • CONFIG_SH1_AD

  • CONFIG_SH1_WDT

  • CONFIG_SH1_CMI

SH1 specific device driver settings:

  • CONFIG_SCIn_SERIAL_CONSOLE: Selects the SCIn for the console and ttys0 (default is the UART0).

  • CONFIG_SCIn_RXBUFSIZE: Characters are buffered as received. This specific the size of the receive buffer

  • CONFIG_SCIn_TXBUFSIZE: Characters are buffered before being sent. This specific the size of the transmit buffer

  • CONFIG_SCIn_BAUD: The configure BAUD of the UART. Must be

  • CONFIG_SCIn_BITS: The number of bits. Must be either 7 or 8.

  • CONFIG_SCIn_PARTIY: 0=no parity, 1=odd parity, 2=even parity, 3=mark 1, 4=space 0

  • CONFIG_SCIn_2STOP: Two stop bits