On Fri, Apr 12, 2024 at 02:57:01PM +0800, Yi-De Wu wrote: > From: "Yingshiuan Pan" <yingshiuan.pan@xxxxxxxxxxxx> > > GenieZone hypervisor(gzvm) is a type-1 hypervisor that supports various > virtual machine types and provides security features such as TEE-like > scenarios and secure boot. It can create guest VMs for security use > cases and has virtualization capabilities for both platform and > interrupt. Although the hypervisor can be booted independently, it > requires the assistance of GenieZone hypervisor kernel driver(gzvm-ko) > to leverage the ability of Linux kernel for vCPU scheduling, memory > management, inter-VM communication and virtio backend support. > > Add the basic hypervisor driver. Subsequent patches will add more > supported features to this driver. > > Signed-off-by: Yingshiuan Pan <yingshiuan.pan@xxxxxxxxxxxx> > Signed-off-by: Jerry Wang <ze-yu.wang@xxxxxxxxxxxx> > Signed-off-by: Liju Chen <liju-clr.chen@xxxxxxxxxxxx> > Signed-off-by: Yi-De Wu <yi-de.wu@xxxxxxxxxxxx> ... > +static struct platform_driver gzvm_driver = { > + .probe = gzvm_drv_probe, > + .remove = gzvm_drv_remove, > + .driver = { > + .name = KBUILD_MODNAME, > + .owner = THIS_MODULE, Hi Yi-De Wu, A minor nit from my side: There is no need to set owner here as owner is set (overridden) by module_platform_driver(). Flagged by Coccinelle. > + .of_match_table = gzvm_of_match, > + }, > +}; > + > +module_platform_driver(gzvm_driver); > + > +MODULE_DEVICE_TABLE(of, gzvm_of_match); > +MODULE_AUTHOR("MediaTek"); > +MODULE_DESCRIPTION("GenieZone interface for VMM"); > +MODULE_LICENSE("GPL"); ...