[U-Boot] [PATCH v2] export SPI functions to standalone apps
Mike Frysinger
vapier at gentoo.org
Wed Jul 22 04:39:00 CEST 2009
While we're here, fix the broken #ifdef handling in _exports.h.
Signed-off-by: Mike Frysinger <vapier at gentoo.org>
---
v2
- drop all wrong #ifdef usage in _exports.h
common/exports.c | 8 ++++++++
include/_exports.h | 13 +++++++++----
include/exports.h | 3 ++-
3 files changed, 19 insertions(+), 5 deletions(-)
diff --git a/common/exports.c b/common/exports.c
index ec4656b..b3b6e1f 100644
--- a/common/exports.c
+++ b/common/exports.c
@@ -38,4 +38,12 @@ void jumptable_init (void)
gd->jt[XF_i2c_write] = (void *) i2c_write;
gd->jt[XF_i2c_read] = (void *) i2c_read;
#endif
+#ifdef CONFIG_CMD_SPI
+ gd->jt[XF_spi_init] = (void *) spi_init;
+ gd->jt[XF_spi_setup_slave] = (void *) spi_setup_slave;
+ gd->jt[XF_spi_free_slave] = (void *) spi_free_slave;
+ gd->jt[XF_spi_claim_bus] = (void *) spi_claim_bus;
+ gd->jt[XF_spi_release_bus] = (void *) spi_release_bus;
+ gd->jt[XF_spi_xfer] = (void *) spi_xfer;
+#endif
}
diff --git a/include/_exports.h b/include/_exports.h
index af43885..ba3920e 100644
--- a/include/_exports.h
+++ b/include/_exports.h
@@ -1,3 +1,6 @@
+/* You do not need to use #ifdef around functions that may not exist
+ * in the final configuration (such as i2c).
+ */
EXPORT_FUNC(get_version)
EXPORT_FUNC(getc)
EXPORT_FUNC(tstc)
@@ -14,13 +17,15 @@ EXPORT_FUNC(vprintf)
EXPORT_FUNC(do_reset)
EXPORT_FUNC(getenv)
EXPORT_FUNC(setenv)
-#ifdef CONFIG_HAS_UID
EXPORT_FUNC(forceenv)
-#endif
EXPORT_FUNC(simple_strtoul)
EXPORT_FUNC(simple_strtol)
EXPORT_FUNC(strcmp)
-#if defined(CONFIG_CMD_I2C)
EXPORT_FUNC(i2c_write)
EXPORT_FUNC(i2c_read)
-#endif
+EXPORT_FUNC(spi_init)
+EXPORT_FUNC(spi_setup_slave)
+EXPORT_FUNC(spi_free_slave)
+EXPORT_FUNC(spi_claim_bus)
+EXPORT_FUNC(spi_release_bus)
+EXPORT_FUNC(spi_xfer)
diff --git a/include/exports.h b/include/exports.h
index 0620e9e..16ea03a 100644
--- a/include/exports.h
+++ b/include/exports.h
@@ -33,6 +33,7 @@ void forceenv (char *varname, char *varvalue);
int i2c_write (uchar, uint, int , uchar* , int);
int i2c_read (uchar, uint, int , uchar* , int);
#endif
+#include <spi.h>
void app_startup(char **);
@@ -46,7 +47,7 @@ enum {
XF_MAX
};
-#define XF_VERSION 4
+#define XF_VERSION 5
#if defined(CONFIG_I386)
extern gd_t *global_data;
--
1.6.3.3
More information about the U-Boot
mailing list