On Mon, 2 Nov 2015 21:59:12 +0530 Jerin Jacob <jerin.jacob at caviumnetworks.com> wrote:
> On Mon, Nov 02, 2015 at 03:49:17PM +0000, Hunt, David wrote: > > On 02/11/2015 15:36, Jan Viktorin wrote: > > >On Mon, 2 Nov 2015 15:26:19 +0000 > > --snip-- > > >It was looking like we can share a lot of common code for both > > >architectures. I didn't know how much different are the cpuflags. > > > > CPU flags for ARMv8 are looking like this now. Quite different to the ARMv7 > > ones. > > > > static const struct feature_entry cpu_feature_table[] = { > > FEAT_DEF(FP, 0x00000001, 0, REG_HWCAP, 0) > > FEAT_DEF(ASIMD, 0x00000001, 0, REG_HWCAP, 1) > > FEAT_DEF(EVTSTRM, 0x00000001, 0, REG_HWCAP, 2) > > FEAT_DEF(AES, 0x00000001, 0, REG_HWCAP, 3) > > FEAT_DEF(PMULL, 0x00000001, 0, REG_HWCAP, 4) > > FEAT_DEF(SHA1, 0x00000001, 0, REG_HWCAP, 5) > > FEAT_DEF(SHA2, 0x00000001, 0, REG_HWCAP, 6) > > FEAT_DEF(CRC32, 0x00000001, 0, REG_HWCAP, 7) > > FEAT_DEF(AARCH32, 0x00000001, 0, REG_PLATFORM, 0) > > FEAT_DEF(AARCH64, 0x00000001, 0, REG_PLATFORM, 1) > > }; > > > > >IMHO, it'd be better to have two directories arm and arm64. I thought > > >to refer from arm64 to arm where possible. But I don't know whether is > > >this possible with the DPDK build system. > > > > I think both methodologies have their pros and cons. However, I'd lean > > towards the common directory with the "filename_32/64.h" scheme, as that > > similar to the x86 methodology, and we don't need to tweak the include paths > > to pull files from multiple directories. > > > > I agree. Jan, could you please send the next version with > filename_32/64.h for atomic and cpuflags(ie for all header files). > I can re-base and send the complete arm64 patch based on your version. > I am working on it, however, after I've removed the unnecessary intrinsics code and set the RTE_FORCE_INTRINSICS=y, it doesn't build... So I'm figuring out what is wrong. Jan > Thanks, > Jerin > > > > > Dave > > -- Jan Viktorin E-mail: Viktorin at RehiveTech.com System Architect Web: www.RehiveTech.com RehiveTech Brno, Czech Republic