linux/drivers/net/ethernet/realtek/rtase/rtase.h

/* SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause */
/*
 *  rtase is the Linux device driver released for Realtek Automotive Switch
 *  controllers with PCI-Express interface.
 *
 *  Copyright(c) 2024 Realtek Semiconductor Corp.
 */

#ifndef RTASE_H
#define RTASE_H

#define RTASE_HW_VER_MASK

#define RTASE_RX_DMA_BURST_256
#define RTASE_TX_DMA_BURST_UNLIMITED

#define RTASE_RX_BUF_SIZE
#define RTASE_MAX_JUMBO_SIZE

/* 3 means InterFrameGap = the shortest one */
#define RTASE_INTERFRAMEGAP

#define RTASE_REGS_SIZE
#define RTASE_PCI_REGS_SIZE

#define RTASE_MULTICAST_FILTER_MASK

#define RTASE_VLAN_FILTER_ENTRY_NUM
#define RTASE_NUM_TX_QUEUE
#define RTASE_NUM_RX_QUEUE

#define RTASE_TXQ_CTRL
#define RTASE_FUNC_TXQ_NUM
#define RTASE_FUNC_RXQ_NUM
#define RTASE_INTERRUPT_NUM

#define RTASE_MITI_TIME_COUNT_MASK
#define RTASE_MITI_TIME_UNIT_MASK
#define RTASE_MITI_DEFAULT_TIME
#define RTASE_MITI_MAX_TIME
#define RTASE_MITI_PKT_NUM_COUNT_MASK
#define RTASE_MITI_PKT_NUM_UNIT_MASK
#define RTASE_MITI_DEFAULT_PKT_NUM
#define RTASE_MITI_MAX_PKT_NUM_IDX
#define RTASE_MITI_MAX_PKT_NUM_UNIT
#define RTASE_MITI_MAX_PKT_NUM
#define RTASE_MITI_COUNT_BIT_NUM

#define RTASE_NUM_MSIX

#define RTASE_DWORD_MOD

/*****************************************************************************/
enum rtase_registers {};

enum rtase_desc_status_bit {};

enum rtase_sw_flag_content {};

#define RSVD_MASK

struct rtase_tx_desc {} __packed;

/*------ offset 0 of tx descriptor ------*/
#define RTASE_TX_FIRST_FRAG
#define RTASE_TX_LAST_FRAG
#define RTASE_GIANT_SEND_V4
#define RTASE_GIANT_SEND_V6
#define RTASE_TX_VLAN_TAG

/*------ offset 4 of tx descriptor ------*/
#define RTASE_TX_UDPCS_C
#define RTASE_TX_TCPCS_C
#define RTASE_TX_IPCS_C
#define RTASE_TX_IPV6F_C

rtase_rx_desc __packed;

/*------ offset 28 of rx descriptor ------*/
#define RTASE_RX_FIRST_FRAG
#define RTASE_RX_LAST_FRAG
#define RTASE_RX_RES
#define RTASE_RX_RUNT
#define RTASE_RX_RWT
#define RTASE_RX_CRC
#define RTASE_RX_V6F
#define RTASE_RX_V4F
#define RTASE_RX_UDPT
#define RTASE_RX_TCPT
#define RTASE_RX_IPF
#define RTASE_RX_UDPF
#define RTASE_RX_TCPF
#define RTASE_RX_VLAN_TAG

#define RTASE_NUM_DESC
#define RTASE_TX_BUDGET_DEFAULT
#define RTASE_TX_RING_DESC_SIZE
#define RTASE_RX_RING_DESC_SIZE
#define RTASE_TX_STOP_THRS
#define RTASE_TX_START_THRS
#define RTASE_VLAN_TAG_MASK
#define RTASE_RX_PKT_SIZE_MASK

#define RTASE_IVEC_NAME_SIZE

struct rtase_int_vector {};

struct rtase_ring {};

struct rtase_stats {};

struct rtase_private {};

#define RTASE_LSO_64K

#define RTASE_NIC_MAX_PHYS_BUF_COUNT_LSO2

#define RTASE_TCPHO_MASK

#define RTASE_MSS_MASK

#endif /* RTASE_H */