[U-Boot] [PATCH 2/3] digsy MTC: Add SPI support.

Grzegorz Bernacki gjb at semihalf.com
Wed May 27 11:22:58 CEST 2009


Signed-off-by: Grzegorz Bernacki <gjb at semihalf.com>
---
 board/digsy_mtc/digsy_mtc.c |   14 ++++++++++++++
 include/configs/digsy_mtc.h |    7 +++++++
 2 files changed, 21 insertions(+), 0 deletions(-)

diff --git a/board/digsy_mtc/digsy_mtc.c b/board/digsy_mtc/digsy_mtc.c
index 83d5864..36bbbc5 100644
--- a/board/digsy_mtc/digsy_mtc.c
+++ b/board/digsy_mtc/digsy_mtc.c
@@ -186,6 +186,10 @@ int checkboard(void)
 
 int board_early_init_r(void)
 {
+#ifdef CONFIG_MPC52XX_SPI
+	struct mpc5xxx_gpio *gpio = (struct mpc5xxx_gpio*)MPC5XXX_GPIO;
+	struct mpc5xxx_gpt *gpt = (struct mpc5xxx_gpt*)MPC5XXX_GPT;
+#endif
 	/*
 	 * Now, when we are in RAM, enable flash write access for detection
 	 * process.  Note that CS_BOOT cannot be cleared when executing in
@@ -202,6 +206,16 @@ int board_early_init_r(void)
 	/* Low level USB init, required for proper kernel operation */
 	usb_cpu_init();
 #endif
+#ifdef CONFIG_MPC52XX_SPI
+	/* SPI on Tmr2/3/4/5 pins */
+	gpio->port_config |= 0x20000000;
+
+	/* GPT 6 Output Enable */
+	gpt[6].emsr = 0x00000034 ;
+	/* GPT 7 Output Enable */
+	gpt[7].emsr = 0x00000034 ;
+#endif
+
 	return (0);
 }
 
diff --git a/include/configs/digsy_mtc.h b/include/configs/digsy_mtc.h
index 66badd7..0cc2a8d 100644
--- a/include/configs/digsy_mtc.h
+++ b/include/configs/digsy_mtc.h
@@ -100,6 +100,7 @@
 #define CONFIG_CMD_PING
 #define CONFIG_CMD_REGINFO
 #define CONFIG_CMD_SAVES
+#define CONFIG_CMD_SPI
 #define CONFIG_CMD_USB
 
 #if (TEXT_BASE == 0xFF000000)
@@ -137,6 +138,12 @@
 	""
 
 /*
+ * SPI configuration
+ */
+#define CONFIG_HARD_SPI		1
+#define CONFIG_MPC52XX_SPI	1
+
+/*
  * I2C configuration
  */
 #define CONFIG_HARD_I2C		1
-- 
1.6.0.6



More information about the U-Boot mailing list