Tadeusz Struk
256b1cfb9a
crypto: qat - change the adf_ctl_stop_devices to void
...
Change the adf_ctl_stop_devices to a void function.
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2016-05-13 17:30:18 +08:00
Tadeusz Struk
d0c15bd506
crypto: qat - make adf_vf_isr.c dependant on IOV config
...
The adf_vf_isr.c should only be build if CONFIG_PCI_IOV is enabled
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2016-05-03 16:10:13 +08:00
Tadeusz Struk
cca0a7b0ac
crypto: qat - Fix typo in comments
...
Fix copy and paste typo adf_isr.c
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2016-05-03 16:10:13 +08:00
Herbert Xu
6dd4c83ed7
Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
...
Merge the crypto tree to pull in the qat adf_init_pf_wq fix.
2016-05-03 16:01:52 +08:00
Tadeusz Struk
6dc5df71ee
crypto: qat - fix adf_ctl_drv.c:undefined reference to adf_init_pf_wq
...
Fix undefined reference issue reported by kbuild test robot.
Cc: <stable@vger.kernel.org >
Reported-by: kbuild test robot <fengguang.wu@intel.com >
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2016-05-03 15:53:48 +08:00
Herbert Xu
6f6438975d
Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
...
Merge the crypto tree to pull in the qat adf_init_pf_wq change.
2016-04-28 09:13:03 +08:00
Tadeusz Struk
9e209fcfb8
crypto: qat - fix invalid pf2vf_resp_wq logic
...
The pf2vf_resp_wq is a global so it has to be created at init
and destroyed at exit, instead of per device.
Cc: <stable@vger.kernel.org >
Tested-by: Suresh Marikkannu <sureshx.marikkannu@intel.com >
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2016-04-28 08:58:07 +08:00
Tadeusz Struk
b3ab30a7cb
crypto: qat - fix section mismatch warning
...
Fix Section mismatch warinig in adf_exit_vf_wq()
Reported-by: kbuild test robot <fengguang.wu@intel.com >
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2016-04-18 18:49:52 +08:00
Tadeusz Struk
87ba569a39
crypto: qat - interrupts need to be enabled when VFs are disabled
...
IRQs need to be enabled when VFs go down in case some VF to PF
comms happens.
Tested-by: Suman Bangalore Sathyanarayana <sumanx.bangalore.sathyanarayana@intel.com >
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2016-04-18 18:49:52 +08:00
Tadeusz Struk
25c6ffb249
crypto: qat - check if PF is running
...
Before VF sends a signal to PF it should check if PF
is still running.
Tested-by: Suman Bangalore Sathyanarayana <sumanx.bangalore.sathyanarayana@intel.com >
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2016-04-18 18:49:51 +08:00
Tadeusz Struk
02dc8d634b
crypto: qat - move vf2pf_init and vf2pf_exit to common
...
The vf2pf_init and vf2pf_exit are exactly the same for all VFs
so move them to common and reuse.
Tested-by: Suman Bangalore Sathyanarayana <sumanx.bangalore.sathyanarayana@intel.com >
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2016-04-18 18:49:47 +08:00
Tadeusz Struk
d6064165ba
crypto: qat - adf_dev_stop should not be called in atomic context
...
VFs call adf_dev_stop() from a PF to VF interrupt bottom half.
This causes an oops "scheduling while atomic", because it tries
to acquire a mutex to un-register crypto algorithms.
This patch fixes the issue by calling adf_dev_stop() asynchronously.
Changes in v2:
- change kthread to a work queue.
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2016-04-15 22:35:45 +08:00
Tadeusz Struk
f1420ceef3
crypto: qat - changed adf_dev_stop to void
...
It returns always zero anyway.
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2016-04-05 20:35:54 +08:00
Tadeusz Struk
cb00bca42f
crypto: qat - explicitly stop all VFs first
...
When stopping devices it is not enought to loop backwards.
We need to explicitly stop all VFs first.
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2016-04-05 20:35:53 +08:00
Tudor Ambarus
738f98233b
crypto: qat - fix address leaking of RSA public exponent
...
Signed-off-by: Tudor Ambarus <tudor-dan.ambarus@nxp.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2016-04-05 20:35:52 +08:00
Tudor Ambarus
aa8b6dd4b0
crypto: qat - avoid memory corruption or undefined behaviour
...
memcopying to a (null pointer + offset) will result
in memory corruption or undefined behaviour.
Signed-off-by: Tudor Ambarus <tudor-dan.ambarus@nxp.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2016-04-05 20:35:52 +08:00
Ahsan Atta
0c4935b31d
crypto: qat - Remove redundant nrbg rings
...
Remove redundant nrbg rings.
Signed-off-by: Ahsan Atta <ahsan.atta@intel.com >
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2016-04-05 20:35:52 +08:00
Tadeusz Struk
082ebe92ca
crypto: qat - make sure const_tab is 1024 bytes aligned
...
FW requires the const_tab to be 1024 bytes aligned.
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2016-04-05 20:35:52 +08:00
Tadeusz Struk
34074205bb
crypto: qat - remove redundant arbiter configuration
...
The default arbiter configuration for ring weights and response ordering
is exactly what we want so we don't need to configure anything more.
This will also fix the problem where number of bundles is different
between different devices.
Reported-by: Ahsan Atta <ahsan.atta@intel.com >
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2016-03-11 21:22:18 +08:00
Pingchao Yang
84a0ced0b6
crypto: qat - Change the definition of icp_qat_uof_regtype
...
The definition of icp_qat_uof_regtype should be coherent with
the definition in firmware compiler.
Signed-off-by: Yang Pingchao <pingchao.yang@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2016-03-11 21:19:19 +08:00
Pingchao Yang
f93a8b25d2
crypto: qat - The AE id should be less than the maximal AE number
...
Signed-off-by: Yang Pingchao <pingchao.yang@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2016-02-28 03:26:31 +08:00
Tadeusz Struk
26d52ea39b
crypto: qat - fix leak on error path
...
Fix a leak on error path in qat asym
Reported-by: Salvatore Benedetto <salvatore.benedetto@intel.com >
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2016-02-17 04:07:52 +08:00
Cabiddu, Giovanni
7768fb2ee9
crypto: qat - Reduced reqsize in qat_algs
...
req_alloc functions already take into account the request data structure
when allocating memory.
Signed-off-by: Giovanni Cabiddu <giovanni.cabiddu@intel.com >
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2016-01-25 22:42:10 +08:00
Atta, Ahsan
ba171135bf
crypto: qat - Pack cfg ctl structs
...
-This is required to support 32bit adf_ctl
utility on a 64bit driver
Signed-off-by: Ahsan Atta <ahsan.atta@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2016-01-25 22:39:02 +08:00
Pingchao Yang
718837c88b
crypto: qat - remove redundant function call
...
adf_dev_restore(accel_dev) was called in adf_dev_shutdown,no
need to call it in adf_device_reset_worker after adf_dev_shutdown
was called.
Signed-off-by: Yang Pingchao <pingchao.yang@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2016-01-25 22:39:01 +08:00
Tadeusz Struk
a2f5106f0d
crypto: qat - change name for c6xx dev type
...
change name for c6x dev type to more generic.
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2016-01-25 22:39:00 +08:00
Tadeusz Struk
70401f4edc
crypto: qat - update init_esram for C3xxx dev type
...
There is no esram on C3xxx devices so we don't need to wait for
it to initialize.
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2016-01-18 18:16:32 +08:00
Pingchao Yang
c0e77a11ff
crypto: qat - fix timeout issues
...
Change the variable times data type and timeout conditon since the value
of times should be -1 after loop.
Signed-off-by: Yang Pingchao <pingchao.yang@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2016-01-18 18:16:32 +08:00
Pingchao Yang
91a93eafea
crypto: qat - remove to call get_sram_bar_id for qat_c3xxx
...
Reported-by : Struk, Tadeusz <tadeusz.struk@intel.com >
Signed-off-by: Yang Pingchao <pingchao.yang@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2016-01-18 18:16:32 +08:00
Tadeusz Struk
2a5de720dc
crypto: qat - fix SKU definiftion for c3xxx dev
...
c3xxx doesn't have the esram BAR and only has 6 ue.
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2015-12-25 21:41:09 +08:00
Tadeusz Struk
1fa844e2ff
crypto: qat - Fix random config build issue
...
Reported-by: kbuild test robot <fengguang.wu@intel.com >
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2015-12-25 21:41:07 +08:00
Ahsan Atta
a239c36e52
crypto: qat - Rename dh895xcc mmp firmware
...
Resending again. The fw name suppoed to be 895xcc instead of 895xxcc.
Sorry for the noise.
Rename dh895xcc mmp fw to make it consistent with other mmp images.
Signed-off-by: Ahsan Atta <ahsan.atta@intel.com >
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2015-12-25 21:41:04 +08:00
Geliang Tang
dc2c632272
crypto: qat - use list_for_each_entry*
...
Use list_for_each_entry*() instead of list_for_each*() to simplify
the code.
Signed-off-by: Geliang Tang <geliangtang@163.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2015-12-22 20:43:41 +08:00
Pingchao Yang
51d77dddff
crypto: qat - fix some timeout tests
...
Change the timeout condition since the times value would be -1 after
running MAX_RETRY_TIMES.
Reported-by: Dan Carpenter <dan.carpenter@oracle.com >
Signed-off-by: Yang Pingchao <pingchao.yang@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2015-12-22 20:43:32 +08:00
Pingchao Yang
46621e6f84
crypto: qat - fix CTX_ENABLES bits shift direction issue
...
AE CTX bits should be 8-15 in CTX_ENABLES, so the mask
value 0xff should be left shifted 0x8.
Reported-by: Dan Carpenter <dan.carpenter@oracle.com >
Signed-off-by: Yang Pingchao <pingchao.yang@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2015-12-22 20:43:31 +08:00
Tadeusz Struk
81b312f11d
crypto: qat - uint8_t is not large enough for accel_id
...
accel_id has to be large enough to hold ADF_MAX_DEVICES + 1
(which is > 1025) so uint8_t is too small.
Reported-by: Dan Carpenter <dan.carpenter@oracle.com >
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2015-12-14 21:03:38 +08:00
Zeng Xin
40c18a59d2
crypto: qat - enable VF irq after guest exits ungracefully
...
The VF bundle interrupt is not triggered any more in
the case when guest is shut down with sample app running.
Need to clear the flag interrupt bit when restarting to fix
this irrecoverable state.
Signed-off-by: Zeng Xin <xin.zeng@intel.com >
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2015-12-14 21:03:36 +08:00
Tadeusz Struk
75910d375e
crypto: qat - select PCI_IOV when VF are enabled
...
Fix i386-randconfig-x004-12092241.
PCI_IOV needs to be selected when VFs are enabled
Reported-by: <fengguang.wu@intel.com >
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2015-12-11 22:55:17 +08:00
Harvijay Saini
06cabd755a
crypto: qat - ring returning retry even though ring has BW
...
When many threads submit multiple requests they get blocked until all
responses are processed, which prevents them from submitting more requests
even though there is space on the rings.
To fix this we need to decrement the inflight counter early to in the callback.
Signed-off-by: Harvijay Saini <harvijayx.saini@intel.com >
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2015-12-11 22:55:16 +08:00
Tadeusz Struk
3771df3cff
crypto: qat - add support for c62xvf accel type
...
Add support for c62x accelerator Virtual Function
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2015-12-09 20:03:56 +08:00
Tadeusz Struk
8b206f2d66
crypto: qat - add support for c3xxxvf accel type
...
Add support for c3xxx accelerator Virtual Function
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2015-12-09 20:03:55 +08:00
Tadeusz Struk
a6dabee6c8
crypto: qat - add support for c62x accel type
...
Add support for qat c62x accel type
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2015-12-09 20:03:53 +08:00
Tadeusz Struk
890c55f4dc
crypto: qat - add support for c3xxx accel type
...
Add support for c3xxx accel type.
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2015-12-09 20:03:52 +08:00
Tadeusz Struk
1a72d3a6d1
crypto: qat - move isr files to qat common so that they can be reused
...
Move qat_isr.c and qat_isrvf.c files to qat_common dir
so that they can be reused by all devices.
Remove adf_drv.h files because thay are not longer needed.
Move adf_dev_configure() function to qat_common so it can be reused.
Also some minor updates to common code for multidevice.
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2015-12-09 20:03:51 +08:00
Pingchao Yang
b0272276d9
crypto: qat - add support for new devices to FW loader
...
FW loader updates for new qat devices
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2015-12-09 20:03:49 +08:00
Tadeusz Struk
9809ebcd0e
crypto: qat - add new device definitions
...
Add dev ids and names for the new device types.
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2015-12-09 20:03:47 +08:00
Jim Davis
f143fc6735
crypto: qat - fix typo in clean-files
...
A typo in the Makefile leaves qat_rsaprivkey-asn1.h hanging around.
Signed-off-by: Jim Davis <jim.epost@gmail.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2015-11-24 18:19:18 +08:00
Julia Lawall
202a32f046
crypto: qat - constify pci_error_handlers structures
...
This pci_error_handlers structure is never modified, like all the other
pci_error_handlers structures, so declare it as const.
Done with the help of Coccinelle.
Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2015-11-17 22:00:41 +08:00
Salvatore Benedetto
c52b673389
crypto: qat - remove superfluous check from adf_probe
...
- ent->device is already checked at the beginning of the function
against the same value. This check is a duplicate.
Signed-off-by: Salvatore Benedetto <salvatore.benedetto@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2015-11-17 21:58:37 +08:00
Tadeusz Struk
d956fed7b6
crypto: qat - fix get instance function
...
Fix the logic in case we have found a device on a given node.
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2015-11-17 21:58:36 +08:00