summaryrefslogtreecommitdiffstats
path: root/templates/machine/m3-salvator-x/50_setup.sh
blob: abd2a33af0dc088480d56571e514eb2814667643 (plain)
1
2
3
4
5
6
7
8
9
10
# setup proprietary gfx drivers and multimedia packages
pushd $METADIR 2>/dev/null

SETUP_MM_SCRIPT=$METADIR/meta-agl/meta-agl-bsp/meta-rcar-gen3/scripts/setup_mm_packages.sh
if [ -f $SETUP_MM_SCRIPT ]; then
	. $SETUP_MM_SCRIPT
	copy_mm_packages
fi

popd 2>/dev/null
-color: #fff0f0 } /* Literal.String.Single */ .highlight .ss { color: #aa6600; background-color: #fff0f0 } /* Literal.String.Symbol */ .highlight .bp { color: #003388 } /* Name.Builtin.Pseudo */ .highlight .fm { color: #0066bb; font-weight: bold } /* Name.Function.Magic */ .highlight .vc { color: #336699 } /* Name.Variable.Class */ .highlight .vg { color: #dd7700 } /* Name.Variable.Global */ .highlight .vi { color: #3333bb } /* Name.Variable.Instance */ .highlight .vm { color: #336699 } /* Name.Variable.Magic */ .highlight .il { color: #0000DD; font-weight: bold } /* Literal.Number.Integer.Long */ }
From 756f2f1f90524c2620ed7951e436d13bdb929a6b Mon Sep 17 00:00:00 2001
From: Andrey Shvetsov <andrey.shvetsov@k2l.de>
Date: Mon, 12 Feb 2018 12:25:37 +0100
Subject: [PATCH] staging: most: dim2: use device for coherent memory allocation

On several modern architectures the allocation of coherent memory needs
a device that has the dma_ops properly set.  This patch enables use of
the DIM2 platform device for the allocation process.

Signed-off-by: Andrey Shvetsov <andrey.shvetsov@k2l.de>
---
 hdm-dim2/dim2_hdm.c |  9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/hdm-dim2/dim2_hdm.c b/hdm-dim2/dim2_hdm.c
index 05e1896..1847091 100644
--- a/hdm-dim2/dim2_hdm.c
+++ b/hdm-dim2/dim2_hdm.c
@@ -688,12 +688,16 @@ static int poison_channel(struct most_interface *most_iface, int ch_idx)

 static void *dma_alloc(struct mbo *mbo, u32 size)
 {
-	return dma_alloc_coherent(NULL, size, &mbo->bus_address, GFP_KERNEL);
+	struct device *dev = mbo->ifp->dev;
+
+	return dma_alloc_coherent(dev, size, &mbo->bus_address, GFP_KERNEL);
 }

 static void dma_free(struct mbo *mbo, u32 size)
 {
-	dma_free_coherent(NULL, size, mbo->virt_address, mbo->bus_address);
+	struct device *dev = mbo->ifp->dev;
+
+	dma_free_coherent(dev, size, mbo->virt_address, mbo->bus_address);
 }

 static const struct of_device_id dim2_of_match[];
@@ -875,6 +879,7 @@ static int dim2_probe(struct platform_device *pdev)
	dev->most_iface.poison_channel = poison_channel;
	dev->most_iface.request_netinfo = request_netinfo;
	dev->most_iface.extra_attrs = DBR_ATTRS;
+	dev->most_iface.dev = &pdev->dev;

	kobj = most_register_interface(&dev->most_iface);
	if (IS_ERR(kobj)) {
--
libgit2 0.26.0