Lines Matching refs:accel_dev
22 static void adf_cleanup_accel(struct adf_accel_dev *accel_dev) in adf_cleanup_accel() argument
24 if (accel_dev->hw_device) { in adf_cleanup_accel()
25 adf_clean_hw_data_4xxx(accel_dev->hw_device); in adf_cleanup_accel()
26 accel_dev->hw_device = NULL; in adf_cleanup_accel()
28 adf_cfg_dev_remove(accel_dev); in adf_cleanup_accel()
29 debugfs_remove(accel_dev->debugfs_dir); in adf_cleanup_accel()
30 adf_devmgr_rm_dev(accel_dev, NULL); in adf_cleanup_accel()
33 static int adf_cfg_dev_init(struct adf_accel_dev *accel_dev) in adf_cfg_dev_init() argument
38 config = accel_dev->accel_id % 2 ? ADF_CFG_DC : ADF_CFG_CY; in adf_cfg_dev_init()
40 ret = adf_cfg_section_add(accel_dev, ADF_GENERAL_SEC); in adf_cfg_dev_init()
47 ret = adf_cfg_add_key_value_param(accel_dev, ADF_GENERAL_SEC, in adf_cfg_dev_init()
56 int adf_crypto_dev_config(struct adf_accel_dev *accel_dev) in adf_crypto_dev_config() argument
59 int banks = GET_MAX_BANKS(accel_dev); in adf_crypto_dev_config()
66 if (adf_hw_dev_has_crypto(accel_dev)) in adf_crypto_dev_config()
71 ret = adf_cfg_section_add(accel_dev, ADF_KERNEL_SEC); in adf_crypto_dev_config()
75 ret = adf_cfg_section_add(accel_dev, "Accelerator0"); in adf_crypto_dev_config()
83 ret = adf_cfg_add_key_value_param(accel_dev, ADF_KERNEL_SEC, in adf_crypto_dev_config()
90 ret = adf_cfg_add_key_value_param(accel_dev, ADF_KERNEL_SEC, in adf_crypto_dev_config()
97 ret = adf_cfg_add_key_value_param(accel_dev, ADF_KERNEL_SEC, in adf_crypto_dev_config()
104 ret = adf_cfg_add_key_value_param(accel_dev, ADF_KERNEL_SEC, in adf_crypto_dev_config()
111 ret = adf_cfg_add_key_value_param(accel_dev, ADF_KERNEL_SEC, in adf_crypto_dev_config()
118 ret = adf_cfg_add_key_value_param(accel_dev, ADF_KERNEL_SEC, in adf_crypto_dev_config()
125 ret = adf_cfg_add_key_value_param(accel_dev, ADF_KERNEL_SEC, in adf_crypto_dev_config()
132 ret = adf_cfg_add_key_value_param(accel_dev, ADF_KERNEL_SEC, in adf_crypto_dev_config()
139 ret = adf_cfg_add_key_value_param(accel_dev, ADF_KERNEL_SEC, in adf_crypto_dev_config()
146 ret = adf_cfg_add_key_value_param(accel_dev, "Accelerator0", in adf_crypto_dev_config()
153 ret = adf_cfg_add_key_value_param(accel_dev, ADF_KERNEL_SEC, ADF_NUM_CY, in adf_crypto_dev_config()
158 set_bit(ADF_STATUS_CONFIGURED, &accel_dev->status); in adf_crypto_dev_config()
161 dev_err(&GET_DEV(accel_dev), "Failed to start QAT accel dev\n"); in adf_crypto_dev_config()
167 struct adf_accel_dev *accel_dev; in adf_probe() local
186 accel_dev = devm_kzalloc(&pdev->dev, sizeof(*accel_dev), GFP_KERNEL); in adf_probe()
187 if (!accel_dev) in adf_probe()
190 INIT_LIST_HEAD(&accel_dev->crypto_list); in adf_probe()
191 accel_pci_dev = &accel_dev->accel_pci_dev; in adf_probe()
198 if (adf_devmgr_add_dev(accel_dev, NULL)) { in adf_probe()
203 accel_dev->owner = THIS_MODULE; in adf_probe()
211 accel_dev->hw_device = hw_data; in adf_probe()
212 adf_init_hw_data_4xxx(accel_dev->hw_device); in adf_probe()
233 accel_dev->debugfs_dir = debugfs_create_dir(name, NULL); in adf_probe()
236 ret = adf_cfg_dev_add(accel_dev); in adf_probe()
254 ret = adf_cfg_dev_init(accel_dev); in adf_probe()
261 hw_data->accel_capabilities_mask = hw_data->get_accel_cap(accel_dev); in adf_probe()
284 adf_enable_aer(accel_dev); in adf_probe()
292 ret = adf_sysfs_init(accel_dev); in adf_probe()
296 ret = adf_crypto_dev_config(accel_dev); in adf_probe()
300 ret = adf_dev_init(accel_dev); in adf_probe()
304 ret = adf_dev_start(accel_dev); in adf_probe()
311 adf_dev_stop(accel_dev); in adf_probe()
313 adf_dev_shutdown(accel_dev); in adf_probe()
315 adf_disable_aer(accel_dev); in adf_probe()
317 adf_cleanup_accel(accel_dev); in adf_probe()
323 struct adf_accel_dev *accel_dev = adf_devmgr_pci_to_accel_dev(pdev); in adf_remove() local
325 if (!accel_dev) { in adf_remove()
329 adf_dev_stop(accel_dev); in adf_remove()
330 adf_dev_shutdown(accel_dev); in adf_remove()
331 adf_disable_aer(accel_dev); in adf_remove()
332 adf_cleanup_accel(accel_dev); in adf_remove()