[U-Boot] [PATCH] nds32: Enable FPU if the version of CPU supported
uboot at andestech.com
uboot at andestech.com
Thu Jul 18 09:16:55 CEST 2013
Hi Kuan-Yu Kuo,
2013/7/18 Kuan-Yu Kuo <ken.kuoky at gmail.com>:
> + /*
> + * enable_fpu:
> + * Some of Andes CPU version support FPU coprocessor, if so,
> + * we should enable it.
> + */
> +enable_fpu:
> + mfsr $r0, $CPU_VER /* enable FPU if it exists */
> + srli $r0, $r0, 3
> + andi $r0, $r0, 1
> + beqz $r0, 1f /* skip if no COP */
> + mfsr $r0, $FUCOP_EXIST
> + srli $r0, $r0, 31
> + beqz $r0, 1f /* skip if no FPU */
> + mfsr $r0, $FUCOP_CTL
> + ori $r0, $r0, 1
> + mtsr $r0, $FUCOP_CTL
There are two kinds of toolchain in Andes architecture, one is FPU supported and the other is not, for the latter one, there is no need to enable FPU even if the processor supports it.
This code snippet only useful for the toolchain that will generate FPU instructions, so add compile option to determine Andes predefined macros would be better.
For example:
#if defined(NDS32_EXT_FPU_DP) || defined(NDS32_EXT_FPU_SP)
Andes Technology Corporation
More information about the U-Boot
mailing list