From: Loic Pallardy <loic.pallardy@st.com> To: bjorn.andersson@linaro.org, ohad@wizery.com, lee.jones@linaro.org Cc: loic.pallardy@st.com, linux-remoteproc@vger.kernel.org, linux-kernel@vger.kernel.org, kernel@stlinux.com Subject: [PATCH v3 19/20] remotecore: core: Add resource table pointer argument to rproc_handle_resource Date: Wed, 12 Oct 2016 18:00:37 +0200 [thread overview] Message-ID: <1476288038-24909-20-git-send-email-loic.pallardy@st.com> (raw) In-Reply-To: <1476288038-24909-1-git-send-email-loic.pallardy@st.com> In current version, rproc_handle_resource use rproc->table_ptr as default resource table, fixing table to handle. This patch adds resource table as function argument to have more flexibility and be able to handle resources from any table. Signed-off-by: Loic Pallardy <loic.pallardy@st.com> --- drivers/remoteproc/remoteproc_core.c | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/drivers/remoteproc/remoteproc_core.c b/drivers/remoteproc/remoteproc_core.c index ee2dc8d..a6062e7 100644 --- a/drivers/remoteproc/remoteproc_core.c +++ b/drivers/remoteproc/remoteproc_core.c @@ -672,16 +672,16 @@ static rproc_handle_resource_t rproc_vdev_handler[RSC_LAST] = { }; /* handle firmware resource entries before booting the remote processor */ -static int rproc_handle_resources(struct rproc *rproc, int len, - rproc_handle_resource_t handlers[RSC_LAST]) +static int rproc_handle_resources(struct rproc *rproc, struct resource_table *table_ptr, + int len, rproc_handle_resource_t handlers[RSC_LAST]) { struct device *dev = &rproc->dev; rproc_handle_resource_t handler; int ret = 0, i; - for (i = 0; i < rproc->table_ptr->num; i++) { - int offset = rproc->table_ptr->offset[i]; - struct fw_rsc_hdr *hdr = (void *)rproc->table_ptr + offset; + for (i = 0; i < table_ptr->num; i++) { + int offset = table_ptr->offset[i]; + struct fw_rsc_hdr *hdr = (void *)table_ptr + offset; void *rsc = (void *)hdr + sizeof(*hdr); dev_dbg(dev, "rsc: type %d\n", hdr->type); @@ -1309,14 +1309,16 @@ static int rproc_fw_boot(struct rproc *rproc, const struct firmware *fw) rproc->max_notifyid = -1; /* look for virtio devices and register them */ - ret = rproc_handle_resources(rproc, tablesz, rproc_vdev_handler); + ret = rproc_handle_resources(rproc, rproc->cached_table, tablesz, + rproc_vdev_handler); if (ret) { dev_err(dev, "Failed to handle vdev resources: %d\n", ret); goto clean_up; } /* handle fw resources which are required to boot rproc */ - ret = rproc_handle_resources(rproc, tablesz, rproc_loading_handlers); + ret = rproc_handle_resources(rproc, rproc->cached_table, tablesz, + rproc_loading_handlers); if (ret) { dev_err(dev, "Failed to process resources: %d\n", ret); goto clean_up_resources; -- 1.9.1
WARNING: multiple messages have this Message-ID (diff)
From: Loic Pallardy <loic.pallardy@st.com> To: <bjorn.andersson@linaro.org>, <ohad@wizery.com>, <lee.jones@linaro.org> Cc: <loic.pallardy@st.com>, <linux-remoteproc@vger.kernel.org>, <linux-kernel@vger.kernel.org>, <kernel@stlinux.com> Subject: [PATCH v3 19/20] remotecore: core: Add resource table pointer argument to rproc_handle_resource Date: Wed, 12 Oct 2016 18:00:37 +0200 [thread overview] Message-ID: <1476288038-24909-20-git-send-email-loic.pallardy@st.com> (raw) In-Reply-To: <1476288038-24909-1-git-send-email-loic.pallardy@st.com> In current version, rproc_handle_resource use rproc->table_ptr as default resource table, fixing table to handle. This patch adds resource table as function argument to have more flexibility and be able to handle resources from any table. Signed-off-by: Loic Pallardy <loic.pallardy@st.com> --- drivers/remoteproc/remoteproc_core.c | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/drivers/remoteproc/remoteproc_core.c b/drivers/remoteproc/remoteproc_core.c index ee2dc8d..a6062e7 100644 --- a/drivers/remoteproc/remoteproc_core.c +++ b/drivers/remoteproc/remoteproc_core.c @@ -672,16 +672,16 @@ static rproc_handle_resource_t rproc_vdev_handler[RSC_LAST] = { }; /* handle firmware resource entries before booting the remote processor */ -static int rproc_handle_resources(struct rproc *rproc, int len, - rproc_handle_resource_t handlers[RSC_LAST]) +static int rproc_handle_resources(struct rproc *rproc, struct resource_table *table_ptr, + int len, rproc_handle_resource_t handlers[RSC_LAST]) { struct device *dev = &rproc->dev; rproc_handle_resource_t handler; int ret = 0, i; - for (i = 0; i < rproc->table_ptr->num; i++) { - int offset = rproc->table_ptr->offset[i]; - struct fw_rsc_hdr *hdr = (void *)rproc->table_ptr + offset; + for (i = 0; i < table_ptr->num; i++) { + int offset = table_ptr->offset[i]; + struct fw_rsc_hdr *hdr = (void *)table_ptr + offset; void *rsc = (void *)hdr + sizeof(*hdr); dev_dbg(dev, "rsc: type %d\n", hdr->type); @@ -1309,14 +1309,16 @@ static int rproc_fw_boot(struct rproc *rproc, const struct firmware *fw) rproc->max_notifyid = -1; /* look for virtio devices and register them */ - ret = rproc_handle_resources(rproc, tablesz, rproc_vdev_handler); + ret = rproc_handle_resources(rproc, rproc->cached_table, tablesz, + rproc_vdev_handler); if (ret) { dev_err(dev, "Failed to handle vdev resources: %d\n", ret); goto clean_up; } /* handle fw resources which are required to boot rproc */ - ret = rproc_handle_resources(rproc, tablesz, rproc_loading_handlers); + ret = rproc_handle_resources(rproc, rproc->cached_table, tablesz, + rproc_loading_handlers); if (ret) { dev_err(dev, "Failed to process resources: %d\n", ret); goto clean_up_resources; -- 1.9.1
next prev parent reply other threads:[~2016-10-12 16:00 UTC|newest] Thread overview: 46+ messages / expand[flat|nested] mbox.gz Atom feed top 2016-10-12 16:00 [PATCH v3 00/20] remoteproc: Allow platform-specific drivers to request resources Loic Pallardy 2016-10-12 16:00 ` Loic Pallardy 2016-10-12 16:00 ` [PATCH v3 01/20] remoteproc: core: New API to add new resources to the resource table Loic Pallardy 2016-10-12 16:00 ` Loic Pallardy 2016-10-12 16:00 ` [PATCH v3 02/20] remoteproc: core: Add function to dump " Loic Pallardy 2016-10-12 16:00 ` Loic Pallardy 2016-10-14 8:37 ` Matt Redfearn 2016-10-14 8:37 ` Matt Redfearn 2016-10-17 16:26 ` loic pallardy 2016-10-17 16:26 ` loic pallardy 2016-10-12 16:00 ` [PATCH v3 03/20] remoteproc: core: Add function to amend an existing resource table entry Loic Pallardy 2016-10-12 16:00 ` Loic Pallardy 2016-10-12 16:00 ` [PATCH v3 04/20] remoteproc: core: Add function to append a new " Loic Pallardy 2016-10-12 16:00 ` Loic Pallardy 2016-10-12 16:00 ` [PATCH v3 05/20] remoteproc: core: Add function to over-ride current resource table Loic Pallardy 2016-10-12 16:00 ` Loic Pallardy 2016-10-12 16:00 ` [PATCH v3 06/20] remoteproc: core: Associate action to resource request Loic Pallardy 2016-10-12 16:00 ` Loic Pallardy 2016-10-12 16:00 ` [PATCH v3 07/20] remoteproc: core: Add RSC_VDEV support to rproc_request_resource Loic Pallardy 2016-10-12 16:00 ` Loic Pallardy 2016-10-12 16:00 ` [PATCH v3 08/20] remoteproc: core: Complete VDEV support in rproc_dump_resource_table function Loic Pallardy 2016-10-12 16:00 ` Loic Pallardy 2016-10-12 16:00 ` [PATCH v3 09/20] remoteproc: core: Unify rproc_dump_resource_table debug messages Loic Pallardy 2016-10-12 16:00 ` Loic Pallardy 2016-10-12 16:00 ` [PATCH v3 10/20] remoteproc: core: Call rproc_dump_resource_table only if debug is activated Loic Pallardy 2016-10-12 16:00 ` Loic Pallardy 2016-10-12 16:00 ` [PATCH v3 11/20] remoteproc: core: Correction carveout name comparison in rproc_update_resource_table_entry Loic Pallardy 2016-10-12 16:00 ` Loic Pallardy 2016-10-12 16:00 ` [PATCH v3 12/20] remoteproc: core: Add function to verify an existing resource in rsc table Loic Pallardy 2016-10-12 16:00 ` Loic Pallardy 2016-10-12 16:00 ` [PATCH v3 13/20] remoteproc: core: Add vdev support to resource amending function Loic Pallardy 2016-10-12 16:00 ` Loic Pallardy 2016-10-12 16:00 ` [PATCH v3 14/20] remoteproc: core: Add force mode " Loic Pallardy 2016-10-12 16:00 ` Loic Pallardy 2016-10-12 16:00 ` [PATCH v3 15/20] remoteproc: core: Append resource only if .resource_table section is large enough Loic Pallardy 2016-10-12 16:00 ` Loic Pallardy 2016-10-12 16:00 ` [PATCH v3 16/20] remoteproc: core: Add resource request action support Loic Pallardy 2016-10-12 16:00 ` Loic Pallardy 2016-10-12 16:00 ` [PATCH v3 17/20] remoteproc: core: Add function to verify resource table consistency Loic Pallardy 2016-10-12 16:00 ` Loic Pallardy 2016-10-12 16:00 ` [PATCH v3 18/20] remoteproc: core: Clean-up resource table sanity checks Loic Pallardy 2016-10-12 16:00 ` Loic Pallardy 2016-10-12 16:00 ` Loic Pallardy [this message] 2016-10-12 16:00 ` [PATCH v3 19/20] remotecore: core: Add resource table pointer argument to rproc_handle_resource Loic Pallardy 2016-10-12 16:00 ` [PATCH v3 20/20] remoteproc: core: Support empty resource tables Loic Pallardy 2016-10-12 16:00 ` Loic Pallardy
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=1476288038-24909-20-git-send-email-loic.pallardy@st.com \ --to=loic.pallardy@st.com \ --cc=bjorn.andersson@linaro.org \ --cc=kernel@stlinux.com \ --cc=lee.jones@linaro.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-remoteproc@vger.kernel.org \ --cc=ohad@wizery.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.