[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [PATCH] mips/loongson: unify compiler flags and load location for Loongson 2E and 2F



On Sat, Aug 20, 2011 at 9:05 PM, Andreas Barth <aba@not.so.argh.org> wrote:
> This patch is the first one in a series to unify the kernels for the different
> loongson machines. More patches will follow after more testing.
>
> Signed-off-by: Andreas Barth <aba@not.so.argh.org>
> ---
>  arch/mips/Kconfig           |    4 ++--
>  arch/mips/loongson/Platform |    9 +++------
>  2 files changed, 5 insertions(+), 8 deletions(-)
>
> diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
> index b122adc..5d3e753 100644
> --- a/arch/mips/Kconfig
> +++ b/arch/mips/Kconfig
> @@ -1481,7 +1481,7 @@ config CPU_XLR
>          Netlogic Microsystems XLR/XLS processors.
>  endchoice
>
> -if CPU_LOONGSON2F
> +if CPU_LOONGSON2
>  config CPU_NOP_WORKAROUNDS
>        bool
>
> @@ -1506,7 +1506,7 @@ config CPU_LOONGSON2F_WORKAROUNDS
>          systems.
>
>          If unsure, please say Y.
> -endif # CPU_LOONGSON2F
> +endif # CPU_LOONGSON2
>
>  config SYS_SUPPORTS_ZBOOT
>        bool

OK, I understand this hunk. This just allows you to enable the 2F
workarounds even if you're building for Loongson 2E, which simplifies
life for distributions. Works for me.

> diff --git a/arch/mips/loongson/Platform b/arch/mips/loongson/Platform
> index 29692e5..d6471a5 100644
> --- a/arch/mips/loongson/Platform
> +++ b/arch/mips/loongson/Platform
> @@ -4,10 +4,8 @@
>
>  # Only gcc >= 4.4 have Loongson specific support
>  cflags-$(CONFIG_CPU_LOONGSON2) += -Wa,--trap
> -cflags-$(CONFIG_CPU_LOONGSON2E) += \
> -       $(call cc-option,-march=loongson2e,-march=r4600)
> -cflags-$(CONFIG_CPU_LOONGSON2F) += \
> -       $(call cc-option,-march=loongson2f,-march=r4600)
> +cflags-$(CONFIG_CPU_LOONGSON2) += \
> +       $(call cc-option,-march=r4600)
>  # Enable the workarounds for Loongson2f
>  ifdef CONFIG_CPU_LOONGSON2F_WORKAROUNDS
>   ifeq ($(call as-option,-Wa$(comma)-mfix-loongson2f-nop,),)

... but I don't understand this one.

So, in the name of simplification, let's just remove the ability to
compile with -march=loongson2{e,f}? What?

Is there some case where a -march=loongson2e kernel won't work on a 2F
system? If not, why not just build for Loongson2E for
ease-of-distribution purposes? And if so, just add a generic
CONFIG_CPU_LOONGSON2 case without removing the 2F case.

The commit message should explain this stuff.

Matt


Reply to: