w1: Organize driver source to natural/common order

Structures and functions should be ordered such that forward declaration
use is minimized.

MODULE_* macros should immediately follow the structures and functions
upon which they act.

Remaining MODULE_* macros should be at the end of the file in
alphabetical order.

Signed-off-by: Andrew F. Davis <afd@ti.com>
Acked-by: Evgeniy Polyakov <zbr@ioremap.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Andrew F. Davis 2017-05-16 15:02:12 -05:00 коммит произвёл Greg Kroah-Hartman
Родитель 13b9abfc92
Коммит 50fa2951bd
20 изменённых файлов: 138 добавлений и 170 удалений

Просмотреть файл

@ -35,6 +35,8 @@
*/ */
static int ds2482_active_pullup = 1; static int ds2482_active_pullup = 1;
module_param_named(active_pullup, ds2482_active_pullup, int, 0644); module_param_named(active_pullup, ds2482_active_pullup, int, 0644);
MODULE_PARM_DESC(active_pullup, "Active pullup (apply to all buses): " \
"0-disable, 1-enable (default)");
/** /**
* The DS2482 registers - there are 3 registers that are addressed by a read * The DS2482 registers - there are 3 registers that are addressed by a read
@ -93,30 +95,6 @@ static const u8 ds2482_chan_rd[8] =
#define DS2482_REG_STS_PPD 0x02 #define DS2482_REG_STS_PPD 0x02
#define DS2482_REG_STS_1WB 0x01 #define DS2482_REG_STS_1WB 0x01
static int ds2482_probe(struct i2c_client *client,
const struct i2c_device_id *id);
static int ds2482_remove(struct i2c_client *client);
/**
* Driver data (common to all clients)
*/
static const struct i2c_device_id ds2482_id[] = {
{ "ds2482", 0 },
{ }
};
MODULE_DEVICE_TABLE(i2c, ds2482_id);
static struct i2c_driver ds2482_driver = {
.driver = {
.name = "ds2482",
},
.probe = ds2482_probe,
.remove = ds2482_remove,
.id_table = ds2482_id,
};
/* /*
* Client data (each client gets its own) * Client data (each client gets its own)
*/ */
@ -560,10 +538,25 @@ static int ds2482_remove(struct i2c_client *client)
return 0; return 0;
} }
/**
* Driver data (common to all clients)
*/
static const struct i2c_device_id ds2482_id[] = {
{ "ds2482", 0 },
{ }
};
MODULE_DEVICE_TABLE(i2c, ds2482_id);
static struct i2c_driver ds2482_driver = {
.driver = {
.name = "ds2482",
},
.probe = ds2482_probe,
.remove = ds2482_remove,
.id_table = ds2482_id,
};
module_i2c_driver(ds2482_driver); module_i2c_driver(ds2482_driver);
MODULE_PARM_DESC(active_pullup, "Active pullup (apply to all buses): " \
"0-disable, 1-enable (default)");
MODULE_AUTHOR("Ben Gardner <bgardner@wabtec.com>"); MODULE_AUTHOR("Ben Gardner <bgardner@wabtec.com>");
MODULE_DESCRIPTION("DS2482 driver"); MODULE_DESCRIPTION("DS2482 driver");
MODULE_LICENSE("GPL"); MODULE_LICENSE("GPL");

Просмотреть файл

@ -179,28 +179,9 @@ struct ds_status
u8 reserved2; u8 reserved2;
}; };
static struct usb_device_id ds_id_table [] = {
{ USB_DEVICE(0x04fa, 0x2490) },
{ },
};
MODULE_DEVICE_TABLE(usb, ds_id_table);
static int ds_probe(struct usb_interface *, const struct usb_device_id *);
static void ds_disconnect(struct usb_interface *);
static int ds_send_control(struct ds_device *, u16, u16);
static int ds_send_control_cmd(struct ds_device *, u16, u16);
static LIST_HEAD(ds_devices); static LIST_HEAD(ds_devices);
static DEFINE_MUTEX(ds_mutex); static DEFINE_MUTEX(ds_mutex);
static struct usb_driver ds_driver = {
.name = "DS9490R",
.probe = ds_probe,
.disconnect = ds_disconnect,
.id_table = ds_id_table,
};
static int ds_send_control_cmd(struct ds_device *dev, u16 value, u16 index) static int ds_send_control_cmd(struct ds_device *dev, u16 value, u16 index)
{ {
int err; int err;
@ -1108,8 +1089,20 @@ static void ds_disconnect(struct usb_interface *intf)
kfree(dev); kfree(dev);
} }
static struct usb_device_id ds_id_table [] = {
{ USB_DEVICE(0x04fa, 0x2490) },
{ },
};
MODULE_DEVICE_TABLE(usb, ds_id_table);
static struct usb_driver ds_driver = {
.name = "DS9490R",
.probe = ds_probe,
.disconnect = ds_disconnect,
.id_table = ds_id_table,
};
module_usb_driver(ds_driver); module_usb_driver(ds_driver);
MODULE_LICENSE("GPL");
MODULE_AUTHOR("Evgeniy Polyakov <zbr@ioremap.net>"); MODULE_AUTHOR("Evgeniy Polyakov <zbr@ioremap.net>");
MODULE_DESCRIPTION("DS2490 USB <-> W1 bus master driver (DS9490*)"); MODULE_DESCRIPTION("DS2490 USB <-> W1 bus master driver (DS9490*)");
MODULE_LICENSE("GPL");

Просмотреть файл

@ -37,26 +37,6 @@
#include "../w1.h" #include "../w1.h"
#include "../w1_int.h" #include "../w1_int.h"
MODULE_LICENSE("GPL");
MODULE_AUTHOR("Evgeniy Polyakov <zbr@ioremap.net>");
MODULE_DESCRIPTION("Driver for transport(Dallas 1-wire protocol) over VGA DDC(matrox gpio).");
static struct pci_device_id matrox_w1_tbl[] = {
{ PCI_DEVICE(PCI_VENDOR_ID_MATROX, PCI_DEVICE_ID_MATROX_G400) },
{ },
};
MODULE_DEVICE_TABLE(pci, matrox_w1_tbl);
static int matrox_w1_probe(struct pci_dev *, const struct pci_device_id *);
static void matrox_w1_remove(struct pci_dev *);
static struct pci_driver matrox_w1_pci_driver = {
.name = "matrox_w1",
.id_table = matrox_w1_tbl,
.probe = matrox_w1_probe,
.remove = matrox_w1_remove,
};
/* /*
* Matrox G400 DDC registers. * Matrox G400 DDC registers.
*/ */
@ -88,9 +68,6 @@ struct matrox_device
struct w1_bus_master *bus_master; struct w1_bus_master *bus_master;
}; };
static u8 matrox_w1_read_ddc_bit(void *);
static void matrox_w1_write_ddc_bit(void *, u8);
/* /*
* These functions read and write DDC Data bit. * These functions read and write DDC Data bit.
* *
@ -226,4 +203,21 @@ static void matrox_w1_remove(struct pci_dev *pdev)
} }
kfree(dev); kfree(dev);
} }
static struct pci_device_id matrox_w1_tbl[] = {
{ PCI_DEVICE(PCI_VENDOR_ID_MATROX, PCI_DEVICE_ID_MATROX_G400) },
{ },
};
MODULE_DEVICE_TABLE(pci, matrox_w1_tbl);
static struct pci_driver matrox_w1_pci_driver = {
.name = "matrox_w1",
.id_table = matrox_w1_tbl,
.probe = matrox_w1_probe,
.remove = matrox_w1_remove,
};
module_pci_driver(matrox_w1_pci_driver); module_pci_driver(matrox_w1_pci_driver);
MODULE_AUTHOR("Evgeniy Polyakov <zbr@ioremap.net>");
MODULE_DESCRIPTION("Driver for transport(Dallas 1-wire protocol) over VGA DDC(matrox gpio).");
MODULE_LICENSE("GPL");

Просмотреть файл

@ -53,7 +53,10 @@
#define OMAP_HDQ_MAX_USER 4 #define OMAP_HDQ_MAX_USER 4
static DECLARE_WAIT_QUEUE_HEAD(hdq_wait_queue); static DECLARE_WAIT_QUEUE_HEAD(hdq_wait_queue);
static int w1_id; static int w1_id;
module_param(w1_id, int, S_IRUSR);
MODULE_PARM_DESC(w1_id, "1-wire id for the slave detection in HDQ mode");
struct hdq_data { struct hdq_data {
struct device *dev; struct device *dev;
@ -76,36 +79,6 @@ struct hdq_data {
}; };
static int omap_hdq_probe(struct platform_device *pdev);
static int omap_hdq_remove(struct platform_device *pdev);
static const struct of_device_id omap_hdq_dt_ids[] = {
{ .compatible = "ti,omap3-1w" },
{ .compatible = "ti,am4372-hdq" },
{}
};
MODULE_DEVICE_TABLE(of, omap_hdq_dt_ids);
static struct platform_driver omap_hdq_driver = {
.probe = omap_hdq_probe,
.remove = omap_hdq_remove,
.driver = {
.name = "omap_hdq",
.of_match_table = omap_hdq_dt_ids,
},
};
static u8 omap_w1_read_byte(void *_hdq);
static void omap_w1_write_byte(void *_hdq, u8 byte);
static u8 omap_w1_reset_bus(void *_hdq);
static struct w1_bus_master omap_w1_master = {
.read_byte = omap_w1_read_byte,
.write_byte = omap_w1_write_byte,
.reset_bus = omap_w1_reset_bus,
};
/* HDQ register I/O routines */ /* HDQ register I/O routines */
static inline u8 hdq_reg_in(struct hdq_data *hdq_data, u32 offset) static inline u8 hdq_reg_in(struct hdq_data *hdq_data, u32 offset)
{ {
@ -678,6 +651,12 @@ static void omap_w1_write_byte(void *_hdq, u8 byte)
} }
} }
static struct w1_bus_master omap_w1_master = {
.read_byte = omap_w1_read_byte,
.write_byte = omap_w1_write_byte,
.reset_bus = omap_w1_reset_bus,
};
static int omap_hdq_probe(struct platform_device *pdev) static int omap_hdq_probe(struct platform_device *pdev)
{ {
struct device *dev = &pdev->dev; struct device *dev = &pdev->dev;
@ -787,10 +766,22 @@ static int omap_hdq_remove(struct platform_device *pdev)
return 0; return 0;
} }
module_platform_driver(omap_hdq_driver); static const struct of_device_id omap_hdq_dt_ids[] = {
{ .compatible = "ti,omap3-1w" },
{ .compatible = "ti,am4372-hdq" },
{}
};
MODULE_DEVICE_TABLE(of, omap_hdq_dt_ids);
module_param(w1_id, int, S_IRUSR); static struct platform_driver omap_hdq_driver = {
MODULE_PARM_DESC(w1_id, "1-wire id for the slave detection in HDQ mode"); .probe = omap_hdq_probe,
.remove = omap_hdq_remove,
.driver = {
.name = "omap_hdq",
.of_match_table = omap_hdq_dt_ids,
},
};
module_platform_driver(omap_hdq_driver);
MODULE_AUTHOR("Texas Instruments"); MODULE_AUTHOR("Texas Instruments");
MODULE_DESCRIPTION("HDQ-1W driver Library"); MODULE_DESCRIPTION("HDQ-1W driver Library");

