Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit bd0c57a9 authored by Mukesh Kumar Savaliya's avatar Mukesh Kumar Savaliya Committed by Gerrit - the friendly Code Review server
Browse files

platform: msm-geni-se: Return correct Error code in probe context



This change adds correct return value when client driver does a probe and
calls the API in common driver. Since individual QUP SE driver relies on
return value, it helps if dependencies are not met and can decide to defer
the probe.

Change-Id: I6bd75d0acc05fbd1fd2f7fb37c67dc34c4904e7b
Signed-off-by: default avatarMukesh Kumar Savaliya <msavaliy@codeaurora.org>
parent 1c0ece44
Loading
Loading
Loading
Loading
+14 −10
Original line number Diff line number Diff line
@@ -1033,11 +1033,12 @@ int geni_se_resources_init(struct se_geni_rsc *rsc,
					geni_se_dev->vectors[0].src,
					geni_se_dev->vectors[0].dst);
		if (IS_ERR_OR_NULL(geni_se_dev->bus_bw)) {
			GENI_SE_ERR(geni_se_dev->log_ctx,
				false, NULL,
			"%s: Error creating bus client (Core2x)\n",
								 __func__);
			return -EFAULT;
			GENI_SE_ERR(geni_se_dev->log_ctx, false, NULL,
				"%s: Error Get Path: (Core2x), %ld\n",
				__func__, PTR_ERR(geni_se_dev->bus_bw));

				return geni_se_dev->bus_bw ?
				PTR_ERR(geni_se_dev->bus_bw) : -ENOENT;
		}
	}
	rsc->ab = ab;
@@ -1049,12 +1050,15 @@ int geni_se_resources_init(struct se_geni_rsc *rsc,
						geni_se_dev->vectors[1].src,
						geni_se_dev->vectors[1].dst);
			if (IS_ERR_OR_NULL(geni_se_dev->bus_bw_noc)) {
				GENI_SE_ERR(geni_se_dev->log_ctx,
					false, NULL,
				"%s: Error creating bus client (DDR)\n",
								 __func__);
				GENI_SE_ERR(geni_se_dev->log_ctx, false, NULL,
					"%s: Error Get Path: (DDR), %ld\n",
					 __func__,
					PTR_ERR(geni_se_dev->bus_bw_noc));
				icc_put(geni_se_dev->bus_bw);
				return -EFAULT;
				geni_se_dev->bus_bw = NULL;

				return geni_se_dev->bus_bw_noc ?
				PTR_ERR(geni_se_dev->bus_bw_noc) : -ENOENT;
			}
		}