/* * Linux MegaRAID driver for SAS based RAID controllers * * Copyright (c) 2003-2018 LSI Corporation. * Copyright (c) 2003-2018 Avago Technologies. * Copyright (c) 2003-2018 Broadcom Inc. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License * as published by the Free Software Foundation; either version 2 * of the License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see <http://www.gnu.org/licenses/>. * * Authors: Broadcom Inc. * Kashyap Desai <[email protected]> * Sumit Saxena <[email protected]> * Shivasharan S <[email protected]> * * Send feedback to: [email protected] */ #include <linux/kernel.h> #include <linux/types.h> #include <linux/pci.h> #include <linux/interrupt.h> #include <linux/compat.h> #include <linux/irq_poll.h> #include <scsi/scsi.h> #include <scsi/scsi_device.h> #include <scsi/scsi_host.h> #include "megaraid_sas_fusion.h" #include "megaraid_sas.h" #ifdef CONFIG_DEBUG_FS #include <linux/debugfs.h> struct dentry *megasas_debugfs_root; static ssize_t megasas_debugfs_read(struct file *filp, char __user *ubuf, size_t cnt, loff_t *ppos) { … } static int megasas_debugfs_raidmap_open(struct inode *inode, struct file *file) { … } static int megasas_debugfs_release(struct inode *inode, struct file *file) { … } static const struct file_operations megasas_debugfs_raidmap_fops = …; /* * megasas_init_debugfs : Create debugfs root for megaraid_sas driver */ void megasas_init_debugfs(void) { … } /* * megasas_exit_debugfs : Remove debugfs root for megaraid_sas driver */ void megasas_exit_debugfs(void) { … } /* * megasas_setup_debugfs : Setup debugfs per Fusion adapter * instance: Soft instance of adapter */ void megasas_setup_debugfs(struct megasas_instance *instance) { … } /* * megasas_destroy_debugfs : Destroy debugfs per Fusion adapter * instance: Soft instance of adapter */ void megasas_destroy_debugfs(struct megasas_instance *instance) { … } #else void megasas_init_debugfs(void) { } void megasas_exit_debugfs(void) { } void megasas_setup_debugfs(struct megasas_instance *instance) { } void megasas_destroy_debugfs(struct megasas_instance *instance) { } #endif /*CONFIG_DEBUG_FS*/