Blame view

Documentation/smsc_ece1099.txt 2.38 KB
8284328cd   Sourav Poddar   mfd: smsc: Add su...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
  What is smsc-ece1099?
  ----------------------
  
  The ECE1099 is a 40-Pin 3.3V Keyboard Scan Expansion
  or GPIO Expansion device. The device supports a keyboard
  scan matrix of 23x8. The device is connected to a Master
  via the SMSC BC-Link interface or via the SMBus.
  Keypad scan Input(KSI) and Keypad Scan Output(KSO) signals
  are multiplexed with GPIOs.
  
  Interrupt generation
  --------------------
  
  Interrupts can be generated by an edge detection on a GPIO
  pin or an edge detection on one of the bus interface pins.
  Interrupts can also be detected on the keyboard scan interface.
  The bus interrupt pin (BC_INT# or SMBUS_INT#) is asserted if
  any bit in one of the Interrupt Status registers is 1 and
  the corresponding Interrupt Mask bit is also 1.
  
  In order for software to determine which device is the source
  of an interrupt, it should first read the Group Interrupt Status Register
  to determine which Status register group is a source for the interrupt.
  Software should read both the Status register and the associated Mask register,
  then AND the two values together. Bits that are 1 in the result of the AND
  are active interrupts. Software clears an interrupt by writing a 1 to the
  corresponding bit in the Status register.
  
  Communication Protocol
  ----------------------
  
  - SMbus slave Interface
  	The host processor communicates with the ECE1099 device
  	through a series of read/write registers via the SMBus
  	interface. SMBus is a serial communication protocol between
  	a computer host and its peripheral devices. The SMBus data
  	rate is 10KHz minimum to 400 KHz maximum
  
  - Slave Bus Interface
  	The ECE1099 device SMBus implementation is a subset of the
  	SMBus interface to the host. The device is a slave-only SMBus device.
  	The implementation in the device is a subset of SMBus since it
  	only supports four protocols.
  
  	The Write Byte, Read Byte, Send Byte, and Receive Byte protocols are the
  	only valid SMBus protocols for the device.
  
  - BC-LinkTM Interface
  	The BC-Link is a proprietary bus that allows communication
  	between a Master device and a Companion device. The Master
  	device uses this serial bus to read and write registers
  	located on the Companion device. The bus comprises three signals,
  	BC_CLK, BC_DAT and BC_INT#. The Master device always provides the
  	clock, BC_CLK, and the Companion device is the source for an
  	independent asynchronous interrupt signal, BC_INT#. The ECE1099
  	supports BC-Link speeds up to 24MHz.