mirror of
git://git.yoctoproject.org/meta-virtualization.git
synced 2025-07-19 20:59:41 +02:00

Kernel patches are in process of Linux review and submission, and are backported from the Linux Foundation's Eve Project kernel from 5.6 to 5.4 (some patches not needed for 5.4, hence gaps in the patch sequence number) https://github.com/lf-edge/eve/tree/master/pkg/new-kernel/patches-5.6.x A bbappend applies Xen overrides to the boot command line. Since linux-raspberrypi depends on linux-yocto, and linux-yocto_virtualization introduces a requirement for cfg/virtio.scc obtain it from the yocto kernel cache. Signed-off-by: Christopher Clark <christopher.w.clark@gmail.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
67 lines
2.4 KiB
Diff
67 lines
2.4 KiB
Diff
From ed2cec0f196028f4eaed0951f1f82efd9e6b1b67 Mon Sep 17 00:00:00 2001
|
|
From: Stefano Stabellini <stefano.stabellini@xilinx.com>
|
|
Date: Wed, 20 May 2020 16:42:12 -0700
|
|
Subject: [PATCH 04/10] swiotlb-xen: add struct device* parameter to
|
|
xen_bus_to_phys
|
|
|
|
The parameter is unused in this patch.
|
|
No functional changes.
|
|
|
|
Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
|
|
---
|
|
drivers/xen/swiotlb-xen.c | 10 +++++-----
|
|
1 file changed, 5 insertions(+), 5 deletions(-)
|
|
|
|
diff --git a/drivers/xen/swiotlb-xen.c b/drivers/xen/swiotlb-xen.c
|
|
index 958ee5517e0b..9b4306a56feb 100644
|
|
--- a/drivers/xen/swiotlb-xen.c
|
|
+++ b/drivers/xen/swiotlb-xen.c
|
|
@@ -67,7 +67,7 @@ static inline dma_addr_t xen_phys_to_bus(struct device *dev, phys_addr_t paddr)
|
|
return dma;
|
|
}
|
|
|
|
-static inline phys_addr_t xen_bus_to_phys(dma_addr_t baddr)
|
|
+static inline phys_addr_t xen_bus_to_phys(struct device *dev, dma_addr_t baddr)
|
|
{
|
|
unsigned long xen_pfn = bfn_to_pfn(XEN_PFN_DOWN(baddr));
|
|
dma_addr_t dma = (dma_addr_t)xen_pfn << XEN_PAGE_SHIFT;
|
|
@@ -339,7 +339,7 @@ xen_swiotlb_free_coherent(struct device *hwdev, size_t size, void *vaddr,
|
|
|
|
/* do not use virt_to_phys because on ARM it doesn't return you the
|
|
* physical address */
|
|
- phys = xen_bus_to_phys(dev_addr);
|
|
+ phys = xen_bus_to_phys(hwdev, dev_addr);
|
|
|
|
/* Convert the size to actually allocated. */
|
|
size = 1UL << (order + XEN_PAGE_SHIFT);
|
|
@@ -420,7 +420,7 @@ static dma_addr_t xen_swiotlb_map_page(struct device *dev, struct page *page,
|
|
static void xen_swiotlb_unmap_page(struct device *hwdev, dma_addr_t dev_addr,
|
|
size_t size, enum dma_data_direction dir, unsigned long attrs)
|
|
{
|
|
- phys_addr_t paddr = xen_bus_to_phys(dev_addr);
|
|
+ phys_addr_t paddr = xen_bus_to_phys(hwdev, dev_addr);
|
|
|
|
BUG_ON(dir == DMA_NONE);
|
|
|
|
@@ -436,7 +436,7 @@ static void
|
|
xen_swiotlb_sync_single_for_cpu(struct device *dev, dma_addr_t dma_addr,
|
|
size_t size, enum dma_data_direction dir)
|
|
{
|
|
- phys_addr_t paddr = xen_bus_to_phys(dma_addr);
|
|
+ phys_addr_t paddr = xen_bus_to_phys(dev, dma_addr);
|
|
|
|
if (!dev_is_dma_coherent(dev))
|
|
xen_dma_sync_for_cpu(dma_addr, paddr, size, dir);
|
|
@@ -449,7 +449,7 @@ static void
|
|
xen_swiotlb_sync_single_for_device(struct device *dev, dma_addr_t dma_addr,
|
|
size_t size, enum dma_data_direction dir)
|
|
{
|
|
- phys_addr_t paddr = xen_bus_to_phys(dma_addr);
|
|
+ phys_addr_t paddr = xen_bus_to_phys(dev, dma_addr);
|
|
|
|
if (is_xen_swiotlb_buffer(dma_addr))
|
|
swiotlb_tbl_sync_single(dev, paddr, size, dir, SYNC_FOR_DEVICE);
|
|
--
|
|
2.15.4
|
|
|