Java (openjdk7) Porting for ARM arria V (armv7) development kit

Xerxes Rånby xerxes at zafena.se
Fri Nov 21 14:43:43 UTC 2014


Your altera arria V got an ARMv7 CPU without vfp floating point unit,
most ARMv7 hardware that IcedTea is tested against got a vfp floating 
point unit thus your CPU is quite unique.

The icedtea sourcecode have been tested on a wide range of ARM CPU 
variants from single core armv4 to the latest multicore armv7 chips
your CPU should be supported as long as you use a correctly configured 
cross-compile tool-chain.

The icedtea sourcecode looks for the __ARM_PCS_VFP gcc builtin define to 
determine if it should use VFP instructions or not.
http://icedtea.classpath.org/hg/icedtea7-forest/hotspot/file/5c40e2190b6e/src/cpu/zero/vm/cppInterpreter_arm.S#l375

Please check your cross compile gcc builtin defines by running:
  echo "" | arm-linux-gnueabi-gcc -dM -E - | grep -i "vfp_fp\|pcs\|soft"

Make sure that the cross compiler you use do not have VFP enabled by 
default.

Cheers
Xerxes

Den 2014-11-21 14:36, Manjunatha Srinivasan skrev:
> Hi
> I am new to Java and I need to port java (openjdk7) for my ARM board 
> altera arria V (armv7) development kit. Here are steps i followed:
>  1. Checked out poky repo into dylan branch from git (I need to port 
> on poky dylan only)
>  2. Checked out meta-java repo into master branch from github and add 
> as layer at bblyaer.conf.
>  3. Then, did MACHINE changes for alter and added below one at local.conf:
>
> PREFERRED_VERSION_openjdk-7-jre = "25b30-2.3.12"
> PREFERRED_VERSION_icedtea7-native = "2.1.3"
>
> #Sometimes the following is needed:
> PREFERRED_PROVIDER_openjdk-7-jre = "openjdk-7-jre"
>
>  4.  Generated the root filesystem image and booted it.
> From target, executed  "java" fails by throwing error as "Illegal 
> instruction" (SIGILL)
> My linux kernel (3.10) is disabled for floating point neon. If this is 
> enabled java error thrown as "Segmentation fault"(SIGSEGV).
>
> Here is  sample log:
>
> root at 10:~# cat /proc/cpuinfo
> processor       : 0
> model name      : ARMv7 Processor rev 0 (v7l)
> BogoMIPS        : 1836.64
> Features        : swp half thumb fastmult edsp thumbee tls
> CPU implementer : 0x41
> CPU architecture: 7
> CPU variant     : 0x3
> CPU part        : 0xc09
> CPU revision    : 0
>
> processor       : 1
> model name      : ARMv7 Processor rev 0 (v7l)
> BogoMIPS        : 1843.20
> Features        : swp half thumb fastmult edsp thumbee tls
> CPU implementer : 0x41
> CPU architecture: 7
> CPU variant     : 0x3
> CPU part        : 0xc09
> CPU revision    : 0
>
> Hardware        : Altera SOCFPGA
> Revision        : 0000
> Serial          : 0000000000000000
> root at 10:~# java
> Illegal instruction
>
> Please help me out for porting procedure for java on ARM altera. TIA.
>
> Regards
> Manjunatha Srinivasan N
>
>



More information about the porters-dev mailing list