#define pr_fmt(fmt) …
#include <linux/debugfs.h>
#include <linux/delay.h>
#include <linux/device.h>
#include <linux/dma-mapping.h>
#include <linux/kernel.h>
#include <linux/kthread.h>
#include <linux/map_benchmark.h>
#include <linux/math64.h>
#include <linux/module.h>
#include <linux/pci.h>
#include <linux/platform_device.h>
#include <linux/slab.h>
#include <linux/timekeeping.h>
struct map_benchmark_data { … };
static int map_benchmark_thread(void *data)
{ … }
static int do_map_benchmark(struct map_benchmark_data *map)
{ … }
static long map_benchmark_ioctl(struct file *file, unsigned int cmd,
unsigned long arg)
{ … }
static const struct file_operations map_benchmark_fops = …;
static void map_benchmark_remove_debugfs(void *data)
{ … }
static int __map_benchmark_probe(struct device *dev)
{ … }
static int map_benchmark_platform_probe(struct platform_device *pdev)
{ … }
static struct platform_driver map_benchmark_platform_driver = …;
static int
map_benchmark_pci_probe(struct pci_dev *pdev, const struct pci_device_id *id)
{ … }
static struct pci_driver map_benchmark_pci_driver = …;
static int __init map_benchmark_init(void)
{ … }
static void __exit map_benchmark_cleanup(void)
{ … }
module_init(…) …;
module_exit(map_benchmark_cleanup);
MODULE_AUTHOR(…) …;
MODULE_DESCRIPTION(…) …;