From bedd8403f77f790e9876578885eab1200ba2f8d8 Mon Sep 17 00:00:00 2001 From: Mike Frysinger Date: Thu, 23 Jul 2009 16:37:48 -0400 Subject: [PATCH] export SPI functions to standalone apps While we're here, fix the broken #ifdef handling in _exports.h. Signed-off-by: Mike Frysinger --- common/exports.c | 8 ++++++++ include/_exports.h | 14 ++++++++++---- include/exports.h | 3 ++- 3 files changed, 20 insertions(+), 5 deletions(-) diff --git a/common/exports.c b/common/exports.c index ec4656bfbd..b3b6e1f9c6 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 af43885c52..f3df56827e 100644 --- a/include/_exports.h +++ b/include/_exports.h @@ -1,3 +1,7 @@ +/* + * 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 +18,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 0620e9eb89..16ea03a6bd 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 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; -- 2.25.1