davinci: fix dm644x buglets

Fix two buglets in the dm644x support:  don't set two must-be-zero
bits in the UART management register; and only include the I2C hooks
if the I2C driver is being included.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
diff --git a/cpu/arm926ejs/davinci/dm644x.c b/cpu/arm926ejs/davinci/dm644x.c
index df382bd..bb105b5 100644
--- a/cpu/arm926ejs/davinci/dm644x.c
+++ b/cpu/arm926ejs/davinci/dm644x.c
@@ -41,7 +41,7 @@
 	lpsc_on(DAVINCI_LPSC_UART0);
 
 	/* Bringup UART0 out of reset */
-	REG(UART0_PWREMU_MGMT) = 0x0000e003;
+	REG(UART0_PWREMU_MGMT) = 0x00006001;
 
 	/* Enable UART0 MUX lines */
 	REG(PINMUX1) |= PINMUX1_UART0;
@@ -62,6 +62,7 @@
 }
 #endif
 
+#ifdef CONFIG_DRIVER_DAVINCI_I2C
 void davinci_enable_i2c(void)
 {
 	lpsc_on(DAVINCI_LPSC_I2C);
@@ -69,6 +70,7 @@
 	/* Enable I2C pin Mux */
 	REG(PINMUX1) |= PINMUX1_I2C;
 }
+#endif
 
 void davinci_errata_workarounds(void)
 {