| Madhusudhan Chikkature | e0a2938 | 2008-11-12 13:27:12 -0800 | [diff] [blame] | 1 | Kernel driver for omap HDQ/1-wire module. | 
 | 2 | ======================================== | 
 | 3 |  | 
 | 4 | Supported chips: | 
 | 5 | ================ | 
 | 6 | 	HDQ/1-wire controller on the TI OMAP 2430/3430 platforms. | 
 | 7 |  | 
 | 8 | A useful link about HDQ basics: | 
 | 9 | =============================== | 
| Justin P. Mattock | 0ea6e61 | 2010-07-23 20:51:24 -0700 | [diff] [blame] | 10 | http://focus.ti.com/lit/an/slua408a/slua408a.pdf | 
| Madhusudhan Chikkature | e0a2938 | 2008-11-12 13:27:12 -0800 | [diff] [blame] | 11 |  | 
 | 12 | Description: | 
 | 13 | ============ | 
 | 14 | The HDQ/1-Wire module of TI OMAP2430/3430 platforms implement the hardware | 
 | 15 | protocol of the master functions of the Benchmark HDQ and the Dallas | 
 | 16 | Semiconductor 1-Wire protocols. These protocols use a single wire for | 
 | 17 | communication between the master (HDQ/1-Wire controller) and the slave | 
 | 18 | (HDQ/1-Wire external compliant device). | 
 | 19 |  | 
 | 20 | A typical application of the HDQ/1-Wire module is the communication with battery | 
 | 21 | monitor (gas gauge) integrated circuits. | 
 | 22 |  | 
 | 23 | The controller supports operation in both HDQ and 1-wire mode. The essential | 
 | 24 | difference between the HDQ and 1-wire mode is how the slave device responds to | 
 | 25 | initialization pulse.In HDQ mode, the firmware does not require the host to | 
 | 26 | create an initialization pulse to the slave.However, the slave can be reset by | 
 | 27 | using an initialization pulse (also referred to as a break pulse).The slave | 
 | 28 | does not respond with a presence pulse as it does in the 1-Wire protocol. | 
 | 29 |  | 
 | 30 | Remarks: | 
 | 31 | ======== | 
 | 32 | The driver (drivers/w1/masters/omap_hdq.c) supports the HDQ mode of the | 
 | 33 | controller. In this mode, as we can not read the ID which obeys the W1 | 
 | 34 | spec(family:id:crc), a module parameter can be passed to the driver which will | 
 | 35 | be used to calculate the CRC and pass back an appropriate slave ID to the W1 | 
 | 36 | core. | 
 | 37 |  | 
 | 38 | By default the master driver and the BQ slave i/f | 
 | 39 | driver(drivers/w1/slaves/w1_bq27000.c) sets the ID to 1. | 
 | 40 | Please note to load both the modules with a different ID if required, but note | 
 | 41 | that the ID used should be same for both master and slave driver loading. | 
 | 42 |  | 
 | 43 | e.g: | 
 | 44 | insmod omap_hdq.ko W1_ID=2 | 
 | 45 | inamod w1_bq27000.ko F_ID=2 | 
 | 46 |  |