-
Yanqin Wei authored
This patch enables the virtual networking over RPMsg communication between Safety Island and the DomU guest of Primary Compute. The remoteproc driver is changed to use the device memory region because Xen does not support reserved memory passthrough. But unaligned access to the device memory causes exception in the EL2. A Xen patch is added to introduce 'xen,reg-normal-memory' tag. This tag indicates that Xen needs to configure the device regions to normal memory. In the Linux kernel, virtio vring is forced to enable DMA operations in the Xen domains. It causes incorrect DMA page mapping because DMA is not used for armv8r64_remoteproc-based virtio RPMsg. Add a Linux kernel patch to fix it by checking the device type before forcing virtio device to enable DMA operations. In the Xen device tree, two tags are added to remoteproc node. One for device passthrough, another for indicating that the device region is normal memory. In the Xen tool configuration, the I/O memory pages are configured for the remoteproc device passthrough. The remoteproc driver parses the 'reg' and 'reg-name' parameters to map the shared memory regions in the guest. The virtual networking in the DomU follows the configuration in the baremetal linux case, which is defined in init-ifupdown-extras.inc. As a testing application in the intermedium stage, the ipm_mhuv2 application is removed from Safety Island component. Issue-Id: SCM-5480 Signed-off-by: Yanqin Wei <Yanqin.Wei@arm.com> Change-Id: Ife07a16c2aa42671fb291189c66e4173c0e6ec39
ceaa218b