Просмотреть файл

@ -25,6 +25,8 @@
#define HDQ_CMD_WRITE (1<<7) #define HDQ_CMD_WRITE (1<<7)
static int F_ID; static int F_ID;
module_param(F_ID, int, S_IRUSR);
MODULE_PARM_DESC(F_ID, "1-wire slave FID for BQ device");
static int w1_bq27000_read(struct device *dev, unsigned int reg) static int w1_bq27000_read(struct device *dev, unsigned int reg)
{ {
@ -106,13 +108,10 @@ static void __exit w1_bq27000_exit(void)
w1_unregister_family(&w1_bq27000_family); w1_unregister_family(&w1_bq27000_family);
} }
module_init(w1_bq27000_init); module_init(w1_bq27000_init);
module_exit(w1_bq27000_exit); module_exit(w1_bq27000_exit);
module_param(F_ID, int, S_IRUSR);
MODULE_PARM_DESC(F_ID, "1-wire slave FID for BQ device");
MODULE_ALIAS("w1-family-" __stringify(W1_FAMILY_BQ27000));
MODULE_LICENSE("GPL");
MODULE_AUTHOR("Texas Instruments Ltd"); MODULE_AUTHOR("Texas Instruments Ltd");
MODULE_DESCRIPTION("HDQ/1-wire slave driver bq27000 battery monitor chip"); MODULE_DESCRIPTION("HDQ/1-wire slave driver bq27000 battery monitor chip");
MODULE_LICENSE("GPL");
MODULE_ALIAS("w1-family-" __stringify(W1_FAMILY_BQ27000));

