summaryrefslogtreecommitdiff
path: root/include/configs/RPXlite.h
diff options
context:
space:
mode:
authorHeiko Schocher <hs@denx.de>2013-01-29 08:53:15 +0100
committerHeiko Schocher <hs@denx.de>2013-07-23 05:54:29 +0200
commitea818dbbcd59300b56014ac2d67798a54994eb9b (patch)
treefbdedc80f785873f96e79893a1a813504af57580 /include/configs/RPXlite.h
parent3f4978c713255c8406875fbdf23ffed1129bc44b (diff)
downloadu-boot-imx-ea818dbbcd59300b56014ac2d67798a54994eb9b.zip
u-boot-imx-ea818dbbcd59300b56014ac2d67798a54994eb9b.tar.gz
u-boot-imx-ea818dbbcd59300b56014ac2d67798a54994eb9b.tar.bz2
i2c, soft-i2c: switch to new multibus/multiadapter support
- added to soft_i2c driver new multibus/multiadpater support - adapted all config files, which uses this driver Signed-off-by: Heiko Schocher <hs@denx.de> Cc: Simon Glass <sjg@chromium.org> Cc: Stephen Warren <swarren@wwwdotorg.org>
Diffstat (limited to 'include/configs/RPXlite.h')
-rw-r--r--include/configs/RPXlite.h30
1 files changed, 30 insertions, 0 deletions
diff --git a/include/configs/RPXlite.h b/include/configs/RPXlite.h
index 563abea..9a385a4 100644
--- a/include/configs/RPXlite.h
+++ b/include/configs/RPXlite.h
@@ -62,6 +62,36 @@
#undef CONFIG_SYS_LOADS_BAUD_CHANGE /* don't allow baudrate change */
#define CONFIG_BZIP2 /* Include support for bzip2 compressed images */
+
+/* enable I2C and select the hardware/software driver */
+#define CONFIG_SYS_I2C
+#define CONFIG_SYS_I2C_SOFT /* I2C bit-banged */
+#define CONFIG_SYS_I2C_SOFT_SPEED 40000 /* 40 kHz is supposed to work */
+#define CONFIG_SYS_I2C_SOFT_SLAVE 0xFE
+/* Software (bit-bang) I2C driver configuration */
+#define PB_SCL 0x00000020 /* PB 26 */
+#define PB_SDA 0x00000010 /* PB 27 */
+
+#define I2C_INIT (immr->im_cpm.cp_pbdir |= PB_SCL)
+#define I2C_ACTIVE (immr->im_cpm.cp_pbdir |= PB_SDA)
+#define I2C_TRISTATE (immr->im_cpm.cp_pbdir &= ~PB_SDA)
+#define I2C_READ ((immr->im_cpm.cp_pbdat & PB_SDA) != 0)
+#define I2C_SDA(bit) if (bit) \
+ immr->im_cpm.cp_pbdat |= PB_SDA; \
+ else \
+ immr->im_cpm.cp_pbdat &= ~PB_SDA
+#define I2C_SCL(bit) if (bit) \
+ immr->im_cpm.cp_pbdat |= PB_SCL; \
+ else \
+ immr->im_cpm.cp_pbdat &= ~PB_SCL
+#define I2C_DELAY udelay(5) /* 1/4 I2C clock duration */
+
+/* M41T11 Serial Access Timekeeper(R) SRAM */
+#define CONFIG_RTC_M41T11 1
+#define CONFIG_SYS_I2C_RTC_ADDR 0x68
+/* play along with the linux driver */
+#define CONFIG_SYS_M41T11_BASE_YEAR 1900
+
#undef CONFIG_WATCHDOG /* watchdog disabled */
/*