blob: eace3046a8582b23beb0928fe28d698b9bf1194a [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001Any w1 device must be connected to w1 bus master device - for example
2ds9490 usb device or w1-over-GPIO or RS232 converter.
3Driver for w1 bus master must provide several functions(you can find
4them in struct w1_bus_master definition in w1.h) which then will be
5called by w1 core to send various commands over w1 bus(by default it is
6reset and search commands). When some device is found on the bus, w1 core
7checks if driver for it's family is loaded.
8If driver is loaded w1 core creates new w1_slave object and registers it
9in the system(creates some generic sysfs files(struct w1_family_ops in
10w1_family.h), notifies any registered listener and so on...).
11It is device driver's business to provide any communication method
12upstream.
13For example w1_therm driver(ds18?20 thermal sensor family driver)
14provides temperature reading function which is bound to ->rbin() method
15of the above w1_family_ops structure.
16w1_smem - driver for simple 64bit memory cell provides ID reading
17method.
18
19You can call above methods by reading appropriate sysfs files.