1a51f06e1SSelvin Xavier /******************************************************************* 2a51f06e1SSelvin Xavier * This file is part of the Emulex RoCE Device Driver for * 3a51f06e1SSelvin Xavier * RoCE (RDMA over Converged Ethernet) adapters. * 4a51f06e1SSelvin Xavier * Copyright (C) 2008-2014 Emulex. All rights reserved. * 5a51f06e1SSelvin Xavier * EMULEX and SLI are trademarks of Emulex. * 6a51f06e1SSelvin Xavier * www.emulex.com * 7a51f06e1SSelvin Xavier * * 8a51f06e1SSelvin Xavier * This program is free software; you can redistribute it and/or * 9a51f06e1SSelvin Xavier * modify it under the terms of version 2 of the GNU General * 10a51f06e1SSelvin Xavier * Public License as published by the Free Software Foundation. * 11a51f06e1SSelvin Xavier * This program is distributed in the hope that it will be useful. * 12a51f06e1SSelvin Xavier * ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND * 13a51f06e1SSelvin Xavier * WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY, * 14a51f06e1SSelvin Xavier * FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT, ARE * 15a51f06e1SSelvin Xavier * DISCLAIMED, EXCEPT TO THE EXTENT THAT SUCH DISCLAIMERS ARE HELD * 16a51f06e1SSelvin Xavier * TO BE LEGALLY INVALID. See the GNU General Public License for * 17a51f06e1SSelvin Xavier * more details, a copy of which can be found in the file COPYING * 18a51f06e1SSelvin Xavier * included with this package. * 19a51f06e1SSelvin Xavier * 20a51f06e1SSelvin Xavier * Contact Information: 21a51f06e1SSelvin Xavier * linux-drivers@emulex.com 22a51f06e1SSelvin Xavier * 23a51f06e1SSelvin Xavier * Emulex 24a51f06e1SSelvin Xavier * 3333 Susan Street 25a51f06e1SSelvin Xavier * Costa Mesa, CA 92626 26a51f06e1SSelvin Xavier *******************************************************************/ 27a51f06e1SSelvin Xavier 28a51f06e1SSelvin Xavier #ifndef __OCRDMA_STATS_H__ 29a51f06e1SSelvin Xavier #define __OCRDMA_STATS_H__ 30a51f06e1SSelvin Xavier 31a51f06e1SSelvin Xavier #include <linux/debugfs.h> 32a51f06e1SSelvin Xavier #include "ocrdma.h" 33a51f06e1SSelvin Xavier #include "ocrdma_hw.h" 34a51f06e1SSelvin Xavier 35a51f06e1SSelvin Xavier #define OCRDMA_MAX_DBGFS_MEM 4096 36a51f06e1SSelvin Xavier 37a51f06e1SSelvin Xavier enum OCRDMA_STATS_TYPE { 38a51f06e1SSelvin Xavier OCRDMA_RSRC_STATS, 39a51f06e1SSelvin Xavier OCRDMA_RXSTATS, 40a51f06e1SSelvin Xavier OCRDMA_WQESTATS, 41a51f06e1SSelvin Xavier OCRDMA_TXSTATS, 42a51f06e1SSelvin Xavier OCRDMA_DB_ERRSTATS, 43a51f06e1SSelvin Xavier OCRDMA_RXQP_ERRSTATS, 44a51f06e1SSelvin Xavier OCRDMA_TXQP_ERRSTATS, 45a51f06e1SSelvin Xavier OCRDMA_TX_DBG_STATS, 46*ad56ebb4SSelvin Xavier OCRDMA_RX_DBG_STATS, 47*ad56ebb4SSelvin Xavier OCRDMA_DRV_STATS, 48*ad56ebb4SSelvin Xavier OCRDMA_RESET_STATS 49a51f06e1SSelvin Xavier }; 50a51f06e1SSelvin Xavier 51a51f06e1SSelvin Xavier void ocrdma_rem_debugfs(void); 52a51f06e1SSelvin Xavier void ocrdma_init_debugfs(void); 53a51f06e1SSelvin Xavier void ocrdma_rem_port_stats(struct ocrdma_dev *dev); 54a51f06e1SSelvin Xavier void ocrdma_add_port_stats(struct ocrdma_dev *dev); 55cad1fbb0SMitesh Ahuja int ocrdma_pma_counters(struct ocrdma_dev *dev, 56cad1fbb0SMitesh Ahuja struct ib_mad *out_mad); 57a51f06e1SSelvin Xavier 58a51f06e1SSelvin Xavier #endif /* __OCRDMA_STATS_H__ */ 59