diff mbox

[U-Boot,v3,4/6] 83xx/km83xx: read the IVM eeprom earlier

Message ID 1423584618-19677-5-git-send-email-valentin.longchamp@keymile.com
State Accepted
Delegated to: Tom Rini
Headers show

Commit Message

Valentin Longchamp Feb. 10, 2015, 4:10 p.m. UTC
This allows to define the ethaddr env variable according to the the IVM
content by reading the IVM in misc_init_r.

Later, when HUSH is available the content read earlier is analyzed to
populate some non env variables.

Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
---

Changes in v3: None
Changes in v2: None

 board/keymile/km83xx/km83xx.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

Comments

Tom Rini Feb. 17, 2015, 8:23 p.m. UTC | #1
On Tue, Feb 10, 2015 at 05:10:16PM +0100, Valentin Longchamp wrote:

> This allows to define the ethaddr env variable according to the the IVM
> content by reading the IVM in misc_init_r.
> 
> Later, when HUSH is available the content read earlier is analyzed to
> populate some non env variables.
> 
> Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>

Applied to u-boot/master, thanks!
diff mbox

Patch

diff --git a/board/keymile/km83xx/km83xx.c b/board/keymile/km83xx/km83xx.c
index 1da0dcb..fc68a2f 100644
--- a/board/keymile/km83xx/km83xx.c
+++ b/board/keymile/km83xx/km83xx.c
@@ -28,6 +28,8 @@ 
 
 #include "../common/common.h"
 
+static uchar ivm_content[CONFIG_SYS_IVM_EEPROM_MAX_LEN];
+
 const qe_iop_conf_t qe_iop_conf_tab[] = {
 	/* port pin dir open_drain assign */
 #if defined(CONFIG_MPC8360)
@@ -190,6 +192,7 @@  int board_early_init_r(void)
 
 int misc_init_r(void)
 {
+	ivm_simple_read_eeprom(ivm_content, CONFIG_SYS_IVM_EEPROM_MAX_LEN);
 	return 0;
 }
 
@@ -370,7 +373,7 @@  int ft_board_setup(void *blob, bd_t *bd)
 #if defined(CONFIG_HUSH_INIT_VAR)
 int hush_init_var(void)
 {
-	ivm_read_eeprom();
+	ivm_analyze_eeprom(ivm_content, CONFIG_SYS_IVM_EEPROM_MAX_LEN);
 	return 0;
 }
 #endif