Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0-only */
0002 /*****************************************************************************
0003  *                                                                           *
0004  * File: espi.h                                                              *
0005  * $Revision: 1.7 $                                                          *
0006  * $Date: 2005/06/21 18:29:47 $                                              *
0007  * Description:                                                              *
0008  *  part of the Chelsio 10Gb Ethernet Driver.                                *
0009  *                                                                           *
0010  *                                                                           *
0011  * http://www.chelsio.com                                                    *
0012  *                                                                           *
0013  * Copyright (c) 2003 - 2005 Chelsio Communications, Inc.                    *
0014  * All rights reserved.                                                      *
0015  *                                                                           *
0016  * Maintainers: maintainers@chelsio.com                                      *
0017  *                                                                           *
0018  * Authors: Dimitrios Michailidis   <dm@chelsio.com>                         *
0019  *          Tina Yang               <tainay@chelsio.com>                     *
0020  *          Felix Marti             <felix@chelsio.com>                      *
0021  *          Scott Bardone           <sbardone@chelsio.com>                   *
0022  *          Kurt Ottaway            <kottaway@chelsio.com>                   *
0023  *          Frank DiMambro          <frank@chelsio.com>                      *
0024  *                                                                           *
0025  * History:                                                                  *
0026  *                                                                           *
0027  ****************************************************************************/
0028 
0029 #ifndef _CXGB_ESPI_H_
0030 #define _CXGB_ESPI_H_
0031 
0032 #include "common.h"
0033 
0034 struct espi_intr_counts {
0035     unsigned int DIP4_err;
0036     unsigned int rx_drops;
0037     unsigned int tx_drops;
0038     unsigned int rx_ovflw;
0039     unsigned int parity_err;
0040     unsigned int DIP2_parity_err;
0041 };
0042 
0043 struct peespi;
0044 
0045 struct peespi *t1_espi_create(adapter_t *adapter);
0046 void t1_espi_destroy(struct peespi *espi);
0047 int t1_espi_init(struct peespi *espi, int mac_type, int nports);
0048 
0049 void t1_espi_intr_enable(struct peespi *);
0050 void t1_espi_intr_clear(struct peespi *);
0051 void t1_espi_intr_disable(struct peespi *);
0052 int t1_espi_intr_handler(struct peespi *);
0053 const struct espi_intr_counts *t1_espi_get_intr_counts(struct peespi *espi);
0054 
0055 u32 t1_espi_get_mon(adapter_t *adapter, u32 addr, u8 wait);
0056 int t1_espi_get_mon_t204(adapter_t *, u32 *, u8);
0057 
0058 #endif /* _CXGB_ESPI_H_ */