Back to home page

OSCL-LXR

 
 

    


0001 ========================================
0002 Kernel driver for omap HDQ/1-wire module
0003 ========================================
0004 
0005 Supported chips:
0006 ================
0007 HDQ/1-wire controller on the TI OMAP 2430/3430 platforms.
0008 
0009 A useful link about HDQ basics:
0010 ===============================
0011 http://focus.ti.com/lit/an/slua408a/slua408a.pdf
0012 
0013 Description:
0014 ============
0015 The HDQ/1-Wire module of TI OMAP2430/3430 platforms implement the hardware
0016 protocol of the master functions of the Benchmark HDQ and the Dallas
0017 Semiconductor 1-Wire protocols. These protocols use a single wire for
0018 communication between the master (HDQ/1-Wire controller) and the slave
0019 (HDQ/1-Wire external compliant device).
0020 
0021 A typical application of the HDQ/1-Wire module is the communication with battery
0022 monitor (gas gauge) integrated circuits.
0023 
0024 The controller supports operation in both HDQ and 1-wire mode. The essential
0025 difference between the HDQ and 1-wire mode is how the slave device responds to
0026 initialization pulse.In HDQ mode, the firmware does not require the host to
0027 create an initialization pulse to the slave.However, the slave can be reset by
0028 using an initialization pulse (also referred to as a break pulse).The slave
0029 does not respond with a presence pulse as it does in the 1-Wire protocol.
0030 
0031 Remarks:
0032 ========
0033 The driver (drivers/w1/masters/omap_hdq.c) supports the HDQ mode of the
0034 controller. In this mode, as we can not read the ID which obeys the W1
0035 spec(family:id:crc), a module parameter can be passed to the driver which will
0036 be used to calculate the CRC and pass back an appropriate slave ID to the W1
0037 core.
0038 
0039 By default the master driver and the BQ slave i/f
0040 driver(drivers/w1/slaves/w1_bq27000.c) sets the ID to 1.
0041 Please note to load both the modules with a different ID if required, but note
0042 that the ID used should be same for both master and slave driver loading.
0043 
0044 e.g::
0045 
0046   insmod omap_hdq.ko W1_ID=2
0047   insmod w1_bq27000.ko F_ID=2
0048 
0049 The driver also supports 1-wire mode. In this mode, there is no need to
0050 pass slave ID as parameter. The driver will auto-detect slaves connected
0051 to the bus using SEARCH_ROM procedure. 1-wire mode can be selected by
0052 setting "ti,mode" property to "1w" in DT (see
0053 Documentation/devicetree/bindings/w1/omap-hdq.txt for more details).
0054 By default driver is in HDQ mode.