Просмотреть файл

@ -21,10 +21,6 @@
#include "../w1_int.h" #include "../w1_int.h"
#include "../w1_family.h" #include "../w1_family.h"
MODULE_LICENSE("GPL");
MODULE_AUTHOR("Scott Alfter <scott@alfter.us>");
MODULE_DESCRIPTION("w1 family 12 driver for DS2406 2 Pin IO");
#define W1_F12_FUNC_READ_STATUS 0xAA #define W1_F12_FUNC_READ_STATUS 0xAA
#define W1_F12_FUNC_WRITE_STATUS 0x55 #define W1_F12_FUNC_WRITE_STATUS 0x55
@ -154,3 +150,7 @@ static struct w1_family w1_family_12 = {
.fops = &w1_f12_fops, .fops = &w1_f12_fops,
}; };
module_w1_family(w1_family_12); module_w1_family(w1_family_12);
MODULE_AUTHOR("Scott Alfter <scott@alfter.us>");
MODULE_DESCRIPTION("w1 family 12 driver for DS2406 2 Pin IO");
MODULE_LICENSE("GPL");

Просмотреть файл

@ -19,12 +19,6 @@
#include "../w1_int.h" #include "../w1_int.h"
#include "../w1_family.h" #include "../w1_family.h"
MODULE_LICENSE("GPL");
MODULE_AUTHOR("Jean-Francois Dagenais <dagenaisj@sonatest.com>");
MODULE_DESCRIPTION("w1 family 29 driver for DS2408 8 Pin IO");
MODULE_ALIAS("w1-family-" __stringify(W1_FAMILY_DS2408));
#define W1_F29_RETRIES 3 #define W1_F29_RETRIES 3
#define W1_F29_REG_LOGIG_STATE 0x88 /* R */ #define W1_F29_REG_LOGIG_STATE 0x88 /* R */
@ -352,3 +346,8 @@ static struct w1_family w1_family_29 = {
.fops = &w1_f29_fops, .fops = &w1_f29_fops,
}; };
module_w1_family(w1_family_29); module_w1_family(w1_family_29);
MODULE_AUTHOR("Jean-Francois Dagenais <dagenaisj@sonatest.com>");
MODULE_DESCRIPTION("w1 family 29 driver for DS2408 8 Pin IO");
MODULE_LICENSE("GPL");
MODULE_ALIAS("w1-family-" __stringify(W1_FAMILY_DS2408));

Просмотреть файл

@ -20,11 +20,6 @@
#include "../w1_int.h" #include "../w1_int.h"
#include "../w1_family.h" #include "../w1_family.h"
MODULE_LICENSE("GPL");
MODULE_AUTHOR("Mariusz Bialonczyk <manio@skyboo.net>");
MODULE_DESCRIPTION("w1 family 3a driver for DS2413 2 Pin IO");
MODULE_ALIAS("w1-family-" __stringify(W1_FAMILY_DS2413));
#define W1_F3A_RETRIES 3 #define W1_F3A_RETRIES 3
#define W1_F3A_FUNC_PIO_ACCESS_READ 0xF5 #define W1_F3A_FUNC_PIO_ACCESS_READ 0xF5
#define W1_F3A_FUNC_PIO_ACCESS_WRITE 0x5A #define W1_F3A_FUNC_PIO_ACCESS_WRITE 0x5A
@ -136,3 +131,8 @@ static struct w1_family w1_family_3a = {
.fops = &w1_f3a_fops, .fops = &w1_f3a_fops,
}; };
module_w1_family(w1_family_3a); module_w1_family(w1_family_3a);
MODULE_AUTHOR("Mariusz Bialonczyk <manio@skyboo.net>");
MODULE_DESCRIPTION("w1 family 3a driver for DS2413 2 Pin IO");
MODULE_LICENSE("GPL");
MODULE_ALIAS("w1-family-" __stringify(W1_FAMILY_DS2413));

Просмотреть файл

