walnux/Documentation/platforms/misco/lm32/boards/misoc/index.rst
Matteo Golin 4a5b0f8e2d misco/lm32/boards/misoc: Migrate README.txt to RST
Migrated documentation from README.txt to RST format as part of #11077.

Signed-off-by: Matteo Golin <matteo.golin@gmail.com>
2025-05-08 03:04:04 +02:00

81 lines
2.6 KiB
ReStructuredText

=====
Misoc
=====
This README applies to a port to NuttX running on a Qemu LM32 system. You can
find the Qemu setup at https://bitbucket.org/key2/qemu
This initial release supports two UARTs, but does not have a system timer or
other peripherals. More to come.
Buildroot Toolchain
===================
A GNU GCC-based toolchain is assumed. The ``PATH`` environment variable should
be modified to point to the correct path to the LM32 GCC toolchain (if different
from the default in your ``PATH`` variable).
If you have no LM32 toolchain, one can be cloned from the NuttX Bitbucket GIT
repository (https://bitbucket.org/nuttx/buildroot). This GNU toolchain builds
and executes in the Linux or Cygwin environment.
1. You must have already configured NuttX in ``<some-dir>/nuttx``.
.. code:: console
$ tools/configure.sh misoc:<sub-dir>
$ make oldconfig context
2. Clone the latest buildroot package into <some-dir>/buildroot
.. code:: console
$ git clone git@bitbucket.org:nuttx/buildroot.git <some-dir>/buildroot
or
.. code:: console
$ git clone https://patacongo@bitbucket.org/nuttx/buildroot.git <some-dir>/buildroot
3.
.. code:: console
$ cd <some-dir>/buildroot
$ cp lm32-elf-defconfig-6.1.0 .config
$ make oldconfig
$ make
4. By default, the tools will be at the absolute path: ``<some-dir>/buildroot/build_lm32/staging_dir/bin``
Or the NuttX relative path: ``../buildroot/build_lm32/staging_dir/bin``
Make sure that the PATH variable includes the path to the newly built binaries.
See the file ``boards/README.txt`` in the buildroot source tree. That has more
detailed PLUS some special instructions that you will need to follow if you are
building a LM32 toolchain for Cygwin under Windows. Also included in that
README file is a FAQ of frequent build issues that their work-arounds.
In order to use the buildroot toolchain, you also must set the following
in your ``.config`` file: ``CONFIG_LM3S_TOOLCHAIN_BUILDROOT=y``
``boards/misoc/lm32/misoc/include/generated``
=============================================
In order to build this configuration, you must provide the
``boards/misoc/lm32/misoc/include/generated`` directory. It contains the generated
Misoc files and may be a symbolic link. The base configuration will NOT build
without this directory!
There is a sample generated directory at
``boards/misoc/include/generated-sample``. If you want to do a test build
without generating the architecture, then you can simply link this sample
directory like:
.. code:: console
$ ln -s boards/misoc/lm32/misoc/include/generated-sample boards/misoc/lm32/misoc/include/generated
That should permit a test build.