KM/IVM: split the IVM reading and parsing in 2 parts
This allows to first read the IVM content (earlier in the boot sequence)
and define the ethaddr env variable thanks to the ivm_read_eepromi().
Later, the IVM content can be parsed and used to define some hush
variables, when the hush subsystem is available thanks to
ivm_analyze_eeprom().
To avoid the HW read to happen twice, the buffer passed to
ivm_read_eeprom() has to be reused by ivm_analyze_eeprom (and thus
allocated before calling ivm_read_eeprom()).
Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
diff --git a/board/keymile/common/common.h b/board/keymile/common/common.h
index e075f46..7e16d25 100644
--- a/board/keymile/common/common.h
+++ b/board/keymile/common/common.h
@@ -127,6 +127,8 @@
int ethernet_present(void);
int ivm_read_eeprom(void);
+int ivm_simple_read_eeprom(unsigned char *buf, int len);
+int ivm_analyze_eeprom(unsigned char *buf, int len);
int trigger_fpga_config(void);
int wait_for_fpga_config(void);