From: Holger Brunck <holger.bru...@keymile.com> Read out board id and HW key from the IVM eeprom and set these values as an environment variable was now done inside the code as a command.
Signed-off-by: Holger Brunck <holger.bru...@keymile.com> Acked-by: Heiko Schocher <h...@denx.de> cc: Wolfgang Denk <w...@denx.de> cc: Detlev Zundel <d...@denx.de> cc: Valentin Longchamp <valentin.longch...@keymile.com> Signed-off-by: Valentin Longchamp <valentin.longch...@keymile.com> --- board/keymile/common/common.c | 25 +++++++++++++++++++++++++ 1 files changed, 25 insertions(+), 0 deletions(-) diff --git a/board/keymile/common/common.c b/board/keymile/common/common.c index 9ec0022..5704b7f 100644 --- a/board/keymile/common/common.c +++ b/board/keymile/common/common.c @@ -25,6 +25,7 @@ #if defined(CONFIG_KM82XX) #include <mpc8260.h> #endif +#include <command.h> #include <ioports.h> #include <malloc.h> #include <hush.h> @@ -689,3 +690,27 @@ int board_eth_init(bd_t *bis) return -1; } + +/* + * do_setboardid command + * read out the board id and the hw key from the intventory EEPROM and set + * this values as environment variables. + */ +static int do_setboardid(cmd_tbl_t *cmdtp, int flag, int argc, + char *const argv[]) +{ + unsigned char buf[32]; + char *p; + + p = get_local_var("IVM_BoardId"); + sprintf((char *)buf, "%s", p); + setenv("boardid", (char *)buf); + p = get_local_var("IVM_HWKey"); + sprintf((char *)buf, "%s", p); + setenv("hwkey", (char *)buf); + return 0; +} + +U_BOOT_CMD(km_setboardid, 1, 0, do_setboardid, "setboardid", "read out bid and " + "hwkey from IVM and set in environment"); + -- 1.7.0.5 _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot