| .. | .. |
|---|
| 1 | | -/* |
|---|
| 2 | | - This file is provided under a dual BSD/GPLv2 license. When using or |
|---|
| 3 | | - redistributing this file, you may do so under either license. |
|---|
| 4 | | - |
|---|
| 5 | | - GPL LICENSE SUMMARY |
|---|
| 6 | | - Copyright(c) 2014 Intel Corporation. |
|---|
| 7 | | - This program is free software; you can redistribute it and/or modify |
|---|
| 8 | | - it under the terms of version 2 of the GNU General Public License as |
|---|
| 9 | | - published by the Free Software Foundation. |
|---|
| 10 | | - |
|---|
| 11 | | - This program is distributed in the hope that it will be useful, but |
|---|
| 12 | | - WITHOUT ANY WARRANTY; without even the implied warranty of |
|---|
| 13 | | - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
|---|
| 14 | | - General Public License for more details. |
|---|
| 15 | | - |
|---|
| 16 | | - Contact Information: |
|---|
| 17 | | - qat-linux@intel.com |
|---|
| 18 | | - |
|---|
| 19 | | - BSD LICENSE |
|---|
| 20 | | - Copyright(c) 2014 Intel Corporation. |
|---|
| 21 | | - Redistribution and use in source and binary forms, with or without |
|---|
| 22 | | - modification, are permitted provided that the following conditions |
|---|
| 23 | | - are met: |
|---|
| 24 | | - |
|---|
| 25 | | - * Redistributions of source code must retain the above copyright |
|---|
| 26 | | - notice, this list of conditions and the following disclaimer. |
|---|
| 27 | | - * Redistributions in binary form must reproduce the above copyright |
|---|
| 28 | | - notice, this list of conditions and the following disclaimer in |
|---|
| 29 | | - the documentation and/or other materials provided with the |
|---|
| 30 | | - distribution. |
|---|
| 31 | | - * Neither the name of Intel Corporation nor the names of its |
|---|
| 32 | | - contributors may be used to endorse or promote products derived |
|---|
| 33 | | - from this software without specific prior written permission. |
|---|
| 34 | | - |
|---|
| 35 | | - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
|---|
| 36 | | - "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
|---|
| 37 | | - LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
|---|
| 38 | | - A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
|---|
| 39 | | - OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
|---|
| 40 | | - SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
|---|
| 41 | | - LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
|---|
| 42 | | - DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
|---|
| 43 | | - THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
|---|
| 44 | | - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
|---|
| 45 | | - OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
|---|
| 46 | | -*/ |
|---|
| 1 | +// SPDX-License-Identifier: (BSD-3-Clause OR GPL-2.0-only) |
|---|
| 2 | +/* Copyright(c) 2014 - 2020 Intel Corporation */ |
|---|
| 47 | 3 | #include <linux/mutex.h> |
|---|
| 48 | 4 | #include <linux/slab.h> |
|---|
| 49 | 5 | #include <linux/list.h> |
|---|
| .. | .. |
|---|
| 96 | 52 | .show = qat_dev_cfg_show |
|---|
| 97 | 53 | }; |
|---|
| 98 | 54 | |
|---|
| 99 | | -static int qat_dev_cfg_open(struct inode *inode, struct file *file) |
|---|
| 100 | | -{ |
|---|
| 101 | | - int ret = seq_open(file, &qat_dev_cfg_sops); |
|---|
| 102 | | - |
|---|
| 103 | | - if (!ret) { |
|---|
| 104 | | - struct seq_file *seq_f = file->private_data; |
|---|
| 105 | | - |
|---|
| 106 | | - seq_f->private = inode->i_private; |
|---|
| 107 | | - } |
|---|
| 108 | | - return ret; |
|---|
| 109 | | -} |
|---|
| 110 | | - |
|---|
| 111 | | -static const struct file_operations qat_dev_cfg_fops = { |
|---|
| 112 | | - .open = qat_dev_cfg_open, |
|---|
| 113 | | - .read = seq_read, |
|---|
| 114 | | - .llseek = seq_lseek, |
|---|
| 115 | | - .release = seq_release |
|---|
| 116 | | -}; |
|---|
| 55 | +DEFINE_SEQ_ATTRIBUTE(qat_dev_cfg); |
|---|
| 117 | 56 | |
|---|
| 118 | 57 | /** |
|---|
| 119 | 58 | * adf_cfg_dev_add() - Create an acceleration device configuration table. |
|---|
| .. | .. |
|---|
| 141 | 80 | accel_dev->debugfs_dir, |
|---|
| 142 | 81 | dev_cfg_data, |
|---|
| 143 | 82 | &qat_dev_cfg_fops); |
|---|
| 144 | | - if (!dev_cfg_data->debug) { |
|---|
| 145 | | - dev_err(&GET_DEV(accel_dev), |
|---|
| 146 | | - "Failed to create qat cfg debugfs entry.\n"); |
|---|
| 147 | | - kfree(dev_cfg_data); |
|---|
| 148 | | - accel_dev->cfg = NULL; |
|---|
| 149 | | - return -EFAULT; |
|---|
| 150 | | - } |
|---|
| 151 | 83 | return 0; |
|---|
| 152 | 84 | } |
|---|
| 153 | 85 | EXPORT_SYMBOL_GPL(adf_cfg_dev_add); |
|---|