diff --git a/arch/arm64/include/asm/kvm_pkvm_module.h b/arch/arm64/include/asm/kvm_pkvm_module.h index c19511a966a9..074077995a21 100644 --- a/arch/arm64/include/asm/kvm_pkvm_module.h +++ b/arch/arm64/include/asm/kvm_pkvm_module.h @@ -19,6 +19,8 @@ struct pkvm_module_ops { int (*create_private_mapping)(phys_addr_t phys, size_t size, enum kvm_pgtable_prot prot, unsigned long *haddr); + void *(*alloc_module_va)(u64 nr_pages); + int (*map_module_page)(u64 pfn, void *va, enum kvm_pgtable_prot prot); int (*register_serial_driver)(void (*hyp_putc_cb)(char)); void (*puts)(const char *str); void (*putx64)(u64 num); diff --git a/arch/arm64/kvm/hyp/nvhe/modules.c b/arch/arm64/kvm/hyp/nvhe/modules.c index aae93093bb64..70d7009a4961 100644 --- a/arch/arm64/kvm/hyp/nvhe/modules.c +++ b/arch/arm64/kvm/hyp/nvhe/modules.c @@ -95,6 +95,8 @@ int __pkvm_close_module_registration(void) const struct pkvm_module_ops module_ops = { .create_private_mapping = __pkvm_create_private_mapping, + .alloc_module_va = __pkvm_alloc_module_va, + .map_module_page = __pkvm_map_module_page, .register_serial_driver = __pkvm_register_serial_driver, .puts = hyp_puts, .putx64 = hyp_putx64,