diff --git a/arch/arm/mach-imx/imx8/cpu.c b/arch/arm/mach-imx/imx8/cpu.c
index 314947e..6fdedf6 100644
--- a/arch/arm/mach-imx/imx8/cpu.c
+++ b/arch/arm/mach-imx/imx8/cpu.c
@@ -344,6 +344,15 @@
 }
 #endif
 
+static bool check_owned_resource(sc_rsrc_t rsrc_id)
+{
+	bool owned;
+
+	owned = sc_rm_is_resource_owned(-1, rsrc_id);
+
+	return owned;
+}
+
 #ifdef CONFIG_IMX_SMMU
 struct smmu_sid dev_sids[] = {
 };
@@ -357,6 +366,10 @@
 		return 0;
 
 	for (i = 0; i < size; i++) {
+		if (!check_owned_resource(dev_sids[i].rsrc)) {
+			printf("%s rsrc[%d] not owned\n", __func__, dev_sids[i].rsrc);
+			continue;
+		}
 		sciErr = sc_rm_set_master_sid(-1,
 					      dev_sids[i].rsrc,
 					      dev_sids[i].sid);
@@ -597,15 +610,6 @@
 	return board_mmc_get_env_dev(devno);
 }
 
-static bool check_owned_resource(sc_rsrc_t rsrc_id)
-{
-	bool owned;
-
-	owned = sc_rm_is_resource_owned(-1, rsrc_id);
-
-	return owned;
-}
-
 static bool check_owned_resources_in_pd_tree(void *blob, int nodeoff,
 	unsigned int *unowned_rsrc)
 {
@@ -984,10 +988,14 @@
 {
 	int err;
 
+	if (!check_owned_resource(rsrc)) {
+		printf("%s rsrc[%d] not owned\n", __func__, rsrc);
+		return -1;
+	}
 	err = sc_rm_set_master_sid(-1, rsrc, sid);
 	debug("set_master_sid rsrc=%d sid=0x%x err=%d\n", rsrc, sid, err);
 	if (err != SC_ERR_NONE) {
-		pr_err("fail set_master_sid rsrc=%d sid=0x%x err=%d", rsrc, sid, err);
+		pr_err("fail set_master_sid rsrc=%d sid=0x%x err=%d\n", rsrc, sid, err);
 		return -EINVAL;
 	}
 
