On 14/04/2023 10:43, Yi-De Wu (吳一德) wrote: > On Thu, 2023-04-13 at 19:08 +0200, Matthias Brugger wrote: >> External email : Please do not click links or open attachments until >> you have verified the sender or the content. >> >> >> On 13/04/2023 14:55, Krzysztof Kozlowski wrote: >>> On 13/04/2023 11:07, Yi-De Wu wrote: >>>> From: "Yingshiuan Pan" <yingshiuan.pan@xxxxxxxxxxxx> >>>> >>>> GenieZone is MediaTek proprietary hypervisor solution, and it is >>>> running >>>> in EL2 stand alone as a type-I hypervisor. This patch exports a >>>> set of >>>> ioctl interfaces for userspace VMM (e.g., crosvm) to operate >>>> guest VMs >>>> lifecycle (creation, running, and destroy) on GenieZone. >>>> >>>> Signed-off-by: Yingshiuan Pan <yingshiuan.pan@xxxxxxxxxxxx> >>>> Signed-off-by: Yi-De Wu <yi-de.wu@xxxxxxxxxxxx> >>>> --- >>>> arch/arm64/include/uapi/asm/gzvm_arch.h | 79 ++++ >>>> drivers/soc/mediatek/Kconfig | 2 + >>>> drivers/soc/mediatek/Makefile | 1 + >>>> drivers/soc/mediatek/virt/geniezone/Kconfig | 17 + >>> >>> Hypervisor drivers do not go to soc. Stop shoving there everything >>> from >>> your downstream. Find appropriate directory, e.g. maybe >>> drivers/virt. >> >> Acked, what is the reason you want to add this to drivers/soc instead >> of >> drivers/virt? >> >> Regards, >> Matthias >> > Noted. We would take your advice and move it from > drivers/soc/mediatek/virt to /drivers/virt on next version. > > The reason we put it under our soc/ is that the drver is highly > propietary for mediatek's product and for aarch64 only. Maybe it's not > general enough to put in under /drivers/virt. If virt folks reject the driver, because it is highly proprietary, then it is not suitable for soc/mediatek either. Your argument is actually not helping you. It's rather a proof that this driver might not be suitable for Linux kernel at all. > https://android-review.googlesource.com/c/kernel/common/+/2447547/1..2/drivers/virt/geniezone/gzvm.h#b91 I don't see there anything suggesting moving to soc/mediatek. Comment from Trilok (+Cc) suggests that your code is simply not portable. Write code which is portable and properly organized. Best regards, Krzysztof