#define pr_fmt(fmt) …
#include <linux/delay.h>
#include <linux/init.h>
#include <linux/hrtimer.h>
#include <linux/module.h>
#include <linux/platform_device.h>
#include <linux/time.h>
#include <linux/numa.h>
#include <linux/nodemask.h>
#include <linux/topology.h>
#define TEST_PROBE_DELAY …
#define TEST_PROBE_THRESHOLD …
static atomic_t warnings, errors, timeout, async_completed;
static int test_probe(struct platform_device *pdev)
{ … }
static struct platform_driver async_driver = …;
static struct platform_driver sync_driver = …;
static struct platform_device *async_dev[NR_CPUS * 2];
static struct platform_device *sync_dev[2];
static struct platform_device *
test_platform_device_register_node(char *name, int id, int nid)
{ … }
static int __init test_async_probe_init(void)
{ … }
module_init(test_async_probe_init);
static void __exit test_async_probe_exit(void)
{ … }
module_exit(test_async_probe_exit);
MODULE_DESCRIPTION(…) …;
MODULE_AUTHOR(…) …;
MODULE_LICENSE(…) …;