]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
gpu: host1x: Do not setup DMA for virtual devices
authorThierry Reding <treding@nvidia.com>
Thu, 14 Mar 2024 15:49:43 +0000 (16:49 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 17 May 2024 10:14:44 +0000 (12:14 +0200)
[ Upstream commit 8ab58f6841b19423231c5db3378691ec80c778f8 ]

The host1x devices are virtual compound devices and do not perform DMA
accesses themselves, so they do not need to be set up for DMA.

Ideally we would also not need to set up DMA masks for the virtual
devices, but we currently still need those for legacy support on old
hardware.

Tested-by: Jon Hunter <jonathanh@nvidia.com>
Acked-by: Jon Hunter <jonathanh@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240314154943.2487549-1-thierry.reding@gmail.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/gpu/host1x/bus.c

index 84d042796d2e66ffb8c5dce5dd5485b680c7b8e1..3937889fa912d4dfd120c78c8f0639e243221a2c 100644 (file)
@@ -351,11 +351,6 @@ static int host1x_device_uevent(const struct device *dev,
        return 0;
 }
 
-static int host1x_dma_configure(struct device *dev)
-{
-       return of_dma_configure(dev, dev->of_node, true);
-}
-
 static const struct dev_pm_ops host1x_device_pm_ops = {
        .suspend = pm_generic_suspend,
        .resume = pm_generic_resume,
@@ -369,7 +364,6 @@ struct bus_type host1x_bus_type = {
        .name = "host1x",
        .match = host1x_device_match,
        .uevent = host1x_device_uevent,
-       .dma_configure = host1x_dma_configure,
        .pm = &host1x_device_pm_ops,
 };
 
@@ -458,8 +452,6 @@ static int host1x_device_add(struct host1x *host1x,
        device->dev.bus = &host1x_bus_type;
        device->dev.parent = host1x->dev;
 
-       of_dma_configure(&device->dev, host1x->dev->of_node, true);
-
        device->dev.dma_parms = &device->dma_parms;
        dma_set_max_seg_size(&device->dev, UINT_MAX);