Patchwork [U-Boot,v4,2/8] POST: allow redefinition of post_word_load/store

login
register
mail settings
Submitter Valentin Longchamp
Date Sept. 12, 2011, 2:18 p.m.
Message ID <1315837122-11952-3-git-send-email-valentin.longchamp@keymile.com>
Download mbox | patch
Permalink /patch/114358/
State Accepted
Delegated to: Wolfgang Denk
Headers show

Comments

Valentin Longchamp - Sept. 12, 2011, 2:18 p.m.
The predefinde post_word_load/store functions do not fit all boards,
so we introduce a way to define post_word_load/store as externs in
post.h that then can be defined in board specific files. This is done
with the CONFIG_POST_EXTERNAL_WORD_FUNCS #define

Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
Signed-off-by: Holger Brunck <holger.brunck@keymile.com>
---
 include/post.h |    8 ++++++++
 1 files changed, 8 insertions(+), 0 deletions(-)
Wolfgang Denk - Oct. 5, 2011, 6:51 p.m.
Dear Valentin Longchamp,

In message <1315837122-11952-3-git-send-email-valentin.longchamp@keymile.com> you wrote:
> The predefinde post_word_load/store functions do not fit all boards,
> so we introduce a way to define post_word_load/store as externs in
> post.h that then can be defined in board specific files. This is done
> with the CONFIG_POST_EXTERNAL_WORD_FUNCS #define
> 
> Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
> Signed-off-by: Holger Brunck <holger.brunck@keymile.com>
> ---
>  include/post.h |    8 ++++++++
>  1 files changed, 8 insertions(+), 0 deletions(-)

Applied, thanks.

Best regards,

Wolfgang Denk

Patch

diff --git a/include/post.h b/include/post.h
index 3d23d22..e783b94 100644
--- a/include/post.h
+++ b/include/post.h
@@ -33,6 +33,7 @@ 
 
 #if defined(CONFIG_POST) || defined(CONFIG_LOGBUFFER)
 
+#ifndef CONFIG_POST_EXTERNAL_WORD_FUNCS
 #ifdef CONFIG_SYS_POST_WORD_ADDR
 #define _POST_WORD_ADDR	CONFIG_SYS_POST_WORD_ADDR
 #else
@@ -85,6 +86,13 @@  static inline void post_word_store (ulong value)
 {
 	out_le32((volatile void *)(_POST_WORD_ADDR), value);
 }
+
+#else
+
+extern ulong post_word_load(void);
+extern void post_word_store(ulong value);
+
+#endif /* CONFIG_POST_EXTERNAL_WORD_FUNCS */
 #endif /* defined (CONFIG_POST) || defined(CONFIG_LOGBUFFER) */
 #endif /* __ASSEMBLY__ */