#include <linux/device.h>
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/moduleparam.h>
#include <linux/mutex.h>
#include <linux/string.h>
#include <linux/types.h>
#include <linux/w1.h>
#define W1_FAMILY_DS2405 …
MODULE_LICENSE(…) …;
MODULE_AUTHOR(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_ALIAS(…) …;
static int w1_ds2405_select(struct w1_slave *sl, bool only_active)
{ … }
static int w1_ds2405_read_pio(struct w1_slave *sl)
{ … }
static ssize_t state_show(struct device *device,
struct device_attribute *attr, char *buf)
{ … }
static ssize_t output_show(struct device *device,
struct device_attribute *attr, char *buf)
{ … }
static ssize_t output_store(struct device *device,
struct device_attribute *attr,
const char *buf, size_t count)
{ … }
static DEVICE_ATTR_RO(state);
static DEVICE_ATTR_RW(output);
static struct attribute *w1_ds2405_attrs[] = …;
ATTRIBUTE_GROUPS(…);
static const struct w1_family_ops w1_ds2405_fops = …;
static struct w1_family w1_family_ds2405 = …;
module_w1_family(…);