drivers/crypto/octeontx: enable unbinding for the OcteonTx crypto engines
Checks
Commit Message
Like for Ethernet ports, the OcteonTx crypto engines must first be unbound
from their kernel module, then rebound to vfio-pci, before being usable
in DPDK.
As this capability is detected at runtime by dpdk-pmdinfo, add the info
in the PMD registering directives.
Then an external script can be used for bind and unbind.
Fixes: bfe2ae495ee268 ('crypto/octeontx: add PMD skeleton')
Cc: stable@dpdk.org
Cc: anoobj@marvell.com
Signed-off-by: Thierry Herbelot <thierry.herbelot@6wind.com>
---
drivers/crypto/octeontx/otx_cryptodev.c | 1 +
1 file changed, 1 insertion(+)
Comments
Hi Thierry,
Thanks for looking into this. Please see inline.
Thanks,
Anoob
> -----Original Message-----
> From: Thierry Herbelot <thierry.herbelot@6wind.com>
> Sent: Wednesday, September 11, 2019 9:37 PM
> To: dev@dpdk.org
> Cc: Thomas Monjalon <thomas@monjalon.net>; stable@dpdk.org; Anoob
> Joseph <anoobj@marvell.com>
> Subject: [EXT] [PATCH] drivers/crypto/octeontx: enable unbinding for the
[Anoob] The subject has to start with "crypto/octeontx: ...". Please correct this.
Also, please use OCTEON TX instead of OcteonTx here and in the description below.
> OcteonTx crypto engines
>
> External Email
>
> ----------------------------------------------------------------------
> Like for Ethernet ports, the OcteonTx crypto engines must first be unbound from
> their kernel module, then rebound to vfio-pci, before being usable in DPDK.
>
> As this capability is detected at runtime by dpdk-pmdinfo, add the info in the
> PMD registering directives.
>
> Then an external script can be used for bind and unbind.
>
> Fixes: bfe2ae495ee268 ('crypto/octeontx: add PMD skeleton')
> Cc: stable@dpdk.org
> Cc: anoobj@marvell.com
>
> Signed-off-by: Thierry Herbelot <thierry.herbelot@6wind.com>
> ---
> drivers/crypto/octeontx/otx_cryptodev.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/crypto/octeontx/otx_cryptodev.c
> b/drivers/crypto/octeontx/otx_cryptodev.c
> index fc64a5f3041f..16f1909966d0 100644
> --- a/drivers/crypto/octeontx/otx_cryptodev.c
> +++ b/drivers/crypto/octeontx/otx_cryptodev.c
> @@ -118,6 +118,7 @@ static struct cryptodev_driver otx_cryptodev_drv;
>
> RTE_PMD_REGISTER_PCI(CRYPTODEV_NAME_OCTEONTX_PMD,
> otx_cryptodev_pmd);
> RTE_PMD_REGISTER_PCI_TABLE(CRYPTODEV_NAME_OCTEONTX_PMD,
> pci_id_cpt_table);
> +RTE_PMD_REGISTER_KMOD_DEP(CRYPTODEV_NAME_OCTEONTX_PMD, "*
> igb_uio |
> +uio_pci_generic | vfio-pci");
> RTE_PMD_REGISTER_CRYPTO_DRIVER(otx_cryptodev_drv,
> otx_cryptodev_pmd.driver,
> otx_cryptodev_driver_id);
[Anoob] Only the following change is required. Can you send a revised patch with this change?
RTE_PMD_REGISTER_PCI_TABLE(CRYPTODEV_NAME_OCTEONTX_PMD, pci_id_cpt_table);
+RTE_PMD_REGISTER_KMOD_DEP(CRYPTODEV_NAME_OCTEONTX_PMD, "vfio-pci");
RTE_PMD_REGISTER_CRYPTO_DRIVER(otx_cryptodev_drv, otx_cryptodev_pmd.driver,
>
> --
> 2.20.1
@@ -118,6 +118,7 @@ static struct cryptodev_driver otx_cryptodev_drv;
RTE_PMD_REGISTER_PCI(CRYPTODEV_NAME_OCTEONTX_PMD, otx_cryptodev_pmd);
RTE_PMD_REGISTER_PCI_TABLE(CRYPTODEV_NAME_OCTEONTX_PMD, pci_id_cpt_table);
+RTE_PMD_REGISTER_KMOD_DEP(CRYPTODEV_NAME_OCTEONTX_PMD, "* igb_uio | uio_pci_generic | vfio-pci");
RTE_PMD_REGISTER_CRYPTO_DRIVER(otx_cryptodev_drv, otx_cryptodev_pmd.driver,
otx_cryptodev_driver_id);