[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20221208191626.vqez4aofjndnj4ih@pali>
Date: Thu, 8 Dec 2022 20:16:26 +0100
From: Pali Rohár <pali@...nel.org>
To: Christophe Leroy <christophe.leroy@...roup.eu>
Cc: Michael Ellerman <mpe@...erman.id.au>,
Joel Stanley <joel@....id.au>,
Benjamin Herrenschmidt <benh@...nel.crashing.org>,
Paul Mackerras <paulus@...ba.org>,
"linuxppc-dev@...ts.ozlabs.org" <linuxppc-dev@...ts.ozlabs.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH v3] powerpc/boot: Don't always pass -mcpu=powerpc when
building 32-bit uImage
On Wednesday 07 December 2022 13:39:18 Christophe Leroy wrote:
> Le 26/11/2022 à 17:30, Pali Rohár a écrit :
> > On Wednesday 02 November 2022 14:05:35 Christophe Leroy wrote:
> >> Le 01/11/2022 à 23:12, Pali Rohár a écrit :
> >>> On Sunday 09 October 2022 13:06:52 Pali Rohár wrote:
> >>>> On Monday 29 August 2022 10:54:51 Pali Rohár wrote:
> >>>>> On Sunday 28 August 2022 17:43:53 Christophe Leroy wrote:
> >>>>>> Le 28/08/2022 à 19:41, Pali Rohár a écrit :
> >>>>>>> On Sunday 28 August 2022 17:39:25 Christophe Leroy wrote:
> >>>>>>>> Le 28/08/2022 à 19:33, Christophe Leroy a écrit :
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>> Le 28/08/2022 à 11:56, Pali Rohár a écrit :
> >>>>>>>>>> When CONFIG_TARGET_CPU is specified then pass its value to the compiler
> >>>>>>>>>> -mcpu option. This fixes following build error when building kernel with
> >>>>>>>>>> powerpc e500 SPE capable cross compilers:
> >>>>>>>>>>
> >>>>>>>>>> BOOTAS arch/powerpc/boot/crt0.o
> >>>>>>>>>> powerpc-linux-gnuspe-gcc: error: unrecognized argument in option
> >>>>>>>>>> ‘-mcpu=powerpc’
> >>>>>>>>>> powerpc-linux-gnuspe-gcc: note: valid arguments to ‘-mcpu=’ are:
> >>>>>>>>>> 8540 8548 native
> >>>>>>>>>> make[1]: *** [arch/powerpc/boot/Makefile:231:
> >>>>>>>>>> arch/powerpc/boot/crt0.o] Error 1
> >>>>>>>>>
> >>>>>>>>> corenet64_smp_defconfig :
> >>>>>>>>>
> >>>>>>>>> BOOTAS arch/powerpc/boot/crt0.o
> >>>>>>>>> powerpc64-linux-gcc: error: missing argument to '-mcpu='
> >>>>>>>>> make[1]: *** [arch/powerpc/boot/Makefile:237 : arch/powerpc/boot/crt0.o]
> >>>>>>>>> Erreur 1
> >>>>>>>>> make: *** [arch/powerpc/Makefile:253 : uImage] Erreur 2
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>
> >>>>>>>> Seems like in fact, E5500_CPU and E6500_CPU are not taken into account
> >>>>>>>> in CONFIG_TARGET_CPU, and get special treatment directly in
> >>>>>>>> arch/powerpc/Makefile.
> >>>>>>>>
> >>>>>>>> This goes unnoticed because of CFLAGS-$(CONFIG_TARGET_CPU_BOOL) +=
> >>>>>>>> $(call cc-option,-mcpu=$(CONFIG_TARGET_CPU))
> >>>>>>>>
> >>>>>>>> I think we need to fix that prior to your patch.
> >>>>>>>
> >>>>>>> It looks like that CONFIG_TARGET_CPU is broken.
> >>>>>>>
> >>>>>>> $ make ARCH=powerpc corenet64_smp_defconfig CROSS_COMPILE=powerpc64-linux-gnu-
> >>>>>>> ...
> >>>>>>> # configuration written to .config
> >>>>>>>
> >>>>>>> $ grep CONFIG_TARGET_CPU .config
> >>>>>>> CONFIG_TARGET_CPU_BOOL=y
> >>>>>>>
> >>>>>>> CONFIG_TARGET_CPU_BOOL is set but CONFIG_TARGET_CPU not!
> >>>>>>
> >>>>>> Yes, because there is no default value for E5500_CPU and E6500_CPU. We
> >>>>>> need to add one for each.
> >>>>>
> >>>>> I see... Will you prepare this fixup for your previous patch?
> >>>>>
> >>>>> And I think that following construct
> >>>>>
> >>>>> $(call cc-option,-mcpu=$(CONFIG_TARGET_CPU))
> >>>>>
> >>>>> should be changed just to
> >>>>>
> >>>>> -mcpu=$(CONFIG_TARGET_CPU)
> >>>>>
> >>>>> Because if user specified that want build for specific target CPU, it
> >>>>> should not be silently ignored.
> >>>>
> >>>> Christophe, should I do something in this area?
> >>>
> >>> Christophe, any input from your side?
> >>
> >> Hi, sorry I was on holiday until today. I'll try to have a look in the
> >> coming days.
> >
> > Ok, Did you have a time to look at it?
>
> I just sent a patch for it.
>
> Christophe
Thanks!
Powered by blists - more mailing lists