Merge "FSM9900: Use addresses embedded in boot.img"
diff --git a/dev/gcdb/display/gcdb_display.c b/dev/gcdb/display/gcdb_display.c
index 011a7c4..d4d1cb0 100755
--- a/dev/gcdb/display/gcdb_display.c
+++ b/dev/gcdb/display/gcdb_display.c
@@ -152,9 +152,15 @@
 {
 	char *dsi_id = panelstruct.paneldata->panel_controller;
 	char *panel_node = panelstruct.paneldata->panel_node_id;
+	uint16_t dsi_id_len = 0;
 	bool ret = true;
 
-	if (buf_size < (strlen(panel_node) + MAX_DSI_STREAM_LEN +
+	if (dsi_id == NULL || panel_node == NULL)
+		return false;
+
+	dsi_id_len = strlen(dsi_id);
+
+	if (buf_size < (strlen(panel_node) + dsi_id_len +
 			MAX_PANEL_FORMAT_STRING + 1) ||
 		!strlen(panel_node) ||
 		!strlen(dsi_id))
@@ -169,8 +175,8 @@
 		buf_size -= MAX_PANEL_FORMAT_STRING;
 
 		strlcpy(pbuf, dsi_id, buf_size);
-		pbuf += MAX_DSI_STREAM_LEN;
-		buf_size -= MAX_DSI_STREAM_LEN;
+		pbuf += dsi_id_len;
+		buf_size -= dsi_id_len;
 
 		strlcpy(pbuf, panel_node, buf_size);
 	}
diff --git a/dev/gcdb/display/gcdb_display.h b/dev/gcdb/display/gcdb_display.h
index d7249e5..16dd2c0 100755
--- a/dev/gcdb/display/gcdb_display.h
+++ b/dev/gcdb/display/gcdb_display.h
@@ -43,8 +43,6 @@
 #define BIST_SIZE 6
 #define LANE_SIZE 45
 
-#define MAX_DSI_STREAM_LEN 6
-
 #define MAX_PANEL_FORMAT_STRING 2
 
 /*---------------------------------------------------------------------------*/