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

Commit f9331473 authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge tag 'rproc-v4.17-1' of git://github.com/andersson/remoteproc

Pull remoteproc and rpmsg fixes from Bjorn Andersson:

 - fix screw-up when reversing boolean for rproc_stop()

 - add missing OF node refcounting dereferences

 - add missing MODULE_ALIAS in rpmsg_char

* tag 'rproc-v4.17-1' of git://github.com/andersson/remoteproc:
  rpmsg: added MODULE_ALIAS for rpmsg_char
  remoteproc: qcom: Fix potential device node leaks
  remoteproc: fix crashed parameter logic on stop call
parents c12fd0fe 93dd4e73
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -1083,6 +1083,7 @@ static int q6v5_alloc_memory_region(struct q6v5 *qproc)
		dev_err(qproc->dev, "unable to resolve mba region\n");
		return ret;
	}
	of_node_put(node);

	qproc->mba_phys = r.start;
	qproc->mba_size = resource_size(&r);
@@ -1100,6 +1101,7 @@ static int q6v5_alloc_memory_region(struct q6v5 *qproc)
		dev_err(qproc->dev, "unable to resolve mpss region\n");
		return ret;
	}
	of_node_put(node);

	qproc->mpss_phys = qproc->mpss_reloc = r.start;
	qproc->mpss_size = resource_size(&r);
+2 −2
Original line number Diff line number Diff line
@@ -1163,7 +1163,7 @@ int rproc_trigger_recovery(struct rproc *rproc)
	if (ret)
		return ret;

	ret = rproc_stop(rproc, false);
	ret = rproc_stop(rproc, true);
	if (ret)
		goto unlock_mutex;

@@ -1316,7 +1316,7 @@ void rproc_shutdown(struct rproc *rproc)
	if (!atomic_dec_and_test(&rproc->power))
		goto out;

	ret = rproc_stop(rproc, true);
	ret = rproc_stop(rproc, false);
	if (ret) {
		atomic_inc(&rproc->power);
		goto out;
+2 −0
Original line number Diff line number Diff line
@@ -581,4 +581,6 @@ static void rpmsg_chrdev_exit(void)
	unregister_chrdev_region(rpmsg_major, RPMSG_DEV_MAX);
}
module_exit(rpmsg_chrdev_exit);

MODULE_ALIAS("rpmsg:rpmsg_chrdev");
MODULE_LICENSE("GPL v2");
+1 −1
Original line number Diff line number Diff line
@@ -569,7 +569,7 @@ static inline struct rproc *vdev_to_rproc(struct virtio_device *vdev)
void rproc_add_subdev(struct rproc *rproc,
		      struct rproc_subdev *subdev,
		      int (*probe)(struct rproc_subdev *subdev),
		      void (*remove)(struct rproc_subdev *subdev, bool graceful));
		      void (*remove)(struct rproc_subdev *subdev, bool crashed));

void rproc_remove_subdev(struct rproc *rproc, struct rproc_subdev *subdev);