crypto: qat - fix bar discovery for c62x
Some accelerators of the c62x series have only two bars. This patch skips BAR0 if the accelerator does not have it. Cc: <stable@vger.kernel.org> Signed-off-by: Giovanni Cabiddu <giovanni.cabiddu@intel.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
This commit is contained in:
Родитель
11e3b725cf
Коммит
3484ecbe0e
|
@ -233,7 +233,7 @@ static int adf_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
|
||||||
&hw_data->accel_capabilities_mask);
|
&hw_data->accel_capabilities_mask);
|
||||||
|
|
||||||
/* Find and map all the device's BARS */
|
/* Find and map all the device's BARS */
|
||||||
i = 0;
|
i = (hw_data->fuses & ADF_DEVICE_FUSECTL_MASK) ? 1 : 0;
|
||||||
bar_mask = pci_select_bars(pdev, IORESOURCE_MEM);
|
bar_mask = pci_select_bars(pdev, IORESOURCE_MEM);
|
||||||
for_each_set_bit(bar_nr, (const unsigned long *)&bar_mask,
|
for_each_set_bit(bar_nr, (const unsigned long *)&bar_mask,
|
||||||
ADF_PCI_MAX_BARS * 2) {
|
ADF_PCI_MAX_BARS * 2) {
|
||||||
|
|
|
@ -69,6 +69,7 @@
|
||||||
#define ADF_ERRSOU5 (0x3A000 + 0xD8)
|
#define ADF_ERRSOU5 (0x3A000 + 0xD8)
|
||||||
#define ADF_DEVICE_FUSECTL_OFFSET 0x40
|
#define ADF_DEVICE_FUSECTL_OFFSET 0x40
|
||||||
#define ADF_DEVICE_LEGFUSE_OFFSET 0x4C
|
#define ADF_DEVICE_LEGFUSE_OFFSET 0x4C
|
||||||
|
#define ADF_DEVICE_FUSECTL_MASK 0x80000000
|
||||||
#define ADF_PCI_MAX_BARS 3
|
#define ADF_PCI_MAX_BARS 3
|
||||||
#define ADF_DEVICE_NAME_LENGTH 32
|
#define ADF_DEVICE_NAME_LENGTH 32
|
||||||
#define ADF_ETR_MAX_RINGS_PER_BANK 16
|
#define ADF_ETR_MAX_RINGS_PER_BANK 16
|
||||||
|
|
Загрузка…
Ссылка в новой задаче