linux/drivers/i2c/busses
addy ke b4a7bd7a38 i2c: rk3x: fix divisor calculation for SCL frequency
I2C_CLKDIV register descripted in the previous version of
RK3x chip manual is incorrect. Plus 1 is required.

The correct formula:
- T(SCL_HIGH) = T(PCLK) * (CLKDIVH + 1) * 8
- T(SCL_LOW) = T(PCLK) * (CLKDIVL + 1) * 8
- (SCL Divsor) = 8 * ((CLKDIVL + 1) + (CLKDIVH + 1))
- SCL = PCLK / (CLK Divsor)

It will be updated to the latest version of chip manual.

Signed-off-by: Addy Ke <addy.ke@rock-chips.com>
Reviewed-by: Doug Anderson <dianders@chromium.org>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
Cc: stable@kernel.org
2014-09-20 18:35:10 +02:00
..
Kconfig i2c: exynos5: always enable HSI2C 2014-08-04 23:19:15 +02:00
Makefile i2c: scx200: drop GPIO based i2c driver 2014-07-16 22:59:11 +02:00
i2c-acorn.c i2c: acorn: is tristate and should use module.h 2014-01-24 18:21:11 +01:00
i2c-ali15x3.c i2c: remove DEFINE_PCI_DEVICE_TABLE macro 2014-03-13 09:44:59 +01:00
i2c-ali1535.c i2c: remove DEFINE_PCI_DEVICE_TABLE macro 2014-03-13 09:44:59 +01:00
i2c-ali1563.c i2c: ali1563: fix checkpatch.pl issues 2014-05-22 10:09:21 +02:00
i2c-amd756-s4882.c Update Jean Delvare's e-mail address 2014-01-29 20:40:08 +01:00
i2c-amd756.c i2c: remove DEFINE_PCI_DEVICE_TABLE macro 2014-03-13 09:44:59 +01:00
i2c-amd8111.c i2c: remove DEFINE_PCI_DEVICE_TABLE macro 2014-03-13 09:44:59 +01:00
i2c-at91.c i2c: at91: add bound checking on SMBus block length bytes 2014-09-02 14:29:33 +02:00
i2c-au1550.c i2c: delete non-required instances of include <linux/init.h> 2014-01-24 18:24:31 +01:00
i2c-bcm-kona.c i2c: i2c-bcm-kona: Fix module build 2013-11-26 14:00:57 +01:00
i2c-bcm2835.c i2c: i2c-bcm2835: Drop class based scanning to improve bootup time 2014-07-16 22:59:57 +02:00
i2c-bfin-twi.c i2c: i2c-bfin-twi: Drop class based scanning to improve bootup time 2014-07-16 22:59:58 +02:00
i2c-cadence.c i2c: Add driver for Cadence I2C controller 2014-04-06 17:47:19 +02:00
i2c-cbus-gpio.c i2c: delete non-required instances of include <linux/init.h> 2014-01-24 18:24:31 +01:00
i2c-cpm.c i2c: cpm: Fix build by adding of_address.h and of_irq.h 2014-03-24 14:54:21 +01:00
i2c-cros-ec-tunnel.c mfd: cros_ec: ec_dev->cmd_xfer() returns number of bytes received from EC 2014-07-09 14:58:20 +01:00
i2c-davinci.c i2c: i2c-davinci: Drop class based scanning to improve bootup time 2014-07-16 22:59:59 +02:00
i2c-designware-core.c i2c: designware: Mask all interrupts during i2c controller enable 2014-05-14 18:14:20 +02:00
i2c-designware-core.h i2c: designware: make SCL and SDA falling time configurable 2014-03-09 09:29:08 +01:00
i2c-designware-pcidrv.c i2c: designware: add new bindings 2014-08-02 13:19:54 +02:00
i2c-designware-platdrv.c i2c: designware: add new bindings 2014-08-02 13:19:54 +02:00
i2c-diolan-u2c.c i2c: remove unnecessary OOM messages 2014-06-02 19:24:33 +02:00
i2c-efm32.c i2c: efm32: correct namespacing of location property 2014-07-17 15:38:49 +02:00
i2c-eg20t.c i2c: remove unnecessary OOM messages 2014-06-02 19:24:33 +02:00
i2c-elektor.c i2c: remove __dev* attributes from subsystem 2012-12-22 20:13:45 +01:00
i2c-exynos5.c i2c: exynos5: remove extra line and fix an assignment 2014-07-17 11:59:21 +02:00
i2c-gpio.c i2c: gpio: Drop dead code in i2c_gpio_remove 2014-08-01 20:01:41 +02:00
i2c-highlander.c i2c: delete non-required instances of include <linux/init.h> 2014-01-24 18:24:31 +01:00
i2c-hydra.c i2c: remove DEFINE_PCI_DEVICE_TABLE macro 2014-03-13 09:44:59 +01:00
i2c-i801.c i2c: i801: Add PCI ID for Intel Braswell 2014-08-19 10:19:47 -05:00
i2c-ibm_iic.c i2c: delete non-required instances of include <linux/init.h> 2014-01-24 18:24:31 +01:00
i2c-ibm_iic.h
i2c-imx.c i2c: imx: Fix format warning for dev_dbg 2014-08-06 20:58:50 +02:00
i2c-iop3xx.c i2c: delete non-required instances of include <linux/init.h> 2014-01-24 18:24:31 +01:00
i2c-iop3xx.h i2c-iop3xx: add iomem annotation 2011-01-04 00:53:37 +00:00
i2c-isch.c i2c: delete non-required instances of include <linux/init.h> 2014-01-24 18:24:31 +01:00
i2c-ismt.c i2c: ismt: use correct length when copy buffer 2014-09-20 14:56:19 +02:00
i2c-kempld.c i2c: Fix Kontron PLD prescaler calculation 2013-08-05 10:31:18 +02:00
i2c-mpc.c i2c: mpc: delete unneeded test before of_node_put 2014-08-08 18:45:30 +02:00
i2c-mv64xxx.c i2c: mv64xxx: continue probe when clock-frequency is missing 2014-09-02 12:34:08 +02:00
i2c-mxs.c i2c: mxs: fix error message in pio transfer 2014-09-20 14:58:19 +02:00
i2c-nforce2-s4985.c Update Jean Delvare's e-mail address 2014-01-29 20:40:08 +01:00
i2c-nforce2.c i2c: remove DEFINE_PCI_DEVICE_TABLE macro 2014-03-13 09:44:59 +01:00
i2c-nomadik.c i2c: i2c-nomadik: Drop class based scanning to improve bootup time 2014-07-16 23:00:01 +02:00
i2c-ocores.c i2c: i2c-ocores: Drop class based scanning to improve bootup time 2014-07-16 23:00:02 +02:00
i2c-octeon.c i2c: delete non-required instances of include <linux/init.h> 2014-01-24 18:24:31 +01:00
i2c-omap.c i2c: i2c-omap: Drop class based scanning to improve bootup time 2014-07-16 23:00:03 +02:00
i2c-parport-light.c Update Jean Delvare's e-mail address 2014-01-29 20:40:08 +01:00
i2c-parport.c Update Jean Delvare's e-mail address 2014-01-29 20:40:08 +01:00
i2c-parport.h Update Jean Delvare's e-mail address 2014-01-29 20:40:08 +01:00
i2c-pasemi.c i2c: remove DEFINE_PCI_DEVICE_TABLE macro 2014-03-13 09:44:59 +01:00
i2c-pca-isa.c i2c: remove __dev* attributes from subsystem 2012-12-22 20:13:45 +01:00
i2c-pca-platform.c i2c: delete non-required instances of include <linux/init.h> 2014-01-24 18:24:31 +01:00
i2c-piix4.c i2c: remove DEFINE_PCI_DEVICE_TABLE macro 2014-03-13 09:44:59 +01:00
i2c-pmcmsp.c i2c: delete non-required instances of include <linux/init.h> 2014-01-24 18:24:31 +01:00
i2c-pnx.c i2c: pnx: Use devm_*() functions 2014-01-16 11:15:50 +01:00
i2c-powermac.c i2c: delete non-required instances of include <linux/init.h> 2014-01-24 18:24:31 +01:00
i2c-puv3.c i2c: delete non-required instances of include <linux/init.h> 2014-01-24 18:24:31 +01:00
i2c-pxa-pci.c i2c: remove DEFINE_PCI_DEVICE_TABLE macro 2014-03-13 09:44:59 +01:00
i2c-pxa.c i2c: Make of_device_id array const 2014-06-02 19:29:37 +02:00
i2c-qup.c i2c: qup: disable clks and return instead of just returning error 2014-08-06 20:50:44 +02:00
i2c-rcar.c i2c: rcar: fix RCAR_IRQ_ACK_{RECV|SEND} 2014-09-20 11:56:20 +02:00
i2c-riic.c i2c: Make of_device_id array const 2014-06-02 19:29:37 +02:00
i2c-rk3x.c i2c: rk3x: fix divisor calculation for SCL frequency 2014-09-20 18:35:10 +02:00
i2c-robotfuzz-osif.c i2c: Add bus driver for for OSIF USB i2c device. 2014-01-13 13:56:56 +01:00
i2c-s3c2410.c i2c: s3c2410: resume the I2C controller earlier 2014-08-01 19:33:10 +02:00
i2c-scmi.c i2c: delete non-required instances of include <linux/init.h> 2014-01-24 18:24:31 +01:00
i2c-sh7760.c i2c: delete non-required instances of include <linux/init.h> 2014-01-24 18:24:31 +01:00
i2c-sh_mobile.c i2c: sh_mobile: add compatibles for additional SoC 2014-06-01 22:22:08 +02:00
i2c-sibyte.c i2c/mips: Fix error return codes from Sibyte i2c bus driver 2010-07-10 09:42:47 +02:00
i2c-simtec.c i2c: remove unnecessary OOM messages 2014-06-02 19:24:33 +02:00
i2c-sirf.c i2c: i2c-sirf: Drop class based scanning to improve bootup time 2014-07-16 23:00:06 +02:00
i2c-sis96x.c i2c: remove DEFINE_PCI_DEVICE_TABLE macro 2014-03-13 09:44:59 +01:00
i2c-sis630.c i2c: remove DEFINE_PCI_DEVICE_TABLE macro 2014-03-13 09:44:59 +01:00
i2c-sis5595.c i2c: remove DEFINE_PCI_DEVICE_TABLE macro 2014-03-13 09:44:59 +01:00
i2c-st.c i2c: st: Update i2c timings 2014-08-01 19:47:17 +02:00
i2c-stu300.c i2c: i2c-stu300: Drop class based scanning to improve bootup time 2014-07-16 23:00:06 +02:00
i2c-sun6i-p2wi.c i2c: sun6i-p2wi: Remove duplicate inclusion of module.h 2014-06-27 14:39:36 +02:00
i2c-taos-evm.c i2c: taos-evm: Use module_serio_driver() 2014-06-27 14:50:42 +02:00
i2c-tegra.c i2c: tegra: Move clk_prepare/clk_set_rate to probe 2014-09-20 11:15:23 +02:00
i2c-tiny-usb.c i2c: i2c-tiny-usb: Remove RobotFuzz USB vendor:product ID 2014-01-13 13:56:52 +01:00
i2c-versatile.c i2c: move OF helpers into the core 2013-08-23 10:22:20 +02:00
i2c-via.c i2c: remove DEFINE_PCI_DEVICE_TABLE macro 2014-03-13 09:44:59 +01:00
i2c-viapro.c i2c: remove DEFINE_PCI_DEVICE_TABLE macro 2014-03-13 09:44:59 +01:00
i2c-viperboard.c i2c: viperboard: remove superfluous assignment 2014-01-09 22:18:33 +01:00
i2c-wmt.c i2c: Make of_device_id array const 2014-06-02 19:29:37 +02:00
i2c-xiic.c i2c: i2c-xiic: Drop class based scanning to improve bootup time 2014-07-16 23:00:08 +02:00
i2c-xlr.c i2c: delete non-required instances of include <linux/init.h> 2014-01-24 18:24:31 +01:00
scx200_acb.c i2c: remove unnecessary OOM messages 2014-06-02 19:24:33 +02:00