[Question] Is little endian supported on all the platforms?
Benjamin Herrenschmidt
benh at kernel.crashing.org
Tue Sep 1 06:40:36 AEST 2015
On Mon, 2015-08-31 at 21:19 +1000, Michael Ellerman wrote:
> Yes. Maybe something like this?
I would have done it the other way around with endian at the top
and only the supported platforms displayed based on the endian...
But I don't care *that* much either way
>diff --git a/arch/powerpc/platforms/Kconfig.cputype >b/arch/powerpc/pl
atforms/Kconfig.cputype
> index c140e94..c359f72 100644
> --- a/arch/powerpc/platforms/Kconfig.cputype
> +++ b/arch/powerpc/platforms/Kconfig.cputype
> @@ -415,9 +415,13 @@ config VDSO32
> big endian. That is because the only little endian
> configuration we
> support is ppc64le which is 64-bit only.
>
> +config CHOOSE_ENDIAN
> + bool
> +
> choice
> prompt "Endianness selection"
> default CPU_BIG_ENDIAN
> + depends on CHOOSE_ENDIAN
> help
> This option selects whether a big endian or little endian
> kernel will
> be built.
> diff --git a/arch/powerpc/platforms/powernv/Kconfig
> b/arch/powerpc/platforms/powernv/Kconfig
> index 604190c..32d5661 100644
> --- a/arch/powerpc/platforms/powernv/Kconfig
> +++ b/arch/powerpc/platforms/powernv/Kconfig
> @@ -18,6 +18,7 @@ config PPC_POWERNV
> select CPU_FREQ_GOV_ONDEMAND
> select CPU_FREQ_GOV_CONSERVATIVE
> select PPC_DOORBELL
> + select CHOOSE_ENDIAN
> default y
>
> config OPAL_PRD
> diff --git a/arch/powerpc/platforms/pseries/Kconfig
> b/arch/powerpc/platforms/pseries/Kconfig
> index 54c87d5..182f485 100644
> --- a/arch/powerpc/platforms/pseries/Kconfig
> +++ b/arch/powerpc/platforms/pseries/Kconfig
> @@ -21,6 +21,7 @@ config PPC_PSERIES
> select HOTPLUG_CPU if SMP
> select ARCH_RANDOM
> select PPC_DOORBELL
> + select CHOOSE_ENDIAN
> default y
>
> config PPC_SPLPAR
>
>
>
> > > But the specific problem you are having looks like a differnet
> > > issue
> > > with the PS3 boot wrapper.
> > >
> >
> > But could the reason of this be that the building process of the
> > PS3
> > boot wrapper assumes the kernel is BE?
>
> It looks more like we're getting confused between 32-bit and 64-bit,
> from your
> log:
>
> ld: powerpc:common64 architecture of input file
> `arch/powerpc/boot/ps3-head.o' is incompatible with powerpc:common
> output
>
> Which says it has a .o which is 64-bit but it's trying to produce 32
> -bit output.
>
> That's probably related to the PPC64_BOOT_WRAPPER stuff.
>
> cheers
>
More information about the Linuxppc-dev
mailing list