@ -140,7 +140,7 @@ static struct w1_family w1_family_1d = {
}; };
module_w1_family(w1_family_1d); module_w1_family(w1_family_1d);
MODULE_LICENSE("GPL");
MODULE_AUTHOR("Mika Laitio <lamikr@pilppa.org>"); MODULE_AUTHOR("Mika Laitio <lamikr@pilppa.org>");
MODULE_DESCRIPTION("w1 family 1d driver for DS2423, 4 counters and 4kb ram"); MODULE_DESCRIPTION("w1 family 1d driver for DS2423, 4 counters and 4kb ram");
MODULE_LICENSE("GPL");
MODULE_ALIAS("w1-family-" __stringify(W1_COUNTER_DS2423)); MODULE_ALIAS("w1-family-" __stringify(W1_COUNTER_DS2423));

Просмотреть файл

@ -290,7 +290,7 @@ static struct w1_family w1_family_2d = {
}; };
module_w1_family(w1_family_2d); module_w1_family(w1_family_2d);
MODULE_LICENSE("GPL");
MODULE_AUTHOR("Bernhard Weirich <bernhard.weirich@riedel.net>"); MODULE_AUTHOR("Bernhard Weirich <bernhard.weirich@riedel.net>");
MODULE_DESCRIPTION("w1 family 2d driver for DS2431, 1kb EEPROM"); MODULE_DESCRIPTION("w1 family 2d driver for DS2431, 1kb EEPROM");
MODULE_LICENSE("GPL");
MODULE_ALIAS("w1-family-" __stringify(W1_EEPROM_DS2431)); MODULE_ALIAS("w1-family-" __stringify(W1_EEPROM_DS2431));

Просмотреть файл

@ -26,11 +26,6 @@
#include "../w1_int.h" #include "../w1_int.h"
#include "../w1_family.h" #include "../w1_family.h"
MODULE_LICENSE("GPL");
MODULE_AUTHOR("Ben Gardner <bgardner@wabtec.com>");
MODULE_DESCRIPTION("w1 family 23 driver for DS2433, 4kb EEPROM");
MODULE_ALIAS("w1-family-" __stringify(W1_EEPROM_DS2433));
#define W1_EEPROM_SIZE 512 #define W1_EEPROM_SIZE 512
#define W1_PAGE_COUNT 16 #define W1_PAGE_COUNT 16
#define W1_PAGE_SIZE 32 #define W1_PAGE_SIZE 32
@ -306,3 +301,8 @@ static struct w1_family w1_family_23 = {
.fops = &w1_f23_fops, .fops = &w1_f23_fops,
}; };
module_w1_family(w1_family_23); module_w1_family(w1_family_23);
MODULE_AUTHOR("Ben Gardner <bgardner@wabtec.com>");
MODULE_DESCRIPTION("w1 family 23 driver for DS2433, 4kb EEPROM");
MODULE_LICENSE("GPL");
MODULE_ALIAS("w1-family-" __stringify(W1_EEPROM_DS2433));

Просмотреть файл

