59 lines · c
1/* SPDX-License-Identifier: GPL-2.0-only */2/*****************************************************************************3 * *4 * File: espi.h *5 * $Revision: 1.7 $ *6 * $Date: 2005/06/21 18:29:47 $ *7 * Description: *8 * part of the Chelsio 10Gb Ethernet Driver. *9 * *10 * *11 * http://www.chelsio.com *12 * *13 * Copyright (c) 2003 - 2005 Chelsio Communications, Inc. *14 * All rights reserved. *15 * *16 * Maintainers: maintainers@chelsio.com *17 * *18 * Authors: Dimitrios Michailidis <dm@chelsio.com> *19 * Tina Yang <tainay@chelsio.com> *20 * Felix Marti <felix@chelsio.com> *21 * Scott Bardone <sbardone@chelsio.com> *22 * Kurt Ottaway <kottaway@chelsio.com> *23 * Frank DiMambro <frank@chelsio.com> *24 * *25 * History: *26 * *27 ****************************************************************************/28 29#ifndef _CXGB_ESPI_H_30#define _CXGB_ESPI_H_31 32#include "common.h"33 34struct espi_intr_counts {35 unsigned int DIP4_err;36 unsigned int rx_drops;37 unsigned int tx_drops;38 unsigned int rx_ovflw;39 unsigned int parity_err;40 unsigned int DIP2_parity_err;41};42 43struct peespi;44 45struct peespi *t1_espi_create(adapter_t *adapter);46void t1_espi_destroy(struct peespi *espi);47int t1_espi_init(struct peespi *espi, int mac_type, int nports);48 49void t1_espi_intr_enable(struct peespi *);50void t1_espi_intr_clear(struct peespi *);51void t1_espi_intr_disable(struct peespi *);52int t1_espi_intr_handler(struct peespi *);53const struct espi_intr_counts *t1_espi_get_intr_counts(struct peespi *espi);54 55u32 t1_espi_get_mon(adapter_t *adapter, u32 addr, u8 wait);56int t1_espi_get_mon_t204(adapter_t *, u32 *, u8);57 58#endif /* _CXGB_ESPI_H_ */59