Files
poky/meta/conf/machine/include/mips
Jon Mason 1d381f21f5 conf/machine: move tune files to architecture directories
Move all of the tune files found in conf/machine/include into their
respective architecture directories in that same location.  All
references to these will need to be updated.  So, change the relevant
ones for this tree in this commit as well.

For the ARM tunes, nest them one further into armv8a, armv8m, etc. and
rename some to make them uniform with the rest of the tunes.

(From OE-Core rev: b6f15209bcfff953cce69da97a93f9ddff141ced)

Signed-off-by: Jon Mason <jdmason@kudzu.us>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-08-18 17:01:06 +01:00
..
2021-08-02 15:44:10 +01:00
2021-08-02 15:44:10 +01:00

2016/09/30 - Zubair Lutfullah Kakakhel Zubair.Kakakhel@imgtec.com

  • Add Release 6 support

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

Release 6 of the ISA is a major revision and doesn't build up on previous releases of the ISA.

For more details about tuples, check https://wiki.debian.org/Multiarch/Tuples

TUNE_ARCH, the GNU canonical arch, is defined as:

"mips${MIPSPKGSFX_32R6}${MIPSPKGSFX_64R6}${MIPSPKGSFX_BYTE}${MIPSPKGSFX_R6}${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_ENDIAN2 - For bigendian hardware this is "eb", 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.

MIPSPKGSFX_R6 - This is used to specify the presence of release 6. "r6" is added in the tuple for release 6 of the isa.

MIPSPKGSFX_64R6 - This is used to specify "isa" in the tuple. Release 6 onwards we use "mipsisa64" instead of just "mips64".

MIPSPKGSFX_32R6 - This is used to specify "isa32" in the tuple. Release 6 onwards we use "mipsisa32" instead of just "mips".