瀏覽代碼

arm64: KVM: Implement HVC_GET_VECTORS in the init code

Now that we have an infrastructure to handle hypercalls in the KVM
init code, let's implement HVC_GET_VECTORS there.

Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Reviewed-by: James Morse <james.morse@arm.com>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Christoffer Dall <cdall@linaro.org>
Marc Zyngier 8 年之前
父節點
當前提交
82529d9bfd
共有 1 個文件被更改,包括 6 次插入1 次删除
  1. 6 1
      arch/arm64/kvm/hyp-init.S

+ 6 - 1
arch/arm64/kvm/hyp-init.S

@@ -124,7 +124,12 @@ __do_hyp_init:
 ENDPROC(__kvm_hyp_init)
 ENDPROC(__kvm_hyp_init)
 
 
 ENTRY(__kvm_handle_stub_hvc)
 ENTRY(__kvm_handle_stub_hvc)
-	cmp	x0, #HVC_RESET_VECTORS
+	cmp	x0, #HVC_GET_VECTORS
+	b.ne	1f
+	mrs	x0, vbar_el2
+	b	exit
+
+1:	cmp	x0, #HVC_RESET_VECTORS
 	b.ne	1f
 	b.ne	1f
 	/*
 	/*
 	 * Reset kvm back to the hyp stub.
 	 * Reset kvm back to the hyp stub.