#include <linux/acpi.h>
#include <linux/delay.h>
#include <linux/i2c.h>
#include <linux/init.h>
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/moduleparam.h>
#include <linux/of.h>
#include <linux/platform_device.h>
#include <linux/slab.h>
#include "cs35l41.h"
static const struct i2c_device_id cs35l41_id_i2c[] = …;
MODULE_DEVICE_TABLE(i2c, cs35l41_id_i2c);
static int cs35l41_i2c_probe(struct i2c_client *client)
{ … }
static void cs35l41_i2c_remove(struct i2c_client *client)
{ … }
#ifdef CONFIG_OF
static const struct of_device_id cs35l41_of_match[] = …;
MODULE_DEVICE_TABLE(of, cs35l41_of_match);
#endif
#ifdef CONFIG_ACPI
static const struct acpi_device_id cs35l41_acpi_match[] = …;
MODULE_DEVICE_TABLE(acpi, cs35l41_acpi_match);
#endif
static struct i2c_driver cs35l41_i2c_driver = …;
module_i2c_driver(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_AUTHOR(…) …;
MODULE_LICENSE(…) …;