[U-Boot] [RFC] OMAP3: make TWL4030 optional for MMC driver
Matthias Ludwig
mludwig at ultratronik.de
Thu Aug 27 15:24:08 CEST 2009
Upcoming boards may power MMC card themself without using
TWL4030, so make it optional by using define CONFIG_TWL4030_MMC.
Enable this for all existing OMAP3 boards.
Signed-off-by: Matthias Ludwig <mludwig at ultratronik.de>
---
Current OMAP3 MMC driver does require TWL4030 support to
be enabled as all OMAP3 boards are using this chip. I'd like
to push patches for a new board which does not has a TWL4030
and is caring about MMC power by itself.
So, my suggestion is to make the TWL4030 dependency optional.
Are there better ways to to this can using a new define
CONFIG_TWL4030_MMC?
drivers/mmc/omap3_mmc.c | 4 ++++
include/configs/omap3_beagle.h | 1 +
include/configs/omap3_evm.h | 1 +
include/configs/omap3_overo.h | 1 +
include/configs/omap3_pandora.h | 1 +
include/configs/omap3_zoom1.h | 1 +
include/configs/omap3_zoom2.h | 1 +
7 files changed, 10 insertions(+), 0 deletions(-)
diff --git a/drivers/mmc/omap3_mmc.c b/drivers/mmc/omap3_mmc.c
index 9e09434..0ed88cb 100644
--- a/drivers/mmc/omap3_mmc.c
+++ b/drivers/mmc/omap3_mmc.c
@@ -27,8 +27,10 @@
#include <fat.h>
#include <mmc.h>
#include <part.h>
+#ifdef CONFIG_TWL4030_MMC
#include <i2c.h>
#include <twl4030.h>
+#endif
#include <asm/io.h>
#include <asm/arch/mmc.h>
@@ -63,7 +65,9 @@ unsigned char mmc_board_init(void)
{
t2_t *t2_base = (t2_t *)T2_BASE;
+#ifdef CONFIG_TWL4030_MMC
twl4030_power_mmc_init();
+#endif
writel(readl(&t2_base->pbias_lite) | PBIASLITEPWRDNZ1 |
PBIASSPEEDCTRL0 | PBIASLITEPWRDNZ0,
diff --git a/include/configs/omap3_beagle.h b/include/configs/omap3_beagle.h
index 61629f8..e1cb759 100644
--- a/include/configs/omap3_beagle.h
+++ b/include/configs/omap3_beagle.h
@@ -132,6 +132,7 @@
/*
* TWL4030
*/
+#define CONFIG_TWL4030_MMC 1
#define CONFIG_TWL4030_POWER 1
#define CONFIG_TWL4030_LED 1
diff --git a/include/configs/omap3_evm.h b/include/configs/omap3_evm.h
index 9f0f34b..b3c64a8 100644
--- a/include/configs/omap3_evm.h
+++ b/include/configs/omap3_evm.h
@@ -130,6 +130,7 @@
/*
* TWL4030
*/
+#define CONFIG_TWL4030_MMC 1
#define CONFIG_TWL4030_POWER 1
/*
diff --git a/include/configs/omap3_overo.h b/include/configs/omap3_overo.h
index 07a031b..983832d 100644
--- a/include/configs/omap3_overo.h
+++ b/include/configs/omap3_overo.h
@@ -118,6 +118,7 @@
/*
* TWL4030
*/
+#define CONFIG_TWL4030_MMC 1
#define CONFIG_TWL4030_POWER 1
#define CONFIG_TWL4030_LED 1
diff --git a/include/configs/omap3_pandora.h b/include/configs/omap3_pandora.h
index 1cfd7e9..0d87c71 100644
--- a/include/configs/omap3_pandora.h
+++ b/include/configs/omap3_pandora.h
@@ -121,6 +121,7 @@
/*
* TWL4030
*/
+#define CONFIG_TWL4030_MMC 1
#define CONFIG_TWL4030_POWER 1
#define CONFIG_TWL4030_LED 1
diff --git a/include/configs/omap3_zoom1.h b/include/configs/omap3_zoom1.h
index 61a41e7..1140052 100644
--- a/include/configs/omap3_zoom1.h
+++ b/include/configs/omap3_zoom1.h
@@ -128,6 +128,7 @@
/*
* TWL4030
*/
+#define CONFIG_TWL4030_MMC 1
#define CONFIG_TWL4030_POWER 1
#define CONFIG_TWL4030_LED 1
diff --git a/include/configs/omap3_zoom2.h b/include/configs/omap3_zoom2.h
index 03f92f5..40add99 100644
--- a/include/configs/omap3_zoom2.h
+++ b/include/configs/omap3_zoom2.h
@@ -149,6 +149,7 @@
/*
* TWL4030
*/
+#define CONFIG_TWL4030_MMC 1
#define CONFIG_TWL4030_POWER 1
#define CONFIG_TWL4030_LED 1
--
1.6.2.5
More information about the U-Boot
mailing list