diff --git a/include/platform.h b/include/platform.h
index cd55d7e..64f683d 100644
--- a/include/platform.h
+++ b/include/platform.h
@@ -67,6 +67,7 @@
 int platform_is_msm8992();
 int platform_is_msm8937();
 int platform_is_msm8917();
+int platform_is_qm215();
 uint32_t platform_get_apcs_ipc_base();
 int platform_is_msm8952();
 int platform_is_msm8953();
diff --git a/platform/msm8952/msm8952-clock.c b/platform/msm8952/msm8952-clock.c
index 3d2b85c..6b1989c 100644
--- a/platform/msm8952/msm8952-clock.c
+++ b/platform/msm8952/msm8952-clock.c
@@ -651,7 +651,8 @@
 	}
 
 	if (platform_is_msm8937() || platform_is_msm8917() ||
-		platform_is_sdm429() || platform_is_sdm439())
+		platform_is_sdm429() || platform_is_sdm439() ||
+		platform_is_qm215())
 		msm8937_clock_override();
 
 	clk_init(msm_clocks_8952, ARRAY_SIZE(msm_clocks_8952));
diff --git a/platform/msm8952/platform.c b/platform/msm8952/platform.c
index e865b30..6fa24f2 100644
--- a/platform/msm8952/platform.c
+++ b/platform/msm8952/platform.c
@@ -214,6 +214,22 @@
 		case MSM8217:
 		case MSM8617:
 		case APQ8017:
+			ret = 1;
+			break;
+		default:
+			ret = 0;
+	};
+
+	return ret;
+}
+
+int platform_is_qm215()
+{
+	uint32_t platform = board_platform_id();
+	uint32_t ret = 0;
+
+	switch(platform)
+	{
 		case QM215:
 			ret = 1;
 			break;
@@ -321,7 +337,8 @@
 uint32_t platform_get_tz_app_add()
 {
 	if(platform_is_msm8937() || platform_is_msm8917() ||
-		platform_is_sdm429() || platform_is_sdm439())
+		platform_is_sdm429() || platform_is_sdm439() ||
+		platform_is_qm215())
 		return APP_REGION_ADDR_8937;
 	else
 		return APP_REGION_ADDR_8952;
@@ -330,7 +347,8 @@
 uint32_t platform_get_tz_app_size()
 {
 	if(platform_is_msm8937() || platform_is_msm8917() ||
-		platform_is_sdm429() || platform_is_sdm439())
+		platform_is_sdm429() || platform_is_sdm439() ||
+		platform_is_qm215())
 		return APP_REGION_SIZE_8937;
 	else
 		return APP_REGION_SIZE_8952;
@@ -338,7 +356,7 @@
 
 uint32_t platform_get_apcs_ipc_base()
 {
-	if(platform_is_msm8917() || platform_is_sdm429())
+	if(platform_is_msm8917() || platform_is_sdm429() || platform_is_qm215())
 		return APCS_ALIAS1_IPC_INTERRUPT_1;
 	else
 		return APCS_ALIAS0_IPC_INTERRUPT_2;
