msm_shared: smem: Add New v7 format type for socinfo

Change-Id: Iedd3f55a2c5f27f1009a10ae2cea857272c1cf11
diff --git a/platform/msm_shared/board.c b/platform/msm_shared/board.c
index c9d48bf..fdc5ed0 100644
--- a/platform/msm_shared/board.c
+++ b/platform/msm_shared/board.c
@@ -42,6 +42,7 @@
 static void platform_detect()
 {
 	struct smem_board_info_v6 board_info_v6;
+	struct smem_board_info_v7 board_info_v7;
 	unsigned int board_info_len = 0;
 	unsigned ret = 0;
 	unsigned format = 0;
@@ -51,23 +52,39 @@
 	if (ret)
 		return;
 
-	if (format == 6) {
-		board_info_len = sizeof(board_info_v6);
+	if (format == 6)
+	{
+			board_info_len = sizeof(board_info_v6);
 
-		ret =
-			smem_read_alloc_entry(SMEM_BOARD_INFO_LOCATION,
-					  &board_info_v6,
-					  board_info_len);
+		ret = smem_read_alloc_entry(SMEM_BOARD_INFO_LOCATION,
+				&board_info_v6,
+				board_info_len);
 		if (ret)
 			return;
 
 		board.platform = board_info_v6.board_info_v3.msm_id;
-		board.platform_hw =
-			board_info_v6.board_info_v3.hw_platform;
-		board.platform_subtype =
-			board_info_v6.platform_subtype;
-	} else {
-		dprintf(CRITICAL, "Unsupported board info format.\n");
+		board.platform_hw = board_info_v6.board_info_v3.hw_platform;
+		board.platform_subtype = board_info_v6.platform_subtype;
+	}
+	else if (format == 7)
+	{
+		board_info_len = sizeof(board_info_v7);
+
+		ret = smem_read_alloc_entry(SMEM_BOARD_INFO_LOCATION,
+				&board_info_v7,
+				board_info_len);
+		if (ret)
+			return;
+
+		board.platform = board_info_v7.board_info_v3.msm_id;
+		board.platform_hw = board_info_v7.board_info_v3.hw_platform;
+		board.platform_subtype = board_info_v7.platform_subtype;
+
+	}
+	else
+	{
+		dprintf(CRITICAL, "Unsupported board info format\n");
+		ASSERT(0);
 	}
 }