linux_dsm_epyc7002/drivers/i2c/busses
Fugang Duan 9b2a6da33c i2c: imx: update i2c clock divider for each transaction
Since IMX serial SOCs support low bus freq mode, some clocks freq
may change to save power. I2C needs to check the clock source and
update the divider.

For example:
i.MX6SL I2C clk is from IPG_PERCLK which is sourced from IPG_CLK.
Under normal operation, IPG_CLK is 66MHz, ipg_perclk is at 22MHz.
In low bus freq mode, IPG_CLK is at 12MHz and IPG_PERCLK is down
to 4MHz. So the I2C driver must update the divider register for
each transaction when the current IPG_PERCLK is not equal to the
clock of previous transaction.

Signed-off-by: Fugang Duan  <B38611@freescale.com>
[wsa: removed an outdated comment and simplified debug output]
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
2014-06-02 19:18:33 +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 device tree property to set clock-frequency 2014-03-12 08:26:04 +01:00
i2c-au1550.c i2c: delete non-required instances of include <linux/init.h> 2014-01-24 18:24:31 +01:00
i2c-bcm2835.c i2c: i2c-bcm2835: deprecate class based instantiation 2014-03-28 08:53:18 +01:00
i2c-bcm-kona.c i2c: i2c-bcm-kona: Fix module build 2013-11-26 14:00:57 +01:00
i2c-bfin-twi.c i2c: bfin-twi: remove unnecessary Blackfin SSYNC from the driver 2014-03-09 08:41:18 +01: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-davinci.c i2c: i2c-davinci: deprecate class based instantiation 2014-03-28 08:53:43 +01: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: remove DEFINE_PCI_DEVICE_TABLE macro 2014-03-13 09:44:59 +01:00
i2c-designware-platdrv.c i2c: i2c-designware-platdrv: deprecate class based instantiation 2014-03-28 08:54:00 +01:00
i2c-diolan-u2c.c i2c: i2c-diolan-u2c: different usb endpoints for DLN-2-U2C 2013-11-26 13:49:33 +01:00
i2c-efm32.c i2c: efm32: new bus driver 2014-03-27 18:53:16 +01:00
i2c-eg20t.c i2c: remove DEFINE_PCI_DEVICE_TABLE macro 2014-03-13 09:44:59 +01:00
i2c-elektor.c
i2c-exynos5.c i2c: exynos5: add support for HSI2C on Exynos5260 SoC 2014-05-22 10:09:22 +02:00
i2c-gpio.c i2c: gpio: Use devm_gpio_request() 2014-05-22 10:09:25 +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: remove DEFINE_PCI_DEVICE_TABLE macro 2014-03-13 09:44:59 +01: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: update i2c clock divider for each transaction 2014-06-02 19:18:33 +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-isch.c i2c: delete non-required instances of include <linux/init.h> 2014-01-24 18:24:31 +01:00
i2c-ismt.c i2c: remove DEFINE_PCI_DEVICE_TABLE macro 2014-03-13 09:44:59 +01:00
i2c-kempld.c
i2c-mpc.c i2c: delete non-required instances of include <linux/init.h> 2014-01-24 18:24:31 +01:00
i2c-mv64xxx.c i2c: mv64xxx: Change i2c compatibles for sunxi 2014-05-22 10:09:21 +02:00
i2c-mxs.c i2c: mxs: Use devm_ioremap_resource() 2014-03-10 08:29:37 +01: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: nomadik: Fixup system suspend 2014-05-22 10:09:21 +02:00
i2c-nuc900.c
i2c-ocores.c i2c: i2c-ocores: deprecate class based instantiation 2014-03-05 17:17:06 +01: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: omap: fix usage of IS_ERR_VALUE with pm_runtime_get_sync 2014-03-27 18:53:26 +01: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-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-qup.c i2c: qup: Fix pm_runtime_get_sync usage 2014-05-14 18:14:49 +02:00
i2c-rcar.c i2c: rcar: update copyright and license information 2014-06-01 22:23:00 +02:00
i2c-riic.c i2c: riic: add driver 2014-01-02 15:56:52 +01: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 race fix 2014-05-14 18:14:43 +02:00
i2c-s6000.c
i2c-s6000.h
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-simtec.c i2c: delete non-required instances of include <linux/init.h> 2014-01-24 18:24:31 +01:00
i2c-sirf.c i2c: i2c-sirf: deprecate class based instantiation 2014-03-28 08:54:45 +01: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: Fix return in case of arbitration lost 2014-03-10 17:35:08 +01:00
i2c-stu300.c i2c: i2c-stu300: deprecate class based instantiation 2014-03-05 17:17:09 +01:00
i2c-taos-evm.c Update Jean Delvare's e-mail address 2014-01-29 20:40:08 +01:00
i2c-tegra.c i2c: i2c-tegra: deprecate class based instantiation 2014-03-05 17:17:12 +01: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-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 Merge branch 'i2c/for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux 2013-11-18 15:50:07 -08:00
i2c-xiic.c i2c: i2c-xiic: deprecate class based instantiation 2014-03-28 08:55:04 +01:00
i2c-xlr.c i2c: delete non-required instances of include <linux/init.h> 2014-01-24 18:24:31 +01:00
Kconfig i2c: eg20t: Fix Kconfig dependencies 2014-05-22 10:09:25 +02:00
Makefile i2c: Add driver for Cadence I2C controller 2014-04-06 17:47:19 +02:00
scx200_acb.c i2c: remove DEFINE_PCI_DEVICE_TABLE macro 2014-03-13 09:44:59 +01:00
scx200_i2c.c i2c: delete non-required instances of include <linux/init.h> 2014-01-24 18:24:31 +01:00