use of dma_direct_set_offset in (allwinner) drivers

From: Christoph Hellwig
Date: Tue Nov 03 2020 - 04:55:52 EST


Hi all,

Linux 5.10-rc1 switched from having a single dma offset in struct device
to a set of DMA ranges, and introduced a new helper to set them,
dma_direct_set_offset.

This in fact surfaced that a bunch of drivers that violate our layering
and set the offset from drivers, which meant we had to reluctantly
export the symbol to set up the DMA range.

The drivers are:

drivers/gpu/drm/sun4i/sun4i_backend.c

This just use dma_direct_set_offset as a fallback. Is there any good
reason to not just kill off the fallback?

drivers/media/platform/sunxi/sun4i-csi/sun4i_csi.c

Same as above.

drivers/media/platform/sunxi/sun6i-csi/sun6i_csi.c

This driver unconditionally sets the offset. Why can't we do this
in the device tree?

drivers/staging/media/sunxi/cedrus/cedrus_hw.c

Same as above.