1*9948a064SJiri Pirko /* SPDX-License-Identifier: BSD-3-Clause OR GPL-2.0 */ 2*9948a064SJiri Pirko /* Copyright (c) 2015-2018 Mellanox Technologies. All rights reserved */ 331557f0fSJiri Pirko 431557f0fSJiri Pirko #ifndef _MLXSW_TXHEADER_H 531557f0fSJiri Pirko #define _MLXSW_TXHEADER_H 631557f0fSJiri Pirko 731557f0fSJiri Pirko #define MLXSW_TXHDR_LEN 0x10 831557f0fSJiri Pirko #define MLXSW_TXHDR_VERSION_0 0 956ade8feSJiri Pirko #define MLXSW_TXHDR_VERSION_1 1 1031557f0fSJiri Pirko 1131557f0fSJiri Pirko enum { 1231557f0fSJiri Pirko MLXSW_TXHDR_ETH_CTL, 1331557f0fSJiri Pirko MLXSW_TXHDR_ETH_DATA, 1431557f0fSJiri Pirko }; 1531557f0fSJiri Pirko 1631557f0fSJiri Pirko #define MLXSW_TXHDR_PROTO_ETH 1 1731557f0fSJiri Pirko 1831557f0fSJiri Pirko enum { 1931557f0fSJiri Pirko MLXSW_TXHDR_ETCLASS_0, 2031557f0fSJiri Pirko MLXSW_TXHDR_ETCLASS_1, 2131557f0fSJiri Pirko MLXSW_TXHDR_ETCLASS_2, 2231557f0fSJiri Pirko MLXSW_TXHDR_ETCLASS_3, 2331557f0fSJiri Pirko MLXSW_TXHDR_ETCLASS_4, 2431557f0fSJiri Pirko MLXSW_TXHDR_ETCLASS_5, 2531557f0fSJiri Pirko MLXSW_TXHDR_ETCLASS_6, 2631557f0fSJiri Pirko MLXSW_TXHDR_ETCLASS_7, 2731557f0fSJiri Pirko }; 2831557f0fSJiri Pirko 2931557f0fSJiri Pirko enum { 3031557f0fSJiri Pirko MLXSW_TXHDR_RDQ_OTHER, 3131557f0fSJiri Pirko MLXSW_TXHDR_RDQ_EMAD = 0x1f, 3231557f0fSJiri Pirko }; 3331557f0fSJiri Pirko 3431557f0fSJiri Pirko #define MLXSW_TXHDR_CTCLASS3 0 3531557f0fSJiri Pirko #define MLXSW_TXHDR_CPU_SIG 0 3631557f0fSJiri Pirko #define MLXSW_TXHDR_SIG 0xE0E0 3731557f0fSJiri Pirko #define MLXSW_TXHDR_STCLASS_NONE 0 3831557f0fSJiri Pirko 3931557f0fSJiri Pirko enum { 4031557f0fSJiri Pirko MLXSW_TXHDR_NOT_EMAD, 4131557f0fSJiri Pirko MLXSW_TXHDR_EMAD, 4231557f0fSJiri Pirko }; 4331557f0fSJiri Pirko 4431557f0fSJiri Pirko enum { 4531557f0fSJiri Pirko MLXSW_TXHDR_TYPE_DATA, 4631557f0fSJiri Pirko MLXSW_TXHDR_TYPE_CONTROL = 6, 4731557f0fSJiri Pirko }; 4831557f0fSJiri Pirko 4931557f0fSJiri Pirko #endif 50