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