@ -63,11 +63,13 @@ int w1_ds2760_read(struct device *dev, char *buf, int addr, size_t count)
{ {
return w1_ds2760_io(dev, buf, addr, count, 0); return w1_ds2760_io(dev, buf, addr, count, 0);
} }
EXPORT_SYMBOL(w1_ds2760_read);
int w1_ds2760_write(struct device *dev, char *buf, int addr, size_t count) int w1_ds2760_write(struct device *dev, char *buf, int addr, size_t count)
{ {
return w1_ds2760_io(dev, buf, addr, count, 1); return w1_ds2760_io(dev, buf, addr, count, 1);
} }
EXPORT_SYMBOL(w1_ds2760_write);
static int w1_ds2760_eeprom_cmd(struct device *dev, int addr, int cmd) static int w1_ds2760_eeprom_cmd(struct device *dev, int addr, int cmd)
{ {
@ -91,11 +93,13 @@ int w1_ds2760_store_eeprom(struct device *dev, int addr)
{ {
return w1_ds2760_eeprom_cmd(dev, addr, W1_DS2760_COPY_DATA); return w1_ds2760_eeprom_cmd(dev, addr, W1_DS2760_COPY_DATA);
} }
EXPORT_SYMBOL(w1_ds2760_store_eeprom);
int w1_ds2760_recall_eeprom(struct device *dev, int addr) int w1_ds2760_recall_eeprom(struct device *dev, int addr)
{ {
return w1_ds2760_eeprom_cmd(dev, addr, W1_DS2760_RECALL_DATA); return w1_ds2760_eeprom_cmd(dev, addr, W1_DS2760_RECALL_DATA);
} }
EXPORT_SYMBOL(w1_ds2760_recall_eeprom);
static ssize_t w1_slave_read(struct file *filp, struct kobject *kobj, static ssize_t w1_slave_read(struct file *filp, struct kobject *kobj,
struct bin_attribute *bin_attr, char *buf, struct bin_attribute *bin_attr, char *buf,
@ -164,12 +168,7 @@ static struct w1_family w1_ds2760_family = {
}; };
module_w1_family(w1_ds2760_family); module_w1_family(w1_ds2760_family);
EXPORT_SYMBOL(w1_ds2760_read);
EXPORT_SYMBOL(w1_ds2760_write);
EXPORT_SYMBOL(w1_ds2760_store_eeprom);
EXPORT_SYMBOL(w1_ds2760_recall_eeprom);
MODULE_LICENSE("GPL");
MODULE_AUTHOR("Szabolcs Gyurko <szabolcs.gyurko@tlt.hu>"); MODULE_AUTHOR("Szabolcs Gyurko <szabolcs.gyurko@tlt.hu>");
MODULE_DESCRIPTION("1-wire Driver Dallas 2760 battery monitor chip"); MODULE_DESCRIPTION("1-wire Driver Dallas 2760 battery monitor chip");
MODULE_LICENSE("GPL");
MODULE_ALIAS("w1-family-" __stringify(W1_FAMILY_DS2760)); MODULE_ALIAS("w1-family-" __stringify(W1_FAMILY_DS2760));

Просмотреть файл

@ -156,7 +156,7 @@ static struct w1_family w1_ds2780_family = {
}; };
module_w1_family(w1_ds2780_family); module_w1_family(w1_ds2780_family);
MODULE_LICENSE("GPL");
MODULE_AUTHOR("Clifton Barnes <cabarnes@indesign-llc.com>"); MODULE_AUTHOR("Clifton Barnes <cabarnes@indesign-llc.com>");
MODULE_DESCRIPTION("1-wire Driver for Maxim/Dallas DS2780 Stand-Alone Fuel Gauge IC"); MODULE_DESCRIPTION("1-wire Driver for Maxim/Dallas DS2780 Stand-Alone Fuel Gauge IC");
MODULE_LICENSE("GPL");
MODULE_ALIAS("w1-family-" __stringify(W1_FAMILY_DS2780)); MODULE_ALIAS("w1-family-" __stringify(W1_FAMILY_DS2780));

Просмотреть файл

@ -153,7 +153,7 @@ static struct w1_family w1_ds2781_family = {
}; };
module_w1_family(w1_ds2781_family); module_w1_family(w1_ds2781_family);
MODULE_LICENSE("GPL");
MODULE_AUTHOR("Renata Sayakhova <renata@oktetlabs.ru>"); MODULE_AUTHOR("Renata Sayakhova <renata@oktetlabs.ru>");
MODULE_DESCRIPTION("1-wire Driver for Maxim/Dallas DS2781 Stand-Alone Fuel Gauge IC"); MODULE_DESCRIPTION("1-wire Driver for Maxim/Dallas DS2781 Stand-Alone Fuel Gauge IC");
MODULE_LICENSE("GPL");
MODULE_ALIAS("w1-family-" __stringify(W1_FAMILY_DS2781)); MODULE_ALIAS("w1-family-" __stringify(W1_FAMILY_DS2781));

Просмотреть файл

@ -24,11 +24,6 @@
#include "../w1_int.h" #include "../w1_int.h"
#include "../w1_family.h" #include "../w1_family.h"
MODULE_LICENSE("GPL");
MODULE_AUTHOR("Markus Franke <franke.m@sebakmt.com>, <franm@hrz.tu-chemnitz.de>");
MODULE_DESCRIPTION("w1 family 1C driver for DS28E04, 4kb EEPROM and PIO");
MODULE_ALIAS("w1-family-" __stringify(W1_FAMILY_DS28E04));
/* Allow the strong pullup to be disabled, but default to enabled. /* Allow the strong pullup to be disabled, but default to enabled.
* If it was disabled a parasite powered device might not get the required * If it was disabled a parasite powered device might not get the required
* current to copy the data from the scratchpad to EEPROM. If it is enabled * current to copy the data from the scratchpad to EEPROM. If it is enabled
@ -428,3 +423,8 @@ static struct w1_family w1_family_1C = {
.fops = &w1_f1C_fops, .fops = &w1_f1C_fops,
}; };
module_w1_family(w1_family_1C); module_w1_family(w1_family_1C);
MODULE_AUTHOR("Markus Franke <franke.m@sebakmt.com>, <franm@hrz.tu-chemnitz.de>");
MODULE_DESCRIPTION("w1 family 1C driver for DS28E04, 4kb EEPROM and PIO");
MODULE_LICENSE("GPL");
MODULE_ALIAS("w1-family-" __stringify(W1_FAMILY_DS28E04));

Просмотреть файл

@ -31,12 +31,6 @@
#include "../w1_int.h" #include "../w1_int.h"
#include "../w1_family.h" #include "../w1_family.h"
MODULE_LICENSE("GPL");
MODULE_AUTHOR("Evgeniy Polyakov <zbr@ioremap.net>");
MODULE_DESCRIPTION("Driver for 1-wire Dallas network protocol, 64bit memory family.");
MODULE_ALIAS("w1-family-" __stringify(W1_FAMILY_SMEM_01));
MODULE_ALIAS("w1-family-" __stringify(W1_FAMILY_SMEM_81));
static struct w1_family w1_smem_family_01 = { static struct w1_family w1_smem_family_01 = {
.fid = W1_FAMILY_SMEM_01, .fid = W1_FAMILY_SMEM_01,
}; };
@ -70,3 +64,9 @@ static void __exit w1_smem_fini(void)
module_init(w1_smem_init); module_init(w1_smem_init);
module_exit(w1_smem_fini); module_exit(w1_smem_fini);
MODULE_AUTHOR("Evgeniy Polyakov <zbr@ioremap.net>");
MODULE_DESCRIPTION("Driver for 1-wire Dallas network protocol, 64bit memory family.");
MODULE_LICENSE("GPL");
MODULE_ALIAS("w1-family-" __stringify(W1_FAMILY_SMEM_01));
MODULE_ALIAS("w1-family-" __stringify(W1_FAMILY_SMEM_81));

Просмотреть файл

@ -34,15 +34,6 @@
#include "../w1_int.h" #include "../w1_int.h"
#include "../w1_family.h" #include "../w1_family.h"
MODULE_LICENSE("GPL");
MODULE_AUTHOR("Evgeniy Polyakov <zbr@ioremap.net>");
MODULE_DESCRIPTION("Driver for 1-wire Dallas network protocol, temperature family.");
MODULE_ALIAS("w1-family-" __stringify(W1_THERM_DS18S20));
MODULE_ALIAS("w1-family-" __stringify(W1_THERM_DS1822));
MODULE_ALIAS("w1-family-" __stringify(W1_THERM_DS18B20));
MODULE_ALIAS("w1-family-" __stringify(W1_THERM_DS1825));
MODULE_ALIAS("w1-family-" __stringify(W1_THERM_DS28EA00));
/* Allow the strong pullup to be disabled, but default to enabled. /* Allow the strong pullup to be disabled, but default to enabled.
* If it was disabled a parasite powered device might not get the require * If it was disabled a parasite powered device might not get the require
* current to do a temperature conversion. If it is enabled parasite powered * current to do a temperature conversion. If it is enabled parasite powered
@ -646,3 +637,12 @@ static void __exit w1_therm_fini(void)
module_init(w1_therm_init); module_init(w1_therm_init);
module_exit(w1_therm_fini); module_exit(w1_therm_fini);
MODULE_AUTHOR("Evgeniy Polyakov <zbr@ioremap.net>");
MODULE_DESCRIPTION("Driver for 1-wire Dallas network protocol, temperature family.");
MODULE_LICENSE("GPL");
MODULE_ALIAS("w1-family-" __stringify(W1_THERM_DS18S20));
MODULE_ALIAS("w1-family-" __stringify(W1_THERM_DS1822));
MODULE_ALIAS("w1-family-" __stringify(W1_THERM_DS18B20));
MODULE_ALIAS("w1-family-" __stringify(W1_THERM_DS1825));
MODULE_ALIAS("w1-family-" __stringify(W1_THERM_DS28EA00));

Просмотреть файл

@ -33,20 +33,15 @@
#include "w1_family.h" #include "w1_family.h"
#include "w1_netlink.h" #include "w1_netlink.h"
MODULE_LICENSE("GPL");
MODULE_AUTHOR("Evgeniy Polyakov <zbr@ioremap.net>");
MODULE_DESCRIPTION("Driver for 1-wire Dallas network protocol.");
static int w1_timeout = 10; static int w1_timeout = 10;
static int w1_timeout_us = 0;
int w1_max_slave_count = 64;
int w1_max_slave_ttl = 10;
module_param_named(timeout, w1_timeout, int, 0); module_param_named(timeout, w1_timeout, int, 0);
MODULE_PARM_DESC(timeout, "time in seconds between automatic slave searches"); MODULE_PARM_DESC(timeout, "time in seconds between automatic slave searches");
static int w1_timeout_us = 0;
module_param_named(timeout_us, w1_timeout_us, int, 0); module_param_named(timeout_us, w1_timeout_us, int, 0);
MODULE_PARM_DESC(timeout_us, MODULE_PARM_DESC(timeout_us,
"time in microseconds between automatic slave searches"); "time in microseconds between automatic slave searches");
/* A search stops when w1_max_slave_count devices have been found in that /* A search stops when w1_max_slave_count devices have been found in that
* search. The next search will start over and detect the same set of devices * search. The next search will start over and detect the same set of devices
* on a static 1-wire bus. Memory is not allocated based on this number, just * on a static 1-wire bus. Memory is not allocated based on this number, just
@ -55,9 +50,12 @@ MODULE_PARM_DESC(timeout_us,
* device on the network and w1_max_slave_count is set to 1, the device id can * device on the network and w1_max_slave_count is set to 1, the device id can
* be read directly skipping the normal slower search process. * be read directly skipping the normal slower search process.
*/ */
int w1_max_slave_count = 64;
module_param_named(max_slave_count, w1_max_slave_count, int, 0); module_param_named(max_slave_count, w1_max_slave_count, int, 0);
MODULE_PARM_DESC(max_slave_count, MODULE_PARM_DESC(max_slave_count,
"maximum number of slaves detected in a search"); "maximum number of slaves detected in a search");
int w1_max_slave_ttl = 10;
module_param_named(slave_ttl, w1_max_slave_ttl, int, 0); module_param_named(slave_ttl, w1_max_slave_ttl, int, 0);
MODULE_PARM_DESC(slave_ttl, MODULE_PARM_DESC(slave_ttl,
"Number of searches not seeing a slave before it will be removed"); "Number of searches not seeing a slave before it will be removed");
@ -1228,3 +1226,7 @@ static void __exit w1_fini(void)
module_init(w1_init); module_init(w1_init);
module_exit(w1_fini); module_exit(w1_fini);
MODULE_AUTHOR("Evgeniy Polyakov <zbr@ioremap.net>");
MODULE_DESCRIPTION("Driver for 1-wire Dallas network protocol.");
MODULE_LICENSE("GPL");

Просмотреть файл

@ -55,6 +55,7 @@ int w1_register_family(struct w1_family *newf)
return ret; return ret;
} }
EXPORT_SYMBOL(w1_register_family);
/** /**
* w1_unregister_family() - unregister a device family driver * w1_unregister_family() - unregister a device family driver
@ -87,6 +88,7 @@ void w1_unregister_family(struct w1_family *fent)
flush_signals(current); flush_signals(current);
} }
} }
EXPORT_SYMBOL(w1_unregister_family);
/* /*
* Should be called under w1_flock held. * Should be called under w1_flock held.
@ -136,6 +138,3 @@ void __w1_family_get(struct w1_family *f)
atomic_inc(&f->refcnt); atomic_inc(&f->refcnt);
smp_mb__after_atomic(); smp_mb__after_atomic();
} }
EXPORT_SYMBOL(w1_unregister_family);
EXPORT_SYMBOL(w1_register_family);

Просмотреть файл

@ -179,6 +179,7 @@ err_out_free_dev:
return retval; return retval;
} }
EXPORT_SYMBOL(w1_add_master_device);
void __w1_remove_master_device(struct w1_master *dev) void __w1_remove_master_device(struct w1_master *dev)
{ {
@ -251,6 +252,4 @@ void w1_remove_master_device(struct w1_bus_master *bm)
__w1_remove_master_device(found); __w1_remove_master_device(found);
} }
EXPORT_SYMBOL(w1_add_master_device);
EXPORT_SYMBOL(w1_remove_master_device); EXPORT_SYMBOL(w1_remove_master_device);