From: Bjorn Andersson <bjorn.andersson@linaro.org>
To: Brian Masney <masneyb@onstation.org>
Cc: agross@kernel.org, linux-arm-msm@vger.kernel.org,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH] firmware: qcom: scm: add 32 bit iommu page table support
Date: Wed, 1 Jan 2020 23:36:07 -0800 [thread overview]
Message-ID: <20200102073607.GS549437@yoga> (raw)
In-Reply-To: <20200101033704.32264-1-masneyb@onstation.org>
On Tue 31 Dec 19:37 PST 2019, Brian Masney wrote:
> Add 32 bit implmentations of the functions
> __qcom_scm_iommu_secure_ptbl_size() and
> __qcom_scm_iommu_secure_ptbl_init() that are required by the qcom_iommu
> driver.
>
Hi Brian,
This looks good, but I was hoping to hoping to reach a conclusion and
merge [1] - which in patch 16 squashes the argument filling boiler plate
code of the 32 and 64-bit version of scm and hence implements the same.
If you have time to take a peek at this series I would greatly
appreciate it (not a lot of people testing 32-bit these days...)
[1] https://patchwork.kernel.org/project/linux-arm-msm/list/?series=215943
Regards,
Bjorn
> Signed-off-by: Brian Masney <masneyb@onstation.org>
> ---
> drivers/firmware/qcom_scm-32.c | 32 ++++++++++++++++++++++++++++++--
> 1 file changed, 30 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/firmware/qcom_scm-32.c b/drivers/firmware/qcom_scm-32.c
> index 48e2ef794ea3..f149a85d36b0 100644
> --- a/drivers/firmware/qcom_scm-32.c
> +++ b/drivers/firmware/qcom_scm-32.c
> @@ -638,13 +638,41 @@ int __qcom_scm_restore_sec_cfg(struct device *dev, u32 device_id,
> int __qcom_scm_iommu_secure_ptbl_size(struct device *dev, u32 spare,
> size_t *size)
> {
> - return -ENODEV;
> + int psize[2] = { 0, 0 };
> + int ret;
> +
> + ret = qcom_scm_call(dev, QCOM_SCM_SVC_MP,
> + QCOM_SCM_IOMMU_SECURE_PTBL_SIZE,
> + &spare, sizeof(spare), &psize, sizeof(psize));
> + if (ret || psize[1])
> + return ret ? ret : -EINVAL;
> +
> + *size = psize[0];
> +
> + return 0;
> }
>
> int __qcom_scm_iommu_secure_ptbl_init(struct device *dev, u64 addr, u32 size,
> u32 spare)
> {
> - return -ENODEV;
> + struct msm_scm_ptbl_init {
> + __le32 paddr;
> + __le32 size;
> + __le32 spare;
> + } req;
> + int ret, scm_ret = 0;
> +
> + req.paddr = addr;
> + req.size = size;
> + req.spare = spare;
> +
> + ret = qcom_scm_call(dev, QCOM_SCM_SVC_MP,
> + QCOM_SCM_IOMMU_SECURE_PTBL_INIT,
> + &req, sizeof(req), &scm_ret, sizeof(scm_ret));
> + if (ret || scm_ret)
> + return ret ? ret : -EINVAL;
> +
> + return 0;
> }
>
> int __qcom_scm_io_readl(struct device *dev, phys_addr_t addr,
> --
> 2.21.0
>
next prev parent reply other threads:[~2020-01-02 7:36 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-01-01 3:37 [PATCH] firmware: qcom: scm: add 32 bit iommu page table support Brian Masney
2020-01-01 11:15 ` Stephan Gerhold
2020-01-01 20:14 ` Rob Clark
2020-01-05 6:56 ` Stephen Boyd
2020-01-02 7:36 ` Bjorn Andersson [this message]
2020-01-02 8:50 ` Brian Masney
2020-01-04 2:24 ` Brian Masney
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=20200102073607.GS549437@yoga \
--to=bjorn.andersson@linaro.org \
--cc=agross@kernel.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=masneyb@onstation.org \
/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: link
Be 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.