[dpdk-dev] [EXT] [PATCH] config: change default cache line size for ARMv8 with meson
Thomas Monjalon
thomas at monjalon.net
Wed Jan 9 12:28:20 CET 2019
09/01/2019 11:49, Jerin Jacob Kollanukkaran:
> On Wed, 2019-01-09 at 10:22 +0000, Yongseok Koh wrote:
> > On Jan 9, 2019, at 2:09 AM, Jerin Jacob Kollanukkaran wrote:
> > > I think, I way forward is to add config/arm/arm64_a72_linuxapp_gcc
> > > for meson. This config can be used for all SoC with A72 armv8
> > > implementation and may have sym link to specfific SoC to avoid
> > > confusion to end users.
> >
> > Is config/arm/arm64_a72_linuxapp_gcc valid? Others have
>
> Yes. For cross compiling for A72.
Any cross-compilation with meson requires a config file.
The default Arm cross-compilation is done with
config/arm/arm64_armv8_linuxapp_gcc
which set implementor_id = 'generic'
For native compilation, implementor_id is detected from
/sys/devices/system/cpu/cpu0/regs/identification/midr_el1
So each Arm machine needs 2 things:
- a cross-compilation file
- settings based on implementor_id in config/arm/meson.build
> Having not seperate IMPLEMENTOR ID is a chip design issue.
No I don't think it's a design issue.
If the Arm core has no modification, it does not need to be
specially identified.
> I think it can work around by creating
> config/arm/arm64_<your_soc_name>_linuxapp_gcc
> and build on x86 or arm64 through
>
> meson build --cross-file config/arm/arm64_<your_soc_name>_linuxapp_gcc
No, it is a real A72, so it should work with default settings.
The only issue we have is that the default cache line size for Aarch64
is set to 128 in config/arm/meson.build, and this is wrong.
The default cache line is 64 bits.
This is already overriden for Cavium machines which have 128-bit cache lines.
It may be needed to do the same change for other machines (Qualcomm?)
having Arm core modified to 128-bit cache lines.
The other concern is about running a generic Arm build.
Given 64-bit should be the default, generic builds will have this value.
Is it a big issue for running generic 64-bit build on Cavium machines?
More information about the dev
mailing list