Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

crypto: qat - adf_get_etr_base() helper

Add and use the new helper function adf_get_etr_base() which retrieves
the virtual address of the ring bar.

This will be used extensively when adding support for Live Migration.

Signed-off-by: Giovanni Cabiddu <giovanni.cabiddu@intel.com>
Signed-off-by: Xin Zeng <xin.zeng@intel.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>

authored by

Giovanni Cabiddu and committed by
Herbert Xu
1894cb1d 174fdc93

+12 -6
+10
drivers/crypto/intel/qat/qat_common/adf_common_drv.h
··· 248 248 return pmisc->virt_addr; 249 249 } 250 250 251 + static inline void __iomem *adf_get_etr_base(struct adf_accel_dev *accel_dev) 252 + { 253 + struct adf_hw_device_data *hw_data = accel_dev->hw_device; 254 + struct adf_bar *etr; 255 + 256 + etr = &GET_BARS(accel_dev)[hw_data->get_etr_bar_id(hw_data)]; 257 + 258 + return etr->virt_addr; 259 + } 260 + 251 261 static inline void __iomem *adf_get_aram_base(struct adf_accel_dev *accel_dev) 252 262 { 253 263 struct adf_hw_device_data *hw_data = accel_dev->hw_device;
+1 -3
drivers/crypto/intel/qat/qat_common/adf_gen4_hw_data.c
··· 321 321 int adf_gen4_ring_pair_reset(struct adf_accel_dev *accel_dev, u32 bank_number) 322 322 { 323 323 struct adf_hw_device_data *hw_data = accel_dev->hw_device; 324 - u32 etr_bar_id = hw_data->get_etr_bar_id(hw_data); 325 - void __iomem *csr; 324 + void __iomem *csr = adf_get_etr_base(accel_dev); 326 325 int ret; 327 326 328 327 if (bank_number >= hw_data->num_banks) ··· 330 331 dev_dbg(&GET_DEV(accel_dev), 331 332 "ring pair reset for bank:%d\n", bank_number); 332 333 333 - csr = (&GET_BARS(accel_dev)[etr_bar_id])->virt_addr; 334 334 ret = reset_ring_pair(csr, bank_number); 335 335 if (ret) 336 336 dev_err(&GET_DEV(accel_dev),
+1 -3
drivers/crypto/intel/qat/qat_common/adf_transport.c
··· 474 474 int adf_init_etr_data(struct adf_accel_dev *accel_dev) 475 475 { 476 476 struct adf_etr_data *etr_data; 477 - struct adf_hw_device_data *hw_data = accel_dev->hw_device; 478 477 void __iomem *csr_addr; 479 478 u32 size; 480 479 u32 num_banks = 0; ··· 494 495 } 495 496 496 497 accel_dev->transport = etr_data; 497 - i = hw_data->get_etr_bar_id(hw_data); 498 - csr_addr = accel_dev->accel_pci_dev.pci_bars[i].virt_addr; 498 + csr_addr = adf_get_etr_base(accel_dev); 499 499 500 500 /* accel_dev->debugfs_dir should always be non-NULL here */ 501 501 etr_data->debug = debugfs_create_dir("transport",