mirror of https://gitee.com/openkylin/linux.git
remoteproc and rpmsg fixes for v4.17
Fixes screw up when reversing boolean for rproc_stop(), add missing of node dereferences and add missing MODULE_ALIAS in rpmsg_char. -----BEGIN PGP SIGNATURE----- iQJPBAABCAA5FiEEBd4DzF816k8JZtUlCx85Pw2ZrcUFAlrs+kUbHGJqb3JuLmFu ZGVyc3NvbkBsaW5hcm8ub3JnAAoJEAsfOT8Nma3FOkIQAMNZTJZlaenwJ+qybWd2 tIJ2Ujj1jR2PN+zcda31YDsBGKOaNIaYs/XvoYdsNyy6BPkCBQ9hcHr+QhmDJXFs HzDEML5tiy0nWsgl3wclch+Fk1cBFf1w0Zoussng4IWWql75aI9KSKfOWYGjCtaZ HDJf0kgmk+r0kdNHJzN2kODBpjyWN93jstJ9BWF6DKGgVaEgL18iaVoSHjsyji4c nto5xmV41RGSu02hiR0hT64uaMvasEtUnog9K0dgrHohbpg9jmJYR+ftJOSGeo6q +hTCnCQLRRWwmWvmFR7O+xKpWNrYYtIuu50zrSmEi75ZLBe1Bgs+Y3pobYdOy8FR ISINmWtScp55nHTweUZ4B8ZEfCpStvBTk33y8SuQQYZbKMODcI8YUaY2wVNGG0iH 67zsIeA29p9EjvpniyVtR4RI163h8jq34SCY9RPglyli0EZ+POLK7VgW8ldkq6rO J5ANiNYlUzYRBxDKRGklrJ4Qa74hYhbS6UleMYmq42bjtfSQ8nZiKP3QLwMf3yvR 94idy+jvZA5dkpOUKJ+vcmAY7lRFZ/6i+nlrVWM/UfoOZs4pL/FjzzcqaNFqCRxS sYtCOdY0PX4yyGUFO+FkgtKATryrTb+bPaKgoDa+Cs5FtLjF8fRbnHOX3ZNKJtS8 /VuijGMp/Gh9J5+3ZChlRyNz =kTuc -----END PGP SIGNATURE----- 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
This commit is contained in:
commit
f93314732f
|
@ -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);
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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");
|
||||
|
|
|
@ -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);
|
||||
|
||||
|
|
Loading…
Reference in New Issue