xref: /linux/Documentation/w1/masters/omap-hdq.rst (revision c532de5a67a70f8533d495f8f2aaa9a0491c3ad0)
1========================================
2Kernel driver for omap HDQ/1-wire module
3========================================
4
5Supported chips:
6================
7HDQ/1-wire controller on the TI OMAP 2430/3430 platforms.
8
9A useful link about HDQ basics:
10===============================
11http://focus.ti.com/lit/an/slua408a/slua408a.pdf
12
13Description:
14============
15The HDQ/1-Wire module of TI OMAP2430/3430 platforms implement the hardware
16protocol of the master functions of the Benchmark HDQ and the Dallas
17Semiconductor 1-Wire protocols. These protocols use a single wire for
18communication between the master (HDQ/1-Wire controller) and the slave
19(HDQ/1-Wire external compliant device).
20
21A typical application of the HDQ/1-Wire module is the communication with battery
22monitor (gas gauge) integrated circuits.
23
24The controller supports operation in both HDQ and 1-wire mode. The essential
25difference between the HDQ and 1-wire mode is how the slave device responds to
26initialization pulse.In HDQ mode, the firmware does not require the host to
27create an initialization pulse to the slave.However, the slave can be reset by
28using an initialization pulse (also referred to as a break pulse).The slave
29does not respond with a presence pulse as it does in the 1-Wire protocol.
30
31Remarks:
32========
33The driver (drivers/w1/masters/omap_hdq.c) supports the HDQ mode of the
34controller. In this mode, as we can not read the ID which obeys the W1
35spec(family:id:crc), a module parameter can be passed to the driver which will
36be used to calculate the CRC and pass back an appropriate slave ID to the W1
37core.
38
39By default the master driver and the BQ slave i/f
40driver(drivers/w1/slaves/w1_bq27000.c) sets the ID to 1.
41Please note to load both the modules with a different ID if required, but note
42that the ID used should be same for both master and slave driver loading.
43
44e.g::
45
46  insmod omap_hdq.ko W1_ID=2
47  insmod w1_bq27000.ko F_ID=2
48
49The driver also supports 1-wire mode. In this mode, there is no need to
50pass slave ID as parameter. The driver will auto-detect slaves connected
51to the bus using SEARCH_ROM procedure. 1-wire mode can be selected by
52setting "ti,mode" property to "1w" in DT (see
53Documentation/devicetree/bindings/w1/omap-hdq.txt for more details).
54By default driver is in HDQ mode.
55