From: "Horia Geantă" <horia.geanta@nxp.com> To: Herbert Xu <herbert@gondor.apana.org.au>, Stuart Yoder <stuyoder@gmail.com>, Laurentiu Tudor <laurentiu.tudor@nxp.com>, Li Yang <leoyang.li@nxp.com>, Roy Pledge <roy.pledge@nxp.com>, Catalin Marinas <catalin.marinas@arm.com>, Will Deacon <will.deacon@arm.com> Cc: "David S . Miller" <davem@davemloft.net>, Aymen Sghaier <aymen.sghaier@nxp.com>, linux-crypto@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH 02/11] Revert "staging: fsl-mc/dpio: remove couple of unused functions" Date: Mon, 10 Sep 2018 20:15:41 +0300 [thread overview] Message-ID: <20180910171550.5659-3-horia.geanta@nxp.com> (raw) In-Reply-To: <20180910171550.5659-1-horia.geanta@nxp.com> This reverts commit a211c8170b3c348353decb6e175c58a7814f218c. (+ updated to account for driver being moved out of staging) dpseci object will make use of these functions, thus it's time to add them back. Signed-off-by: Horia Geantă <horia.geanta@nxp.com> --- drivers/soc/fsl/dpio/dpio-service.c | 58 +++++++++++++++++++++++++++++++++++++ include/soc/fsl/dpaa2-io.h | 4 +++ 2 files changed, 62 insertions(+) diff --git a/drivers/soc/fsl/dpio/dpio-service.c b/drivers/soc/fsl/dpio/dpio-service.c index 9b17f72349ed..321a92613a7e 100644 --- a/drivers/soc/fsl/dpio/dpio-service.c +++ b/drivers/soc/fsl/dpio/dpio-service.c @@ -309,6 +309,37 @@ int dpaa2_io_service_rearm(struct dpaa2_io *d, } EXPORT_SYMBOL_GPL(dpaa2_io_service_rearm); +/** + * dpaa2_io_service_pull_fq() - pull dequeue functions from a fq. + * @d: the given DPIO service. + * @fqid: the given frame queue id. + * @s: the dpaa2_io_store object for the result. + * + * Return 0 for success, or error code for failure. + */ +int dpaa2_io_service_pull_fq(struct dpaa2_io *d, u32 fqid, + struct dpaa2_io_store *s) +{ + struct qbman_pull_desc pd; + int err; + + qbman_pull_desc_clear(&pd); + qbman_pull_desc_set_storage(&pd, s->vaddr, s->paddr, 1); + qbman_pull_desc_set_numframes(&pd, (u8)s->max); + qbman_pull_desc_set_fq(&pd, fqid); + + d = service_select(d); + if (!d) + return -ENODEV; + s->swp = d->swp; + err = qbman_swp_pull(d->swp, &pd); + if (err) + s->swp = NULL; + + return err; +} +EXPORT_SYMBOL(dpaa2_io_service_pull_fq); + /** * dpaa2_io_service_pull_channel() - pull dequeue functions from a channel. * @d: the given DPIO service. @@ -341,6 +372,33 @@ int dpaa2_io_service_pull_channel(struct dpaa2_io *d, u32 channelid, } EXPORT_SYMBOL_GPL(dpaa2_io_service_pull_channel); +/** + * dpaa2_io_service_enqueue_fq() - Enqueue a frame to a frame queue. + * @d: the given DPIO service. + * @fqid: the given frame queue id. + * @fd: the frame descriptor which is enqueued. + * + * Return 0 for successful enqueue, -EBUSY if the enqueue ring is not ready, + * or -ENODEV if there is no dpio service. + */ +int dpaa2_io_service_enqueue_fq(struct dpaa2_io *d, + u32 fqid, + const struct dpaa2_fd *fd) +{ + struct qbman_eq_desc ed; + + d = service_select(d); + if (!d) + return -ENODEV; + + qbman_eq_desc_clear(&ed); + qbman_eq_desc_set_no_orp(&ed, 0); + qbman_eq_desc_set_fq(&ed, fqid); + + return qbman_swp_enqueue(d->swp, &ed, fd); +} +EXPORT_SYMBOL(dpaa2_io_service_enqueue_fq); + /** * dpaa2_io_service_enqueue_qd() - Enqueue a frame to a QD. * @d: the given DPIO service. diff --git a/include/soc/fsl/dpaa2-io.h b/include/soc/fsl/dpaa2-io.h index ab51e40d11db..70997ab2146c 100644 --- a/include/soc/fsl/dpaa2-io.h +++ b/include/soc/fsl/dpaa2-io.h @@ -97,9 +97,13 @@ void dpaa2_io_service_deregister(struct dpaa2_io *service, int dpaa2_io_service_rearm(struct dpaa2_io *service, struct dpaa2_io_notification_ctx *ctx); +int dpaa2_io_service_pull_fq(struct dpaa2_io *d, u32 fqid, + struct dpaa2_io_store *s); int dpaa2_io_service_pull_channel(struct dpaa2_io *d, u32 channelid, struct dpaa2_io_store *s); +int dpaa2_io_service_enqueue_fq(struct dpaa2_io *d, u32 fqid, + const struct dpaa2_fd *fd); int dpaa2_io_service_enqueue_qd(struct dpaa2_io *d, u32 qdid, u8 prio, u16 qdbin, const struct dpaa2_fd *fd); int dpaa2_io_service_release(struct dpaa2_io *d, u32 bpid, -- 2.16.2
WARNING: multiple messages have this Message-ID (diff)
From: horia.geanta@nxp.com (Horia Geantă) To: linux-arm-kernel@lists.infradead.org Subject: [PATCH 02/11] Revert "staging: fsl-mc/dpio: remove couple of unused functions" Date: Mon, 10 Sep 2018 20:15:41 +0300 [thread overview] Message-ID: <20180910171550.5659-3-horia.geanta@nxp.com> (raw) In-Reply-To: <20180910171550.5659-1-horia.geanta@nxp.com> This reverts commit a211c8170b3c348353decb6e175c58a7814f218c. (+ updated to account for driver being moved out of staging) dpseci object will make use of these functions, thus it's time to add them back. Signed-off-by: Horia Geant? <horia.geanta@nxp.com> --- drivers/soc/fsl/dpio/dpio-service.c | 58 +++++++++++++++++++++++++++++++++++++ include/soc/fsl/dpaa2-io.h | 4 +++ 2 files changed, 62 insertions(+) diff --git a/drivers/soc/fsl/dpio/dpio-service.c b/drivers/soc/fsl/dpio/dpio-service.c index 9b17f72349ed..321a92613a7e 100644 --- a/drivers/soc/fsl/dpio/dpio-service.c +++ b/drivers/soc/fsl/dpio/dpio-service.c @@ -309,6 +309,37 @@ int dpaa2_io_service_rearm(struct dpaa2_io *d, } EXPORT_SYMBOL_GPL(dpaa2_io_service_rearm); +/** + * dpaa2_io_service_pull_fq() - pull dequeue functions from a fq. + * @d: the given DPIO service. + * @fqid: the given frame queue id. + * @s: the dpaa2_io_store object for the result. + * + * Return 0 for success, or error code for failure. + */ +int dpaa2_io_service_pull_fq(struct dpaa2_io *d, u32 fqid, + struct dpaa2_io_store *s) +{ + struct qbman_pull_desc pd; + int err; + + qbman_pull_desc_clear(&pd); + qbman_pull_desc_set_storage(&pd, s->vaddr, s->paddr, 1); + qbman_pull_desc_set_numframes(&pd, (u8)s->max); + qbman_pull_desc_set_fq(&pd, fqid); + + d = service_select(d); + if (!d) + return -ENODEV; + s->swp = d->swp; + err = qbman_swp_pull(d->swp, &pd); + if (err) + s->swp = NULL; + + return err; +} +EXPORT_SYMBOL(dpaa2_io_service_pull_fq); + /** * dpaa2_io_service_pull_channel() - pull dequeue functions from a channel. * @d: the given DPIO service. @@ -341,6 +372,33 @@ int dpaa2_io_service_pull_channel(struct dpaa2_io *d, u32 channelid, } EXPORT_SYMBOL_GPL(dpaa2_io_service_pull_channel); +/** + * dpaa2_io_service_enqueue_fq() - Enqueue a frame to a frame queue. + * @d: the given DPIO service. + * @fqid: the given frame queue id. + * @fd: the frame descriptor which is enqueued. + * + * Return 0 for successful enqueue, -EBUSY if the enqueue ring is not ready, + * or -ENODEV if there is no dpio service. + */ +int dpaa2_io_service_enqueue_fq(struct dpaa2_io *d, + u32 fqid, + const struct dpaa2_fd *fd) +{ + struct qbman_eq_desc ed; + + d = service_select(d); + if (!d) + return -ENODEV; + + qbman_eq_desc_clear(&ed); + qbman_eq_desc_set_no_orp(&ed, 0); + qbman_eq_desc_set_fq(&ed, fqid); + + return qbman_swp_enqueue(d->swp, &ed, fd); +} +EXPORT_SYMBOL(dpaa2_io_service_enqueue_fq); + /** * dpaa2_io_service_enqueue_qd() - Enqueue a frame to a QD. * @d: the given DPIO service. diff --git a/include/soc/fsl/dpaa2-io.h b/include/soc/fsl/dpaa2-io.h index ab51e40d11db..70997ab2146c 100644 --- a/include/soc/fsl/dpaa2-io.h +++ b/include/soc/fsl/dpaa2-io.h @@ -97,9 +97,13 @@ void dpaa2_io_service_deregister(struct dpaa2_io *service, int dpaa2_io_service_rearm(struct dpaa2_io *service, struct dpaa2_io_notification_ctx *ctx); +int dpaa2_io_service_pull_fq(struct dpaa2_io *d, u32 fqid, + struct dpaa2_io_store *s); int dpaa2_io_service_pull_channel(struct dpaa2_io *d, u32 channelid, struct dpaa2_io_store *s); +int dpaa2_io_service_enqueue_fq(struct dpaa2_io *d, u32 fqid, + const struct dpaa2_fd *fd); int dpaa2_io_service_enqueue_qd(struct dpaa2_io *d, u32 qdid, u8 prio, u16 qdbin, const struct dpaa2_fd *fd); int dpaa2_io_service_release(struct dpaa2_io *d, u32 bpid, -- 2.16.2
next prev parent reply other threads:[~2018-09-10 17:15 UTC|newest] Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top 2018-09-10 17:15 [PATCH 00/11] crypto: caam - add DPAA2 (DPSECI) driver Horia Geantă 2018-09-10 17:15 ` Horia Geantă 2018-09-10 17:15 ` [PATCH 01/11] bus: fsl-mc: add support for dpseci device type Horia Geantă 2018-09-10 17:15 ` Horia Geantă 2018-09-10 17:15 ` Horia Geantă [this message] 2018-09-10 17:15 ` [PATCH 02/11] Revert "staging: fsl-mc/dpio: remove couple of unused functions" Horia Geantă 2018-09-10 20:10 ` Li Yang 2018-09-10 20:10 ` Li Yang 2018-09-10 20:10 ` Li Yang 2018-09-10 17:15 ` [PATCH 03/11] soc: fsl: dpio: add frame list format support Horia Geantă 2018-09-10 17:15 ` Horia Geantă 2018-09-10 17:15 ` [PATCH 04/11] soc: fsl: dpio: add congestion notification support Horia Geantă 2018-09-10 17:15 ` Horia Geantă 2018-09-10 17:15 ` Horia Geantă 2018-09-10 20:11 ` Li Yang 2018-09-10 20:11 ` Li Yang 2018-09-10 20:11 ` Li Yang 2018-09-10 17:15 ` [PATCH 05/11] crypto: caam - add DPAA2-CAAM (DPSECI) backend API Horia Geantă 2018-09-10 17:15 ` Horia Geantă 2018-09-10 17:15 ` [PATCH 06/11] crypto: caam - add Queue Interface v2 error codes Horia Geantă 2018-09-10 17:15 ` Horia Geantă 2018-09-10 17:15 ` Horia Geantă 2018-09-10 17:15 ` [PATCH 07/11] crypto: caam/qi2 - add DPAA2-CAAM driver Horia Geantă 2018-09-10 17:15 ` Horia Geantă 2018-09-10 23:25 ` kbuild test robot 2018-09-10 23:25 ` kbuild test robot 2018-09-11 5:20 ` kbuild test robot 2018-09-11 5:20 ` kbuild test robot 2018-09-11 5:20 ` [RFC PATCH] crypto: dpaa2_caam_iova_to_virt() can be static kbuild test robot 2018-09-11 5:20 ` kbuild test robot 2018-09-10 17:15 ` [PATCH 08/11] crypto: caam/qi2 - add skcipher algorithms Horia Geantă 2018-09-10 17:15 ` Horia Geantă 2018-09-10 17:15 ` [PATCH 09/11] crypto: caam - export ahash shared descriptor generation Horia Geantă 2018-09-10 17:15 ` Horia Geantă 2018-09-10 17:15 ` [PATCH 10/11] crypto: caam/qi2 - add support for ahash algorithms Horia Geantă 2018-09-10 17:15 ` Horia Geantă 2018-09-10 17:15 ` [PATCH 11/11] arm64: defconfig: enable CAAM crypto engine on QorIQ DPAA2 SoCs Horia Geantă 2018-09-10 17:15 ` Horia Geantă
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=20180910171550.5659-3-horia.geanta@nxp.com \ --to=horia.geanta@nxp.com \ --cc=aymen.sghaier@nxp.com \ --cc=catalin.marinas@arm.com \ --cc=davem@davemloft.net \ --cc=herbert@gondor.apana.org.au \ --cc=laurentiu.tudor@nxp.com \ --cc=leoyang.li@nxp.com \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-crypto@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=roy.pledge@nxp.com \ --cc=stuyoder@gmail.com \ --cc=will.deacon@arm.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.