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>
This commit is contained in:
committed by
Herbert Xu
parent
174fdc93a2
commit
1894cb1de6
@@ -248,6 +248,16 @@ static inline void __iomem *adf_get_pmisc_base(struct adf_accel_dev *accel_dev)
|
|||||||
return pmisc->virt_addr;
|
return pmisc->virt_addr;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static inline void __iomem *adf_get_etr_base(struct adf_accel_dev *accel_dev)
|
||||||
|
{
|
||||||
|
struct adf_hw_device_data *hw_data = accel_dev->hw_device;
|
||||||
|
struct adf_bar *etr;
|
||||||
|
|
||||||
|
etr = &GET_BARS(accel_dev)[hw_data->get_etr_bar_id(hw_data)];
|
||||||
|
|
||||||
|
return etr->virt_addr;
|
||||||
|
}
|
||||||
|
|
||||||
static inline void __iomem *adf_get_aram_base(struct adf_accel_dev *accel_dev)
|
static inline void __iomem *adf_get_aram_base(struct adf_accel_dev *accel_dev)
|
||||||
{
|
{
|
||||||
struct adf_hw_device_data *hw_data = accel_dev->hw_device;
|
struct adf_hw_device_data *hw_data = accel_dev->hw_device;
|
||||||
|
@@ -321,8 +321,7 @@ static int reset_ring_pair(void __iomem *csr, u32 bank_number)
|
|||||||
int adf_gen4_ring_pair_reset(struct adf_accel_dev *accel_dev, u32 bank_number)
|
int adf_gen4_ring_pair_reset(struct adf_accel_dev *accel_dev, u32 bank_number)
|
||||||
{
|
{
|
||||||
struct adf_hw_device_data *hw_data = accel_dev->hw_device;
|
struct adf_hw_device_data *hw_data = accel_dev->hw_device;
|
||||||
u32 etr_bar_id = hw_data->get_etr_bar_id(hw_data);
|
void __iomem *csr = adf_get_etr_base(accel_dev);
|
||||||
void __iomem *csr;
|
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
if (bank_number >= hw_data->num_banks)
|
if (bank_number >= hw_data->num_banks)
|
||||||
@@ -331,7 +330,6 @@ int adf_gen4_ring_pair_reset(struct adf_accel_dev *accel_dev, u32 bank_number)
|
|||||||
dev_dbg(&GET_DEV(accel_dev),
|
dev_dbg(&GET_DEV(accel_dev),
|
||||||
"ring pair reset for bank:%d\n", bank_number);
|
"ring pair reset for bank:%d\n", bank_number);
|
||||||
|
|
||||||
csr = (&GET_BARS(accel_dev)[etr_bar_id])->virt_addr;
|
|
||||||
ret = reset_ring_pair(csr, bank_number);
|
ret = reset_ring_pair(csr, bank_number);
|
||||||
if (ret)
|
if (ret)
|
||||||
dev_err(&GET_DEV(accel_dev),
|
dev_err(&GET_DEV(accel_dev),
|
||||||
|
@@ -474,7 +474,6 @@ err:
|
|||||||
int adf_init_etr_data(struct adf_accel_dev *accel_dev)
|
int adf_init_etr_data(struct adf_accel_dev *accel_dev)
|
||||||
{
|
{
|
||||||
struct adf_etr_data *etr_data;
|
struct adf_etr_data *etr_data;
|
||||||
struct adf_hw_device_data *hw_data = accel_dev->hw_device;
|
|
||||||
void __iomem *csr_addr;
|
void __iomem *csr_addr;
|
||||||
u32 size;
|
u32 size;
|
||||||
u32 num_banks = 0;
|
u32 num_banks = 0;
|
||||||
@@ -495,8 +494,7 @@ int adf_init_etr_data(struct adf_accel_dev *accel_dev)
|
|||||||
}
|
}
|
||||||
|
|
||||||
accel_dev->transport = etr_data;
|
accel_dev->transport = etr_data;
|
||||||
i = hw_data->get_etr_bar_id(hw_data);
|
csr_addr = adf_get_etr_base(accel_dev);
|
||||||
csr_addr = accel_dev->accel_pci_dev.pci_bars[i].virt_addr;
|
|
||||||
|
|
||||||
/* accel_dev->debugfs_dir should always be non-NULL here */
|
/* accel_dev->debugfs_dir should always be non-NULL here */
|
||||||
etr_data->debug = debugfs_create_dir("transport",
|
etr_data->debug = debugfs_create_dir("transport",
|
||||||
|
Reference in New Issue
Block a user