Skip to content
Commit fac368a0 authored by Nikolaus Voss's avatar Nikolaus Voss Committed by Wolfram Sang
Browse files

i2c: at91: add new driver



This driver has the following properties compared to the old driver:
1. Support for multiple interfaces.
2. Interrupt driven I/O as opposed to polling/busy waiting.
3. Support for _one_ repeated start (Sr) condition, which is enough
   for most real-world applications including all SMBus transfer types.
   (The hardware does not support issuing arbitrary Sr conditions on the
    bus.)

testing: SoC: at91sam9g45
	 - BQ20Z80 battery SMBus client.
	 - on a 2.6.38 kernel with several i2c clients (temp-sensor,
	   audio-codec, touchscreen-controller, w1-bridge, io-expanders)

Signed-off-by: default avatarNikolaus Voss <n.voss@weinmann.de>
Reviewed-by: default avatarFelipe Balbi <balbi@ti.com>
Tested-by: default avatarHubert Feurstein <h.feurstein@gmail.com>
Tested-by: default avatarLudovic Desroches <ludovic.desroches@atmel.com>
Reviewed-by: default avatarNicolas Ferre <nicolas.ferre@atmel.com>

[wsa: squashed with the following patches from Ludovic to have some flaws
fixed:
        i2c: at91: use managed resources
        i2c: at91: add warning about transmission issues for some devices
        i2c: at91: use an id table for SoC dependent parameters
]

Signed-off-by: default avatarLudovic Desroches <ludovic.desroches@atmel.com>
Signed-off-by: default avatarWolfram Sang <w.sang@pengutronix.de>
parent a879e9c3
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment