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

Commit 2b4738b1 authored by qctecmdr's avatar qctecmdr Committed by Gerrit - the friendly Code Review server
Browse files

Merge "rpmsg: glink: do not break from interrupt handler"

parents a0e406a6 45c42810
Loading
Loading
Loading
Loading
+15 −6
Original line number Original line Diff line number Diff line
@@ -41,12 +41,19 @@ do { \
			       ch->lcid, ch->rcid, __func__, ##__VA_ARGS__); \
			       ch->lcid, ch->rcid, __func__, ##__VA_ARGS__); \
} while (0)
} while (0)



#define GLINK_ERR(ctxt, x, ...)						  \
#define GLINK_ERR(ctxt, x, ...)						  \
do {									  \
do {									  \
	pr_err_ratelimited("[%s]: "x, __func__, ##__VA_ARGS__);		  \
	pr_err_ratelimited("[%s]: "x, __func__, ##__VA_ARGS__);		  \
	if (ctxt)							  \
	if (ctxt)							  \
		ipc_log_string(ctxt, "[%s]: "x, __func__, ##__VA_ARGS__); \
		ipc_log_string(ctxt, "[%s]: "x, __func__, ##__VA_ARGS__); \

#define CH_ERR(ch, x, ...)						     \
do {									     \
	if (ch->glink) {						     \
		ipc_log_string(ch->glink->ilc, "%s[%d:%d] %s: "x, ch->name,  \
			       ch->lcid, ch->rcid, __func__, ##__VA_ARGS__); \
		dev_err(ch->glink->dev, "[%s]: "x, __func__, ##__VA_ARGS__); \
	}								     \
} while (0)
} while (0)


#define GLINK_NAME_SIZE		32
#define GLINK_NAME_SIZE		32
@@ -1054,12 +1061,14 @@ static int qcom_glink_rx_data(struct qcom_glink *glink, size_t avail)
					intent->offset,
					intent->offset,
					channel->ept.priv,
					channel->ept.priv,
					RPMSG_ADDR_ANY);
					RPMSG_ADDR_ANY);
			if (ret < 0)

				CH_INFO(channel,
			if (ret < 0) {
					"glink:callback error ret = %d\n", ret);
				CH_ERR(channel,
					"callback error ret = %d\n", ret);
				ret = 0;
			}
		} else {
		} else {
			CH_INFO(channel, "callback not present\n");
			CH_ERR(channel, "callback not present\n");
			dev_err(glink->dev, "glink:callback not present\n");
		}
		}
		spin_unlock(&channel->recv_lock);
		spin_unlock(&channel->recv_lock);


+3 −4
Original line number Original line Diff line number Diff line
@@ -24,7 +24,7 @@ static int qcom_smd_qrtr_callback(struct rpmsg_device *rpdev,
	int rc;
	int rc;


	if (!qdev) {
	if (!qdev) {
		pr_err("%d:Not ready\n", __func__);
		pr_err("%s:Not ready\n", __func__);
		return -EAGAIN;
		return -EAGAIN;
	}
	}


@@ -64,7 +64,7 @@ static int qcom_smd_qrtr_probe(struct rpmsg_device *rpdev)
	u32 net_id;
	u32 net_id;
	bool rt;
	bool rt;
	int rc;
	int rc;
	pr_err("%d:Entered\n", __func__);
	pr_info("%s:Entered\n", __func__);


	qdev = devm_kzalloc(&rpdev->dev, sizeof(*qdev), GFP_KERNEL);
	qdev = devm_kzalloc(&rpdev->dev, sizeof(*qdev), GFP_KERNEL);
	if (!qdev)
	if (!qdev)
@@ -86,8 +86,7 @@ static int qcom_smd_qrtr_probe(struct rpmsg_device *rpdev)


	dev_set_drvdata(&rpdev->dev, qdev);
	dev_set_drvdata(&rpdev->dev, qdev);


	pr_err("%d:SMD QRTR driver probed\n", __func__);
	pr_info("%s:SMD QRTR driver probed\n", __func__);
	dev_dbg(&rpdev->dev, "SMD QRTR driver probed\n");


	return 0;
	return 0;
}
}