On Sat, Feb 06, 2021 at 04:43:25PM +0200, Tomas Winkler wrote: > From: Alexander Usyskin <alexander.usys...@intel.com> > > Expose the client dma mapping via mei client > bus interface. > > Signed-off-by: Alexander Usyskin <alexander.usys...@intel.com> > Signed-off-by: Tomas Winkler <tomas.wink...@intel.com> > --- > drivers/misc/mei/bus.c | 46 ++++++++++++++++++++++++++++++++++++++ > drivers/misc/mei/hw.h | 5 +++++ > include/linux/mei_cl_bus.h | 3 +++ > 3 files changed, 54 insertions(+) > > diff --git a/drivers/misc/mei/bus.c b/drivers/misc/mei/bus.c > index 34fb5e541fe5..d430710a5fe5 100644 > --- a/drivers/misc/mei/bus.c > +++ b/drivers/misc/mei/bus.c > @@ -636,6 +636,52 @@ static void mei_cl_bus_vtag_free(struct mei_cl_device > *cldev) > kfree(cl_vtag); > } > > +void *mei_cldev_dma_map(struct mei_cl_device *cldev, u8 buffer_id, size_t > size) > +{ > + struct mei_device *bus; > + struct mei_cl *cl; > + int ret; > + > + if (!cldev || !buffer_id || !size) > + return ERR_PTR(-EINVAL); > + > + if (!IS_ALIGNED(size, MEI_FW_PAGE_SIZE)) { > + dev_err(&cldev->dev, "Map size should be aligned to %lu\n", > + MEI_FW_PAGE_SIZE); > + return ERR_PTR(-EINVAL); > + } > + > + cl = cldev->cl; > + bus = cldev->bus; > + > + mutex_lock(&bus->device_lock); > + ret = mei_cl_dma_alloc_and_map(cl, NULL, buffer_id, size); > + mutex_unlock(&bus->device_lock); > + if (ret) > + return ERR_PTR(ret); > + return cl->dma.vaddr; > +} > +EXPORT_SYMBOL_GPL(mei_cldev_dma_map);
Why are you exporting symbols without a user of them? That's a sure way to get them removed by someone right after this lands in the tree :) Please only add infrastructure for when you have a real user. thanks, greg k-h