Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

staging: dpaa2-switch: export the 'no buffer' counter in ethtool

Export the DPSW_CNT_ING_NO_BUFFER_DISCARD counter in ethtool for each
switch interface. This is useful for debugging purposes.

Signed-off-by: Ionut-robert Aron <ionut-robert.aron@nxp.com>
Signed-off-by: Ioana Ciornei <ioana.ciornei@nxp.com>
Link: https://lore.kernel.org/r/20201119165017.806696-2-ciorneiioana@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

authored by

Ionut-robert Aron and committed by
Greg Kroah-Hartman
54289aad 8a3f7b96

+10 -6
+5 -3
drivers/staging/fsl-dpaa2/ethsw/dpsw-cmd.h
··· 1 1 /* SPDX-License-Identifier: GPL-2.0 */ 2 2 /* 3 3 * Copyright 2014-2016 Freescale Semiconductor Inc. 4 - * Copyright 2017-2018 NXP 4 + * Copyright 2017-2020 NXP 5 5 * 6 6 */ 7 7 ··· 10 10 11 11 /* DPSW Version */ 12 12 #define DPSW_VER_MAJOR 8 13 - #define DPSW_VER_MINOR 1 13 + #define DPSW_VER_MINOR 5 14 14 15 15 #define DPSW_CMD_BASE_VERSION 1 16 + #define DPSW_CMD_VERSION_2 2 16 17 #define DPSW_CMD_ID_OFFSET 4 17 18 18 19 #define DPSW_CMD_ID(id) (((id) << DPSW_CMD_ID_OFFSET) | DPSW_CMD_BASE_VERSION) 20 + #define DPSW_CMD_V2(id) (((id) << DPSW_CMD_ID_OFFSET) | DPSW_CMD_VERSION_2) 19 21 20 22 /* Command IDs */ 21 23 #define DPSW_CMDID_CLOSE DPSW_CMD_ID(0x800) ··· 40 38 #define DPSW_CMDID_IF_SET_TCI DPSW_CMD_ID(0x030) 41 39 #define DPSW_CMDID_IF_SET_STP DPSW_CMD_ID(0x031) 42 40 43 - #define DPSW_CMDID_IF_GET_COUNTER DPSW_CMD_ID(0x034) 41 + #define DPSW_CMDID_IF_GET_COUNTER DPSW_CMD_V2(0x034) 44 42 45 43 #define DPSW_CMDID_IF_ENABLE DPSW_CMD_ID(0x03D) 46 44 #define DPSW_CMDID_IF_DISABLE DPSW_CMD_ID(0x03E)
+4 -2
drivers/staging/fsl-dpaa2/ethsw/dpsw.h
··· 334 334 * @DPSW_CNT_ING_BCAST_FRAME: Counts ingress broadcast frames 335 335 * @DPSW_CNT_ING_BCAST_BYTES: Counts ingress broadcast bytes 336 336 * @DPSW_CNT_EGR_FRAME: Counts egress frames 337 - * @DPSW_CNT_EGR_BYTE: Counts eEgress bytes 337 + * @DPSW_CNT_EGR_BYTE: Counts egress bytes 338 338 * @DPSW_CNT_EGR_FRAME_DISCARD: Counts discarded egress frames 339 339 * @DPSW_CNT_EGR_STP_FRAME_DISCARD: Counts egress STP discarded frames 340 + * @DPSW_CNT_ING_NO_BUFF_DISCARD: Counts ingress no buffer discarded frames 340 341 */ 341 342 enum dpsw_counter { 342 343 DPSW_CNT_ING_FRAME = 0x0, ··· 351 350 DPSW_CNT_EGR_FRAME = 0x8, 352 351 DPSW_CNT_EGR_BYTE = 0x9, 353 352 DPSW_CNT_EGR_FRAME_DISCARD = 0xa, 354 - DPSW_CNT_EGR_STP_FRAME_DISCARD = 0xb 353 + DPSW_CNT_EGR_STP_FRAME_DISCARD = 0xb, 354 + DPSW_CNT_ING_NO_BUFF_DISCARD = 0xc, 355 355 }; 356 356 357 357 int dpsw_if_get_counter(struct fsl_mc_io *mc_io,
+1 -1
drivers/staging/fsl-dpaa2/ethsw/ethsw-ethtool.c
··· 24 24 {DPSW_CNT_EGR_FRAME, "tx frames"}, 25 25 {DPSW_CNT_EGR_BYTE, "tx bytes"}, 26 26 {DPSW_CNT_EGR_FRAME_DISCARD, "tx discarded frames"}, 27 - 27 + {DPSW_CNT_ING_NO_BUFF_DISCARD, "rx discarded no buffer frames"}, 28 28 }; 29 29 30 30 #define DPAA2_SWITCH_NUM_COUNTERS ARRAY_SIZE(dpaa2_switch_ethtool_counters)