Files
poky/meta/conf/machine/include/mips
André Draszik 1ebec491aa tune-mips-24k: add QEMU_EXTRAOPTIONS for DSP and MIPS16e cores
The core emulated by default by qemu-mips(el) just crashes with
illegal instruction when encountering DSP and/or MIPS16e
instructions - we have to specify a CPU that supports the extra
instructions.

This is an issue when generating a rootfs and e.g. running some
of the package postinstall scriptlets.

The patch to qemu to add 24KEc as a CPU has been accepted
upstream, so let's use that CPU here as well as needed.

(From OE-Core rev: 8af17075f56241dd8f3ea86c609adbd73f248218)

Signed-off-by: André Draszik <git@andred.net>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-08-01 11:47:11 +01:00
..

2012/03/30 - Mark Hatle mark.hatle@windriver.com

  • Initial Version

MIPS currently defines 12 ABIs. Combinations of: *) Big/Little Endian *) Hardware/Software Floating Point *) o32, n32, n64 ABI

TUNE_ARCH, the GNU canonical arch, is defined as:

mips${MIPSPKGSFX_BYTE}${MIPSPKGSFX_ENDIAN}

The package arch is defined in such a way to generated a standard naming scheme. The scheme is: [-nf][-n32]

TUNE_PKGARCH is defined as:

${MIPSPKGSFX_VARIANT_tune-${DEFAULTTUNE}}${MIPSPKGSFX_FPU}${MIPSPKGSFX_ABI}

The following is a list of MIPS specific variables:

MIPSPKGSFX_BYTE - This is defined as either blank and "64" for MIPS64 CPUs.

MIPSPKGSFX_ENDIAN - For bigendian hardware this is blank, otherwise it's defined as "el".

MIPSPKGSFX_VARIANT_tune- - In the default tunings it is set to the same value as TUNE_ARCH. In custom, optimized tunings, the value should be modified to more precisely describe the tuning.

MIPSPKGSFX_FPU - The value is set to "" or "-nf", where "-nf" indicates that the tune is using a non-floating point ABI.

MIPSPKGSFX_ABI - This is used to specify an alternative ABI when the previous values are not enough to distringuish the package. "-n32" is added when building for N32 ABI.