int adf_ae_init(struct adf_accel_dev *accel_dev) { struct adf_fw_loader_data *loader_data; struct adf_hw_device_data *hw_device = accel_dev->hw_device; if (!hw_device->fw_name) return 0; loader_data = kzalloc(sizeof(*loader_data), GFP_KERNEL); if (!loader_data) return -ENOMEM; accel_dev->fw_loader = loader_data; if (qat_hal_init(accel_dev)) { dev_err(&GET_DEV(accel_dev), "Failed to init the AEs\n"); kfree(loader_data); return -EFAULT; } if (adf_ae_reset(accel_dev, 0)) { dev_err(&GET_DEV(accel_dev), "Failed to reset the AEs\n"); qat_hal_deinit(loader_data->fw_loader); kfree(loader_data); return -EFAULT; } return 0; }
int adf_ae_init(struct adf_accel_dev *accel_dev) { struct adf_fw_loader_data *loader_data; loader_data = kzalloc(sizeof(*loader_data), GFP_KERNEL); if (!loader_data) return -ENOMEM; accel_dev->fw_loader = loader_data; if (qat_hal_init(accel_dev)) { pr_err("QAT: Failed to init the AEs\n"); kfree(loader_data); return -EFAULT; } if (adf_ae_reset(accel_dev, 0)) { pr_err("QAT: Failed to reset the AEs\n"); qat_hal_deinit(loader_data->fw_loader); kfree(loader_data); return -EFAULT; } return 0; }