i2c: Add support for Qualcomm I2C driver
Add support for Qualcomm I2C QUP driver which is inspired from
corresponding driver in Linux: drivers/i2c/busses/i2c-qup.c.
Currently this driver only support FIFO polling mode which is sufficient
to support devices like eeprom, rtc etc.
Co-developed-by: Mike Worsfold <mworsfold@impinj.com>
Signed-off-by: Mike Worsfold <mworsfold@impinj.com>
Signed-off-by: Sumit Garg <sumit.garg@linaro.org>
diff --git a/drivers/i2c/Kconfig b/drivers/i2c/Kconfig
index 76e1991..427074b 100644
--- a/drivers/i2c/Kconfig
+++ b/drivers/i2c/Kconfig
@@ -580,6 +580,18 @@
chips have several I2C ports and all are provided, controlled by
the device tree.
+config SYS_I2C_QUP
+ bool "Qualcomm QUP I2C controller"
+ depends on ARCH_SNAPDRAGON
+ help
+ Support for Qualcomm QUP I2C controller based on Qualcomm Universal
+ Peripherals (QUP) engine. The QUP engine is an advanced high
+ performance slave port that provides a common data path (an output
+ FIFO and an input FIFO) for I2C and SPI interfaces. The I2C/SPI QUP
+ controller is publicly documented in the Snapdragon 410E (APQ8016E)
+ Technical Reference Manual, chapter "6.1 Qualcomm Universal
+ Peripherals Engine (QUP)".
+
config SYS_I2C_S3C24X0
bool "Samsung I2C driver"
depends on (ARCH_EXYNOS4 || ARCH_EXYNOS5) && DM_I2C