[PATCH] ARMV7: OMAP3: BeagleBoard: Enable pullups on i2c2.

Signed-off-by: Jason Kridner <jkridner@beagleboard.org>

From: u-boot-bounces@lists.denx.de
[mailto:u-boot-bounces@lists.denx.de] On Behalf Of Jason Kridner
Sent: Friday, November 05, 2010 11:24 AM
To: u-boot@lists.denx.de; beagleboard@googlegroups.com
Cc: Kipisz, Steven
Subject: [U-Boot] [PATCH] ARMV7: OMAP3: BeagleBoard: Enable
pullups on i2c2.

From: Steve Kipisz <s-kipisz2@ti.com>

[sp] Description missing.

Signed-off-by: Jason Kridner <jkridner@beagleboard.org>
---
arch/arm/include/asm/arch-omap3/omap3.h | 9 +++++++++
board/ti/beagle/beagle.c | 3 +++
2 files changed, 12 insertions(+), 0 deletions(-)

diff --git a/arch/arm/include/asm/arch-omap3/omap3.h
b/arch/arm/include/asm/arch-omap3/omap3.h
index 3957c79..1860dff 100644
--- a/arch/arm/include/asm/arch-omap3/omap3.h
+++ b/arch/arm/include/asm/arch-omap3/omap3.h
@@ -50,6 +50,15 @@/ctr
/* CONTROL */
#define OMAP34XX_CTRL_BASE (OMAP34XX_L4_IO_BASE + 0x2000)

+/* Signal Integrity Parameter Control Registers */
+#define CONTROL_PROG_IO0 0x48002444
+#define CONTROL_PROG_IO1 0x48002448
+#define CONTROL_PROG_IO2 0x48002408
+#define CONTROL_PROG_IO_WKUP1 0x48002A80

[sp] Would be better if they are defined off OMAP34XX_CTRL_BASE
     defined just above.

+
+/* Bit definition for CONTROL_PROG_IO1 */
+#define PRG_I2C2_PULLUPRESX 0x00000001
+
/* UART */
#define OMAP34XX_UART1
(OMAP34XX_L4_IO_BASE + 0x6a000)
#define OMAP34XX_UART2
(OMAP34XX_L4_IO_BASE + 0x6c000)
diff --git a/board/ti/beagle/beagle.c b/board/ti/beagle/beagle.c
index dd7b6b5..6074eca 100644
--- a/board/ti/beagle/beagle.c
+++ b/board/ti/beagle/beagle.c
@@ -160,6 +160,9 @@ int misc_init_r(void)
   struct gpio *gpio5_base = (struct gpio *)OMAP34XX_GPIO5_BASE;
   struct gpio *gpio6_base = (struct gpio *)OMAP34XX_GPIO6_BASE;

+ /* Enable i2c2 pullup resisters */
+ *(ulong *)(CONTROL_PROG_IO1) &= ~(PRG_I2C2_PULLUPRESX);

[sp] Direct pointer access is not a good practice.
     Can you look at struct ctrl and see whether it can be augmented/
     similar approach can be used?

This allows the reading of EEPROMS on the expansion bus without adding
external pull-ups.

This allows the reading of EEPROMS on the expansion bus without adding
external pull-ups.

From: Steve Kipisz <s-kipisz2@ti.com>

This allows the reading of EEPROMS on the expansion bus without adding
external pull-ups.
---
v2 updates
* Updated per http://patchwork.ozlabs.org/patch/71997/
* Added description
* Used OMAP34XX_CTRL_BASE
* Used structure and writel to perform write

v3 updates
* Included v3 in the subject line
* Fixed structure name typo that got messed up in generating patch
* Removed some extraneous blank lines

Signed-off-by: Jason Kridner <jkridner@beagleboard.org>

Pushed after making changes to the patch header