#include <linux/intel_th.h>
#include <linux/module.h>
#include <linux/slab.h>
#include <linux/device.h>
#include <linux/dma-mapping.h>
#define MAX_SGTS …
struct msu_sink_private { … };
static void *msu_sink_assign(struct device *dev, int *mode)
{ … }
static void msu_sink_unassign(void *data)
{ … }
static int msu_sink_alloc_window(void *data, struct sg_table **sgt, size_t size)
{ … }
static void msu_sink_free_window(void *data, struct sg_table *sgt)
{ … }
static int msu_sink_ready(void *data, struct sg_table *sgt, size_t bytes)
{ … }
static const struct msu_buffer sink_mbuf = …;
module_intel_th_msu_buffer(…);
MODULE_DESCRIPTION(…) …;
MODULE_LICENSE(…) …;