aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/i2c/busses/i2c-uniphier-f.c
Commit message (Collapse)AuthorAge
* i2c: uniphier-f: fix misdetection of incomplete STOP conditionMasahiro Yamada2016-09-24
| | | | | | | | | | | | | Currently, the status register FI2C_SR is checked immediately after a STOP condition is issued in case of the deferred STOP condition. It takes typically 5-10 usec until the corresponding bits in the register are set, so the error check for "stop condition was not completed" is very likely to be false positive. Add wait code to relax the status register check. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
* i2c: uniphier-f: set the adapter to master mode when probingMasahiro Yamada2016-09-08
| | | | | | | | | | | | Currently, the adapter is set to the master mode at the first use. Since then, it is kept in the slave mode, so unexpected glitch signals on the I2C lines may cause the adapter into insane state. Setting it to the master mode along with initialization solves the problem. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> Reported-by: Akio Noda <noda.akio@socionext.com> Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
* i2c: uniphier-f: avoid WARN_ON() of clk_disable() in failure pathMasahiro Yamada2016-09-08
| | | | | | | | | | | | If clk_prepare_enable() fails, clk_disable_unprepare() is called in the failure path, where the enable_count is still zero, so it hits WARN_ON(core->enable_count == 0) in the clk_core_disable(). To fix this, make the clock setting more linear in the probe function so that it can exploit "goto err" in case of error. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
* i2c: uniphier{-f}: don't print error when adding adapter failsWolfram Sang2016-08-22
| | | | | | | | | The core will do this for us now. Signed-off-by: Wolfram Sang <wsa-dev@sang-engineering.com> Acked-by: Masahiro Yamada <yamada.masahiro@socionext.com> Acked-by: Guenter Roeck <linux@roeck-us.net> Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
* i2c: uniphier: add "\n" at the end of error logMasahiro Yamada2016-04-27
| | | | | | | Just in case. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
* i2c: uniphier: fix typos in error messagesMasahiro Yamada2016-02-12
| | | | | Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
* i2c: uniphier_f: error out if bus speed is zeroMasahiro Yamada2015-12-14
| | | | | | | | | There is code to divide by "bus_speed" some lines below. To eliminate the possibility of division by zero, bail out if "clock-frequency" is specified as zero. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
* i2c: uniphier_f: error out if clock rate is zeroMasahiro Yamada2015-12-14
| | | | | | | | | | This input clock is used to generate the sampling clock for I2C bus. If the clock rate is zero, there is something wrong with the clock driver. Bail out with the appropriate error message in such a case. It would make it easier to find the root cause of failure. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
* i2c: uniphier_f: add UniPhier FIFO-builtin I2C driverMasahiro Yamada2015-10-23
Add support for on-chip I2C controller used on newer UniPhier SoCs such as PH1-Pro4, PH1-Pro5, etc. This adapter is equipped with 8-depth TX/RX FIFOs. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> Signed-off-by: Wolfram Sang <wsa@the-dreams.de>