Options — Configuring the MIPS32 Variant HAL Package


The MIPS32 variant HAL is included in all ecos.db entries for MIPS32-based targets, so the package will be loaded automatically when creating a configuration. It should never be necessary to load the package explicitly or to unload it.

The MIPS32 variant HAL contains a number of configuration points. Few of these should be altered by the user, they are mainly present for the platform HAL to select different features.

This defines the CPU core on the target hardware. It is usually set by the platform HAL and may change the configuration of this HAL and of any changes it makes to the architecture HAL.
The MIPS32 core can use either a big or little endian mode. Platforms with a fixed endianness should set this to Little or Big as appropriate. Bi-endian platforms may allow this to be set by the user, or implicitly by supplying a platform configuration option to control endianness.

Compiler Flags

It is normally the responsibility of the platform HAL to define the default compiler and linker flags for all packages, although it is possible to override these on a per-package basis. Most of the flags used are the same as for other architectures supported by eCos. The endianness flags, -EL and -EB are controlled here by the CYGHWR_HAL_MIPS_MIPS32_ENDIAN option. The selection of the instruction set for eCos: MIPS32 or microMIPS, is also selected here based on various architecture options.