On 11/26/2014 06:04 PM, Uwe Kleine-König wrote: > On Wed, Nov 26, 2014 at 03:59:53PM +0200, Grygorii Strashko wrote: >> Having a board where the I2C bus locks up occasionally made it clear >> that the bus recovery in the i2c-davinci driver will only work on >> some boards, because on regular boards, this will only toggle GPIO >> lines that aren't muxed to the actual pins. >> >> The I2C controller on SoCs like da850 (and da830), Keystone 2 has the >> built-in capability to bit-bang its lines by using the ICPFUNC registers >> of the i2c controller. >> Implement the suggested procedure by toggling SCL and checking SDA using >> the ICPFUNC registers of the I2C controller when present. Allow platforms >> to indicate the presence of the ICPFUNC registers with a has_pfunc platform >> data flag and add optional DT property "ti,has-pfunc" to indicate >> the same in DT. > On what does it depend if this pfunc stuff works or not? Only the SoC, > or also on some board specific properties? SoC / set of SoCs. Also, similar feature is supported by OMAP and AM335x/AM437x SoCs using I2C_SYSTEST register. > Given the former using the > compatible string to detect its availability would be better. (In this > case also sorry, didn't consider this case when requesting the property > in the last round.) > > The patch looks ok. regards, -grygorii -- To unsubscribe from this list: send the line "unsubscribe linux-i2c" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html