Rockpro64: Is ARM_HYP supported?

When trying to compile sel4test for the rockpro64 with ARM_HYP enabled like this:

mkdir sel4test
cd sel4test
repo init -u https://github.com/seL4/sel4test-manifest.git -b master
repo sync
mkdir build
cd build
../init-build.sh -DPLATFORM=rockpro64 -DSIMULATION=FALSE -DARM_HYP=ON
ninja

I get the following build error:

[38/292] Building C object kernel/CMakeFiles/kernel...temp_lib.dir/kernel_all_pp_prune_wrapper_temp.c.obj
FAILED: kernel/CMakeFiles/kernel_all_pp_prune_wrapper_temp_lib.dir/kernel_all_pp_prune_wrapper_temp.c.obj 
/usr/bin/ccache /usr/bin/aarch64-linux-gnu-gcc --sysroot=/sel4test/build  -I/sel4test/kernel/include/plat/default -I/sel4test/kernel/include -I/sel4test/kernel/include/64 -I/sel4test/kernel/include/arch/arm -I/sel4test/kernel/include/arch/arm/arch/64 -I/sel4test/kernel/include/plat/rockpro64 -I/sel4test/kernel/include/plat/rockpro64/plat/64 -I/sel4test/kernel/include/arch/arm/armv/armv8-a -I/sel4test/kernel/include/arch/arm/armv/armv8-a/64 -I/sel4test/kernel/libsel4/include -I/sel4test/kernel/libsel4/arch_include/arm -I/sel4test/kernel/libsel4/sel4_arch_include/aarch64 -I/sel4test/kernel/libsel4/sel4_plat_include/rockpro64 -I/sel4test/kernel/libsel4/mode_include/64 -Ikernel/gen_config -Ikernel/autoconf -Ikernel/gen_headers -march=armv8-a   -D__KERNEL_64__ -O2 -g -DNDEBUG   -nostdinc -nostdlib -O2 -DHAVE_AUTOCONF -DDEBUG -g -ggdb -mgeneral-regs-only -fno-pic -fno-pie -fno-stack-protector -fno-asynchronous-unwind-tables -std=c99 -Wall -Werror -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Wmissing-declarations -Wundef -Wpointer-arith -Wno-nonnull -ffreestanding -E -CC -I/sel4test/build/kernel/generated_prune -MD -MT kernel/CMakeFiles/kernel_all_pp_prune_wrapper_temp_lib.dir/kernel_all_pp_prune_wrapper_temp.c.obj -MF kernel/CMakeFiles/kernel_all_pp_prune_wrapper_temp_lib.dir/kernel_all_pp_prune_wrapper_temp.c.obj.d -o kernel/CMakeFiles/kernel_all_pp_prune_wrapper_temp_lib.dir/kernel_all_pp_prune_wrapper_temp.c.obj   -c kernel/kernel_all_pp_prune_wrapper_temp.c
In file included from /sel4test/kernel/src/arch/arm/object/vcpu.c:19:
/sel4test/kernel/include/arch/arm/arch/machine/gic_v2.h:28: error: "IRQ_MASK" redefined [-Werror]
   28 | #define IRQ_MASK MASK(10u)
      | 
In file included from kernel/gen_headers/plat/platform_gen.h:29,
                 from /sel4test/kernel/include/plat/default/plat/machine.h:14,
                 from /sel4test/kernel/include/machine.h:14,
                 from /sel4test/kernel/include/api/syscall.h:15,
                 from /sel4test/kernel/src/api/faults.c:16:
/sel4test/kernel/include/arch/arm/arch/machine/gic_v3.h:37: note: this is the location of the previous definition
   37 | #define IRQ_MASK MASK(16u)
      | 
cc1: all warnings being treated as errors
[43/292] Generate invocation header sel4_arch_include/aarch64/sel4/sel4_arch/invocation.h
ninja: build stopped: subcommand failed.

Is ARM_HYP just not supported for rockpro64 or is this a bug?

Yea, hyp isn’t supported for the rockpro64 yet because the kernel’s GICv3 driver doesn’t support hypervisor functions yet.
A previous PR from a work-in-progress branch can be found here: https://github.com/seL4/seL4/pull/145