mv_feroceon: added a pre-boot hook and exposed it through a board callback.

Change-Id: I43beb3b442d1642e8d6696f413551dc395f53a47
diff --git a/board/mv_feroceon/mv_kw2/kw2_family/boardEnv/mvBoardEnvLib.h b/board/mv_feroceon/mv_kw2/kw2_family/boardEnv/mvBoardEnvLib.h
index d8b74cd..a7e75d7 100644
--- a/board/mv_feroceon/mv_kw2/kw2_family/boardEnv/mvBoardEnvLib.h
+++ b/board/mv_feroceon/mv_kw2/kw2_family/boardEnv/mvBoardEnvLib.h
@@ -403,6 +403,7 @@
 	char boardName[MV_BOARD_NAME_LEN];
 	MV_VOID (*pBoardEnvInit)(struct _boardInfo *);
 	MV_VOID (*pBoardEgigaPhyInit)(struct _boardInfo *);
+	MV_VOID (*pBoardPreBootOs)(struct _boardInfo *);
 	MV_U8 numBoardMppTypeValue;
 	MV_BOARD_MPP_TYPE_INFO *pBoardMppTypeValue;
 	MV_U8 numBoardMppConfigValue;
diff --git a/board/mv_feroceon/mv_kw2/mv_main.c b/board/mv_feroceon/mv_kw2/mv_main.c
index 4620f17..4557cc4 100644
--- a/board/mv_feroceon/mv_kw2/mv_main.c
+++ b/board/mv_feroceon/mv_kw2/mv_main.c
@@ -1453,3 +1453,11 @@
 	return pd->boot_mode;
 }
 #endif  /* CONFIG_POST || CONFIG_LOGBUFFER*/
+
+void board_pre_boot_os(void)
+{
+	MV_BOARD_INFO *pBoardInfo = mvBoardInfoGet();
+
+	if (pBoardInfo->pBoardPreBootOs)
+		pBoardInfo->pBoardPreBootOs(pBoardInfo);
+}