Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit da866ba0 authored by Karicheri, Muralidharan's avatar Karicheri, Muralidharan Committed by David S. Miller
Browse files

net: netcp: enclose macros in parentheses



Fix following checkpatch error. It seems to have passed checkpatch
last time when original code was introduced.

 ERROR: Macros with complex values should be enclosed in parentheses
 #172: FILE: drivers/net/ethernet/ti/netcp_ethss.c:869:

Signed-off-by: default avatarMurali Karicheri <m-karicheri2@ti.com>
Signed-off-by: default avatarWingMan Kwok <w-kwok2@ti.com>
CC: "David S. Miller" <davem@davemloft.net>
CC: Mugunthan V N <mugunthanvnm@ti.com>
CC: "Lad, Prabhakar" <prabhakar.csengg@gmail.com>
CC: Grygorii Strashko <grygorii.strashko@ti.com>
CC: Christoph Jaeger <cj@linux.com>
CC: Lokesh Vutla <lokeshvutla@ti.com>
CC: Markus Pargmann <mpa@pengutronix.de>
CC: Kumar Gala <galak@codeaurora.org>
CC: Ian Campbell <ijc+devicetree@hellion.org.uk>
CC: Mark Rutland <mark.rutland@arm.com>
CC: Pawel Moll <pawel.moll@arm.com>
CC: Rob Herring <robh+dt@kernel.org>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent f49ae149
Loading
Loading
Loading
Loading
+272 −251
Original line number Diff line number Diff line
@@ -482,275 +482,296 @@ struct netcp_ethtool_stat {
	int offset;
};

#define GBE_STATSA_INFO(field)		"GBE_A:"#field, GBE_STATSA_MODULE,\
#define GBE_STATSA_INFO(field)						\
{									\
	"GBE_A:"#field, GBE_STATSA_MODULE,				\
	FIELD_SIZEOF(struct gbe_hw_stats, field),			\
				offsetof(struct gbe_hw_stats, field)
	offsetof(struct gbe_hw_stats, field)				\
}

#define GBE_STATSB_INFO(field)		"GBE_B:"#field, GBE_STATSB_MODULE,\
#define GBE_STATSB_INFO(field)						\
{									\
	"GBE_B:"#field, GBE_STATSB_MODULE,				\
	FIELD_SIZEOF(struct gbe_hw_stats, field),			\
				offsetof(struct gbe_hw_stats, field)
	offsetof(struct gbe_hw_stats, field)				\
}

#define GBE_STATSC_INFO(field)		"GBE_C:"#field, GBE_STATSC_MODULE,\
#define GBE_STATSC_INFO(field)						\
{									\
	"GBE_C:"#field, GBE_STATSC_MODULE,				\
	FIELD_SIZEOF(struct gbe_hw_stats, field),			\
				offsetof(struct gbe_hw_stats, field)
	offsetof(struct gbe_hw_stats, field)				\
}

#define GBE_STATSD_INFO(field)		"GBE_D:"#field, GBE_STATSD_MODULE,\
#define GBE_STATSD_INFO(field)						\
{									\
	"GBE_D:"#field, GBE_STATSD_MODULE,				\
	FIELD_SIZEOF(struct gbe_hw_stats, field),			\
				offsetof(struct gbe_hw_stats, field)
	offsetof(struct gbe_hw_stats, field)				\
}

static const struct netcp_ethtool_stat gbe13_et_stats[] = {
	/* GBE module A */
	{GBE_STATSA_INFO(rx_good_frames)},
	{GBE_STATSA_INFO(rx_broadcast_frames)},
	{GBE_STATSA_INFO(rx_multicast_frames)},
	{GBE_STATSA_INFO(rx_pause_frames)},
	{GBE_STATSA_INFO(rx_crc_errors)},
	{GBE_STATSA_INFO(rx_align_code_errors)},
	{GBE_STATSA_INFO(rx_oversized_frames)},
	{GBE_STATSA_INFO(rx_jabber_frames)},
	{GBE_STATSA_INFO(rx_undersized_frames)},
	{GBE_STATSA_INFO(rx_fragments)},
	{GBE_STATSA_INFO(rx_bytes)},
	{GBE_STATSA_INFO(tx_good_frames)},
	{GBE_STATSA_INFO(tx_broadcast_frames)},
	{GBE_STATSA_INFO(tx_multicast_frames)},
	{GBE_STATSA_INFO(tx_pause_frames)},
	{GBE_STATSA_INFO(tx_deferred_frames)},
	{GBE_STATSA_INFO(tx_collision_frames)},
	{GBE_STATSA_INFO(tx_single_coll_frames)},
	{GBE_STATSA_INFO(tx_mult_coll_frames)},
	{GBE_STATSA_INFO(tx_excessive_collisions)},
	{GBE_STATSA_INFO(tx_late_collisions)},
	{GBE_STATSA_INFO(tx_underrun)},
	{GBE_STATSA_INFO(tx_carrier_sense_errors)},
	{GBE_STATSA_INFO(tx_bytes)},
	{GBE_STATSA_INFO(tx_64byte_frames)},
	{GBE_STATSA_INFO(tx_65_to_127byte_frames)},
	{GBE_STATSA_INFO(tx_128_to_255byte_frames)},
	{GBE_STATSA_INFO(tx_256_to_511byte_frames)},
	{GBE_STATSA_INFO(tx_512_to_1023byte_frames)},
	{GBE_STATSA_INFO(tx_1024byte_frames)},
	{GBE_STATSA_INFO(net_bytes)},
	{GBE_STATSA_INFO(rx_sof_overruns)},
	{GBE_STATSA_INFO(rx_mof_overruns)},
	{GBE_STATSA_INFO(rx_dma_overruns)},
	GBE_STATSA_INFO(rx_good_frames),
	GBE_STATSA_INFO(rx_broadcast_frames),
	GBE_STATSA_INFO(rx_multicast_frames),
	GBE_STATSA_INFO(rx_pause_frames),
	GBE_STATSA_INFO(rx_crc_errors),
	GBE_STATSA_INFO(rx_align_code_errors),
	GBE_STATSA_INFO(rx_oversized_frames),
	GBE_STATSA_INFO(rx_jabber_frames),
	GBE_STATSA_INFO(rx_undersized_frames),
	GBE_STATSA_INFO(rx_fragments),
	GBE_STATSA_INFO(rx_bytes),
	GBE_STATSA_INFO(tx_good_frames),
	GBE_STATSA_INFO(tx_broadcast_frames),
	GBE_STATSA_INFO(tx_multicast_frames),
	GBE_STATSA_INFO(tx_pause_frames),
	GBE_STATSA_INFO(tx_deferred_frames),
	GBE_STATSA_INFO(tx_collision_frames),
	GBE_STATSA_INFO(tx_single_coll_frames),
	GBE_STATSA_INFO(tx_mult_coll_frames),
	GBE_STATSA_INFO(tx_excessive_collisions),
	GBE_STATSA_INFO(tx_late_collisions),
	GBE_STATSA_INFO(tx_underrun),
	GBE_STATSA_INFO(tx_carrier_sense_errors),
	GBE_STATSA_INFO(tx_bytes),
	GBE_STATSA_INFO(tx_64byte_frames),
	GBE_STATSA_INFO(tx_65_to_127byte_frames),
	GBE_STATSA_INFO(tx_128_to_255byte_frames),
	GBE_STATSA_INFO(tx_256_to_511byte_frames),
	GBE_STATSA_INFO(tx_512_to_1023byte_frames),
	GBE_STATSA_INFO(tx_1024byte_frames),
	GBE_STATSA_INFO(net_bytes),
	GBE_STATSA_INFO(rx_sof_overruns),
	GBE_STATSA_INFO(rx_mof_overruns),
	GBE_STATSA_INFO(rx_dma_overruns),
	/* GBE module B */
	{GBE_STATSB_INFO(rx_good_frames)},
	{GBE_STATSB_INFO(rx_broadcast_frames)},
	{GBE_STATSB_INFO(rx_multicast_frames)},
	{GBE_STATSB_INFO(rx_pause_frames)},
	{GBE_STATSB_INFO(rx_crc_errors)},
	{GBE_STATSB_INFO(rx_align_code_errors)},
	{GBE_STATSB_INFO(rx_oversized_frames)},
	{GBE_STATSB_INFO(rx_jabber_frames)},
	{GBE_STATSB_INFO(rx_undersized_frames)},
	{GBE_STATSB_INFO(rx_fragments)},
	{GBE_STATSB_INFO(rx_bytes)},
	{GBE_STATSB_INFO(tx_good_frames)},
	{GBE_STATSB_INFO(tx_broadcast_frames)},
	{GBE_STATSB_INFO(tx_multicast_frames)},
	{GBE_STATSB_INFO(tx_pause_frames)},
	{GBE_STATSB_INFO(tx_deferred_frames)},
	{GBE_STATSB_INFO(tx_collision_frames)},
	{GBE_STATSB_INFO(tx_single_coll_frames)},
	{GBE_STATSB_INFO(tx_mult_coll_frames)},
	{GBE_STATSB_INFO(tx_excessive_collisions)},
	{GBE_STATSB_INFO(tx_late_collisions)},
	{GBE_STATSB_INFO(tx_underrun)},
	{GBE_STATSB_INFO(tx_carrier_sense_errors)},
	{GBE_STATSB_INFO(tx_bytes)},
	{GBE_STATSB_INFO(tx_64byte_frames)},
	{GBE_STATSB_INFO(tx_65_to_127byte_frames)},
	{GBE_STATSB_INFO(tx_128_to_255byte_frames)},
	{GBE_STATSB_INFO(tx_256_to_511byte_frames)},
	{GBE_STATSB_INFO(tx_512_to_1023byte_frames)},
	{GBE_STATSB_INFO(tx_1024byte_frames)},
	{GBE_STATSB_INFO(net_bytes)},
	{GBE_STATSB_INFO(rx_sof_overruns)},
	{GBE_STATSB_INFO(rx_mof_overruns)},
	{GBE_STATSB_INFO(rx_dma_overruns)},
	GBE_STATSB_INFO(rx_good_frames),
	GBE_STATSB_INFO(rx_broadcast_frames),
	GBE_STATSB_INFO(rx_multicast_frames),
	GBE_STATSB_INFO(rx_pause_frames),
	GBE_STATSB_INFO(rx_crc_errors),
	GBE_STATSB_INFO(rx_align_code_errors),
	GBE_STATSB_INFO(rx_oversized_frames),
	GBE_STATSB_INFO(rx_jabber_frames),
	GBE_STATSB_INFO(rx_undersized_frames),
	GBE_STATSB_INFO(rx_fragments),
	GBE_STATSB_INFO(rx_bytes),
	GBE_STATSB_INFO(tx_good_frames),
	GBE_STATSB_INFO(tx_broadcast_frames),
	GBE_STATSB_INFO(tx_multicast_frames),
	GBE_STATSB_INFO(tx_pause_frames),
	GBE_STATSB_INFO(tx_deferred_frames),
	GBE_STATSB_INFO(tx_collision_frames),
	GBE_STATSB_INFO(tx_single_coll_frames),
	GBE_STATSB_INFO(tx_mult_coll_frames),
	GBE_STATSB_INFO(tx_excessive_collisions),
	GBE_STATSB_INFO(tx_late_collisions),
	GBE_STATSB_INFO(tx_underrun),
	GBE_STATSB_INFO(tx_carrier_sense_errors),
	GBE_STATSB_INFO(tx_bytes),
	GBE_STATSB_INFO(tx_64byte_frames),
	GBE_STATSB_INFO(tx_65_to_127byte_frames),
	GBE_STATSB_INFO(tx_128_to_255byte_frames),
	GBE_STATSB_INFO(tx_256_to_511byte_frames),
	GBE_STATSB_INFO(tx_512_to_1023byte_frames),
	GBE_STATSB_INFO(tx_1024byte_frames),
	GBE_STATSB_INFO(net_bytes),
	GBE_STATSB_INFO(rx_sof_overruns),
	GBE_STATSB_INFO(rx_mof_overruns),
	GBE_STATSB_INFO(rx_dma_overruns),
	/* GBE module C */
	{GBE_STATSC_INFO(rx_good_frames)},
	{GBE_STATSC_INFO(rx_broadcast_frames)},
	{GBE_STATSC_INFO(rx_multicast_frames)},
	{GBE_STATSC_INFO(rx_pause_frames)},
	{GBE_STATSC_INFO(rx_crc_errors)},
	{GBE_STATSC_INFO(rx_align_code_errors)},
	{GBE_STATSC_INFO(rx_oversized_frames)},
	{GBE_STATSC_INFO(rx_jabber_frames)},
	{GBE_STATSC_INFO(rx_undersized_frames)},
	{GBE_STATSC_INFO(rx_fragments)},
	{GBE_STATSC_INFO(rx_bytes)},
	{GBE_STATSC_INFO(tx_good_frames)},
	{GBE_STATSC_INFO(tx_broadcast_frames)},
	{GBE_STATSC_INFO(tx_multicast_frames)},
	{GBE_STATSC_INFO(tx_pause_frames)},
	{GBE_STATSC_INFO(tx_deferred_frames)},
	{GBE_STATSC_INFO(tx_collision_frames)},
	{GBE_STATSC_INFO(tx_single_coll_frames)},
	{GBE_STATSC_INFO(tx_mult_coll_frames)},
	{GBE_STATSC_INFO(tx_excessive_collisions)},
	{GBE_STATSC_INFO(tx_late_collisions)},
	{GBE_STATSC_INFO(tx_underrun)},
	{GBE_STATSC_INFO(tx_carrier_sense_errors)},
	{GBE_STATSC_INFO(tx_bytes)},
	{GBE_STATSC_INFO(tx_64byte_frames)},
	{GBE_STATSC_INFO(tx_65_to_127byte_frames)},
	{GBE_STATSC_INFO(tx_128_to_255byte_frames)},
	{GBE_STATSC_INFO(tx_256_to_511byte_frames)},
	{GBE_STATSC_INFO(tx_512_to_1023byte_frames)},
	{GBE_STATSC_INFO(tx_1024byte_frames)},
	{GBE_STATSC_INFO(net_bytes)},
	{GBE_STATSC_INFO(rx_sof_overruns)},
	{GBE_STATSC_INFO(rx_mof_overruns)},
	{GBE_STATSC_INFO(rx_dma_overruns)},
	GBE_STATSC_INFO(rx_good_frames),
	GBE_STATSC_INFO(rx_broadcast_frames),
	GBE_STATSC_INFO(rx_multicast_frames),
	GBE_STATSC_INFO(rx_pause_frames),
	GBE_STATSC_INFO(rx_crc_errors),
	GBE_STATSC_INFO(rx_align_code_errors),
	GBE_STATSC_INFO(rx_oversized_frames),
	GBE_STATSC_INFO(rx_jabber_frames),
	GBE_STATSC_INFO(rx_undersized_frames),
	GBE_STATSC_INFO(rx_fragments),
	GBE_STATSC_INFO(rx_bytes),
	GBE_STATSC_INFO(tx_good_frames),
	GBE_STATSC_INFO(tx_broadcast_frames),
	GBE_STATSC_INFO(tx_multicast_frames),
	GBE_STATSC_INFO(tx_pause_frames),
	GBE_STATSC_INFO(tx_deferred_frames),
	GBE_STATSC_INFO(tx_collision_frames),
	GBE_STATSC_INFO(tx_single_coll_frames),
	GBE_STATSC_INFO(tx_mult_coll_frames),
	GBE_STATSC_INFO(tx_excessive_collisions),
	GBE_STATSC_INFO(tx_late_collisions),
	GBE_STATSC_INFO(tx_underrun),
	GBE_STATSC_INFO(tx_carrier_sense_errors),
	GBE_STATSC_INFO(tx_bytes),
	GBE_STATSC_INFO(tx_64byte_frames),
	GBE_STATSC_INFO(tx_65_to_127byte_frames),
	GBE_STATSC_INFO(tx_128_to_255byte_frames),
	GBE_STATSC_INFO(tx_256_to_511byte_frames),
	GBE_STATSC_INFO(tx_512_to_1023byte_frames),
	GBE_STATSC_INFO(tx_1024byte_frames),
	GBE_STATSC_INFO(net_bytes),
	GBE_STATSC_INFO(rx_sof_overruns),
	GBE_STATSC_INFO(rx_mof_overruns),
	GBE_STATSC_INFO(rx_dma_overruns),
	/* GBE module D */
	{GBE_STATSD_INFO(rx_good_frames)},
	{GBE_STATSD_INFO(rx_broadcast_frames)},
	{GBE_STATSD_INFO(rx_multicast_frames)},
	{GBE_STATSD_INFO(rx_pause_frames)},
	{GBE_STATSD_INFO(rx_crc_errors)},
	{GBE_STATSD_INFO(rx_align_code_errors)},
	{GBE_STATSD_INFO(rx_oversized_frames)},
	{GBE_STATSD_INFO(rx_jabber_frames)},
	{GBE_STATSD_INFO(rx_undersized_frames)},
	{GBE_STATSD_INFO(rx_fragments)},
	{GBE_STATSD_INFO(rx_bytes)},
	{GBE_STATSD_INFO(tx_good_frames)},
	{GBE_STATSD_INFO(tx_broadcast_frames)},
	{GBE_STATSD_INFO(tx_multicast_frames)},
	{GBE_STATSD_INFO(tx_pause_frames)},
	{GBE_STATSD_INFO(tx_deferred_frames)},
	{GBE_STATSD_INFO(tx_collision_frames)},
	{GBE_STATSD_INFO(tx_single_coll_frames)},
	{GBE_STATSD_INFO(tx_mult_coll_frames)},
	{GBE_STATSD_INFO(tx_excessive_collisions)},
	{GBE_STATSD_INFO(tx_late_collisions)},
	{GBE_STATSD_INFO(tx_underrun)},
	{GBE_STATSD_INFO(tx_carrier_sense_errors)},
	{GBE_STATSD_INFO(tx_bytes)},
	{GBE_STATSD_INFO(tx_64byte_frames)},
	{GBE_STATSD_INFO(tx_65_to_127byte_frames)},
	{GBE_STATSD_INFO(tx_128_to_255byte_frames)},
	{GBE_STATSD_INFO(tx_256_to_511byte_frames)},
	{GBE_STATSD_INFO(tx_512_to_1023byte_frames)},
	{GBE_STATSD_INFO(tx_1024byte_frames)},
	{GBE_STATSD_INFO(net_bytes)},
	{GBE_STATSD_INFO(rx_sof_overruns)},
	{GBE_STATSD_INFO(rx_mof_overruns)},
	{GBE_STATSD_INFO(rx_dma_overruns)},
	GBE_STATSD_INFO(rx_good_frames),
	GBE_STATSD_INFO(rx_broadcast_frames),
	GBE_STATSD_INFO(rx_multicast_frames),
	GBE_STATSD_INFO(rx_pause_frames),
	GBE_STATSD_INFO(rx_crc_errors),
	GBE_STATSD_INFO(rx_align_code_errors),
	GBE_STATSD_INFO(rx_oversized_frames),
	GBE_STATSD_INFO(rx_jabber_frames),
	GBE_STATSD_INFO(rx_undersized_frames),
	GBE_STATSD_INFO(rx_fragments),
	GBE_STATSD_INFO(rx_bytes),
	GBE_STATSD_INFO(tx_good_frames),
	GBE_STATSD_INFO(tx_broadcast_frames),
	GBE_STATSD_INFO(tx_multicast_frames),
	GBE_STATSD_INFO(tx_pause_frames),
	GBE_STATSD_INFO(tx_deferred_frames),
	GBE_STATSD_INFO(tx_collision_frames),
	GBE_STATSD_INFO(tx_single_coll_frames),
	GBE_STATSD_INFO(tx_mult_coll_frames),
	GBE_STATSD_INFO(tx_excessive_collisions),
	GBE_STATSD_INFO(tx_late_collisions),
	GBE_STATSD_INFO(tx_underrun),
	GBE_STATSD_INFO(tx_carrier_sense_errors),
	GBE_STATSD_INFO(tx_bytes),
	GBE_STATSD_INFO(tx_64byte_frames),
	GBE_STATSD_INFO(tx_65_to_127byte_frames),
	GBE_STATSD_INFO(tx_128_to_255byte_frames),
	GBE_STATSD_INFO(tx_256_to_511byte_frames),
	GBE_STATSD_INFO(tx_512_to_1023byte_frames),
	GBE_STATSD_INFO(tx_1024byte_frames),
	GBE_STATSD_INFO(net_bytes),
	GBE_STATSD_INFO(rx_sof_overruns),
	GBE_STATSD_INFO(rx_mof_overruns),
	GBE_STATSD_INFO(rx_dma_overruns),
};

#define XGBE_STATS0_INFO(field)	"GBE_0:"#field, XGBE_STATS0_MODULE, \
#define XGBE_STATS0_INFO(field)				\
{							\
	"GBE_0:"#field, XGBE_STATS0_MODULE,		\
	FIELD_SIZEOF(struct xgbe_hw_stats, field),	\
				offsetof(struct xgbe_hw_stats, field)
	offsetof(struct xgbe_hw_stats, field)		\
}

#define XGBE_STATS1_INFO(field)	"GBE_1:"#field, XGBE_STATS1_MODULE, \
#define XGBE_STATS1_INFO(field)				\
{							\
	"GBE_1:"#field, XGBE_STATS1_MODULE,		\
	FIELD_SIZEOF(struct xgbe_hw_stats, field),	\
				offsetof(struct xgbe_hw_stats, field)
	offsetof(struct xgbe_hw_stats, field)		\
}

#define XGBE_STATS2_INFO(field)	"GBE_2:"#field, XGBE_STATS2_MODULE, \
#define XGBE_STATS2_INFO(field)				\
{							\
	"GBE_2:"#field, XGBE_STATS2_MODULE,		\
	FIELD_SIZEOF(struct xgbe_hw_stats, field),	\
				offsetof(struct xgbe_hw_stats, field)
	offsetof(struct xgbe_hw_stats, field)		\
}

static const struct netcp_ethtool_stat xgbe10_et_stats[] = {
	/* GBE module 0 */
	{XGBE_STATS0_INFO(rx_good_frames)},
	{XGBE_STATS0_INFO(rx_broadcast_frames)},
	{XGBE_STATS0_INFO(rx_multicast_frames)},
	{XGBE_STATS0_INFO(rx_oversized_frames)},
	{XGBE_STATS0_INFO(rx_undersized_frames)},
	{XGBE_STATS0_INFO(overrun_type4)},
	{XGBE_STATS0_INFO(overrun_type5)},
	{XGBE_STATS0_INFO(rx_bytes)},
	{XGBE_STATS0_INFO(tx_good_frames)},
	{XGBE_STATS0_INFO(tx_broadcast_frames)},
	{XGBE_STATS0_INFO(tx_multicast_frames)},
	{XGBE_STATS0_INFO(tx_bytes)},
	{XGBE_STATS0_INFO(tx_64byte_frames)},
	{XGBE_STATS0_INFO(tx_65_to_127byte_frames)},
	{XGBE_STATS0_INFO(tx_128_to_255byte_frames)},
	{XGBE_STATS0_INFO(tx_256_to_511byte_frames)},
	{XGBE_STATS0_INFO(tx_512_to_1023byte_frames)},
	{XGBE_STATS0_INFO(tx_1024byte_frames)},
	{XGBE_STATS0_INFO(net_bytes)},
	{XGBE_STATS0_INFO(rx_sof_overruns)},
	{XGBE_STATS0_INFO(rx_mof_overruns)},
	{XGBE_STATS0_INFO(rx_dma_overruns)},
	XGBE_STATS0_INFO(rx_good_frames),
	XGBE_STATS0_INFO(rx_broadcast_frames),
	XGBE_STATS0_INFO(rx_multicast_frames),
	XGBE_STATS0_INFO(rx_oversized_frames),
	XGBE_STATS0_INFO(rx_undersized_frames),
	XGBE_STATS0_INFO(overrun_type4),
	XGBE_STATS0_INFO(overrun_type5),
	XGBE_STATS0_INFO(rx_bytes),
	XGBE_STATS0_INFO(tx_good_frames),
	XGBE_STATS0_INFO(tx_broadcast_frames),
	XGBE_STATS0_INFO(tx_multicast_frames),
	XGBE_STATS0_INFO(tx_bytes),
	XGBE_STATS0_INFO(tx_64byte_frames),
	XGBE_STATS0_INFO(tx_65_to_127byte_frames),
	XGBE_STATS0_INFO(tx_128_to_255byte_frames),
	XGBE_STATS0_INFO(tx_256_to_511byte_frames),
	XGBE_STATS0_INFO(tx_512_to_1023byte_frames),
	XGBE_STATS0_INFO(tx_1024byte_frames),
	XGBE_STATS0_INFO(net_bytes),
	XGBE_STATS0_INFO(rx_sof_overruns),
	XGBE_STATS0_INFO(rx_mof_overruns),
	XGBE_STATS0_INFO(rx_dma_overruns),
	/* XGBE module 1 */
	{XGBE_STATS1_INFO(rx_good_frames)},
	{XGBE_STATS1_INFO(rx_broadcast_frames)},
	{XGBE_STATS1_INFO(rx_multicast_frames)},
	{XGBE_STATS1_INFO(rx_pause_frames)},
	{XGBE_STATS1_INFO(rx_crc_errors)},
	{XGBE_STATS1_INFO(rx_align_code_errors)},
	{XGBE_STATS1_INFO(rx_oversized_frames)},
	{XGBE_STATS1_INFO(rx_jabber_frames)},
	{XGBE_STATS1_INFO(rx_undersized_frames)},
	{XGBE_STATS1_INFO(rx_fragments)},
	{XGBE_STATS1_INFO(overrun_type4)},
	{XGBE_STATS1_INFO(overrun_type5)},
	{XGBE_STATS1_INFO(rx_bytes)},
	{XGBE_STATS1_INFO(tx_good_frames)},
	{XGBE_STATS1_INFO(tx_broadcast_frames)},
	{XGBE_STATS1_INFO(tx_multicast_frames)},
	{XGBE_STATS1_INFO(tx_pause_frames)},
	{XGBE_STATS1_INFO(tx_deferred_frames)},
	{XGBE_STATS1_INFO(tx_collision_frames)},
	{XGBE_STATS1_INFO(tx_single_coll_frames)},
	{XGBE_STATS1_INFO(tx_mult_coll_frames)},
	{XGBE_STATS1_INFO(tx_excessive_collisions)},
	{XGBE_STATS1_INFO(tx_late_collisions)},
	{XGBE_STATS1_INFO(tx_underrun)},
	{XGBE_STATS1_INFO(tx_carrier_sense_errors)},
	{XGBE_STATS1_INFO(tx_bytes)},
	{XGBE_STATS1_INFO(tx_64byte_frames)},
	{XGBE_STATS1_INFO(tx_65_to_127byte_frames)},
	{XGBE_STATS1_INFO(tx_128_to_255byte_frames)},
	{XGBE_STATS1_INFO(tx_256_to_511byte_frames)},
	{XGBE_STATS1_INFO(tx_512_to_1023byte_frames)},
	{XGBE_STATS1_INFO(tx_1024byte_frames)},
	{XGBE_STATS1_INFO(net_bytes)},
	{XGBE_STATS1_INFO(rx_sof_overruns)},
	{XGBE_STATS1_INFO(rx_mof_overruns)},
	{XGBE_STATS1_INFO(rx_dma_overruns)},
	XGBE_STATS1_INFO(rx_good_frames),
	XGBE_STATS1_INFO(rx_broadcast_frames),
	XGBE_STATS1_INFO(rx_multicast_frames),
	XGBE_STATS1_INFO(rx_pause_frames),
	XGBE_STATS1_INFO(rx_crc_errors),
	XGBE_STATS1_INFO(rx_align_code_errors),
	XGBE_STATS1_INFO(rx_oversized_frames),
	XGBE_STATS1_INFO(rx_jabber_frames),
	XGBE_STATS1_INFO(rx_undersized_frames),
	XGBE_STATS1_INFO(rx_fragments),
	XGBE_STATS1_INFO(overrun_type4),
	XGBE_STATS1_INFO(overrun_type5),
	XGBE_STATS1_INFO(rx_bytes),
	XGBE_STATS1_INFO(tx_good_frames),
	XGBE_STATS1_INFO(tx_broadcast_frames),
	XGBE_STATS1_INFO(tx_multicast_frames),
	XGBE_STATS1_INFO(tx_pause_frames),
	XGBE_STATS1_INFO(tx_deferred_frames),
	XGBE_STATS1_INFO(tx_collision_frames),
	XGBE_STATS1_INFO(tx_single_coll_frames),
	XGBE_STATS1_INFO(tx_mult_coll_frames),
	XGBE_STATS1_INFO(tx_excessive_collisions),
	XGBE_STATS1_INFO(tx_late_collisions),
	XGBE_STATS1_INFO(tx_underrun),
	XGBE_STATS1_INFO(tx_carrier_sense_errors),
	XGBE_STATS1_INFO(tx_bytes),
	XGBE_STATS1_INFO(tx_64byte_frames),
	XGBE_STATS1_INFO(tx_65_to_127byte_frames),
	XGBE_STATS1_INFO(tx_128_to_255byte_frames),
	XGBE_STATS1_INFO(tx_256_to_511byte_frames),
	XGBE_STATS1_INFO(tx_512_to_1023byte_frames),
	XGBE_STATS1_INFO(tx_1024byte_frames),
	XGBE_STATS1_INFO(net_bytes),
	XGBE_STATS1_INFO(rx_sof_overruns),
	XGBE_STATS1_INFO(rx_mof_overruns),
	XGBE_STATS1_INFO(rx_dma_overruns),
	/* XGBE module 2 */
	{XGBE_STATS2_INFO(rx_good_frames)},
	{XGBE_STATS2_INFO(rx_broadcast_frames)},
	{XGBE_STATS2_INFO(rx_multicast_frames)},
	{XGBE_STATS2_INFO(rx_pause_frames)},
	{XGBE_STATS2_INFO(rx_crc_errors)},
	{XGBE_STATS2_INFO(rx_align_code_errors)},
	{XGBE_STATS2_INFO(rx_oversized_frames)},
	{XGBE_STATS2_INFO(rx_jabber_frames)},
	{XGBE_STATS2_INFO(rx_undersized_frames)},
	{XGBE_STATS2_INFO(rx_fragments)},
	{XGBE_STATS2_INFO(overrun_type4)},
	{XGBE_STATS2_INFO(overrun_type5)},
	{XGBE_STATS2_INFO(rx_bytes)},
	{XGBE_STATS2_INFO(tx_good_frames)},
	{XGBE_STATS2_INFO(tx_broadcast_frames)},
	{XGBE_STATS2_INFO(tx_multicast_frames)},
	{XGBE_STATS2_INFO(tx_pause_frames)},
	{XGBE_STATS2_INFO(tx_deferred_frames)},
	{XGBE_STATS2_INFO(tx_collision_frames)},
	{XGBE_STATS2_INFO(tx_single_coll_frames)},
	{XGBE_STATS2_INFO(tx_mult_coll_frames)},
	{XGBE_STATS2_INFO(tx_excessive_collisions)},
	{XGBE_STATS2_INFO(tx_late_collisions)},
	{XGBE_STATS2_INFO(tx_underrun)},
	{XGBE_STATS2_INFO(tx_carrier_sense_errors)},
	{XGBE_STATS2_INFO(tx_bytes)},
	{XGBE_STATS2_INFO(tx_64byte_frames)},
	{XGBE_STATS2_INFO(tx_65_to_127byte_frames)},
	{XGBE_STATS2_INFO(tx_128_to_255byte_frames)},
	{XGBE_STATS2_INFO(tx_256_to_511byte_frames)},
	{XGBE_STATS2_INFO(tx_512_to_1023byte_frames)},
	{XGBE_STATS2_INFO(tx_1024byte_frames)},
	{XGBE_STATS2_INFO(net_bytes)},
	{XGBE_STATS2_INFO(rx_sof_overruns)},
	{XGBE_STATS2_INFO(rx_mof_overruns)},
	{XGBE_STATS2_INFO(rx_dma_overruns)},
	XGBE_STATS2_INFO(rx_good_frames),
	XGBE_STATS2_INFO(rx_broadcast_frames),
	XGBE_STATS2_INFO(rx_multicast_frames),
	XGBE_STATS2_INFO(rx_pause_frames),
	XGBE_STATS2_INFO(rx_crc_errors),
	XGBE_STATS2_INFO(rx_align_code_errors),
	XGBE_STATS2_INFO(rx_oversized_frames),
	XGBE_STATS2_INFO(rx_jabber_frames),
	XGBE_STATS2_INFO(rx_undersized_frames),
	XGBE_STATS2_INFO(rx_fragments),
	XGBE_STATS2_INFO(overrun_type4),
	XGBE_STATS2_INFO(overrun_type5),
	XGBE_STATS2_INFO(rx_bytes),
	XGBE_STATS2_INFO(tx_good_frames),
	XGBE_STATS2_INFO(tx_broadcast_frames),
	XGBE_STATS2_INFO(tx_multicast_frames),
	XGBE_STATS2_INFO(tx_pause_frames),
	XGBE_STATS2_INFO(tx_deferred_frames),
	XGBE_STATS2_INFO(tx_collision_frames),
	XGBE_STATS2_INFO(tx_single_coll_frames),
	XGBE_STATS2_INFO(tx_mult_coll_frames),
	XGBE_STATS2_INFO(tx_excessive_collisions),
	XGBE_STATS2_INFO(tx_late_collisions),
	XGBE_STATS2_INFO(tx_underrun),
	XGBE_STATS2_INFO(tx_carrier_sense_errors),
	XGBE_STATS2_INFO(tx_bytes),
	XGBE_STATS2_INFO(tx_64byte_frames),
	XGBE_STATS2_INFO(tx_65_to_127byte_frames),
	XGBE_STATS2_INFO(tx_128_to_255byte_frames),
	XGBE_STATS2_INFO(tx_256_to_511byte_frames),
	XGBE_STATS2_INFO(tx_512_to_1023byte_frames),
	XGBE_STATS2_INFO(tx_1024byte_frames),
	XGBE_STATS2_INFO(net_bytes),
	XGBE_STATS2_INFO(rx_sof_overruns),
	XGBE_STATS2_INFO(rx_mof_overruns),
	XGBE_STATS2_INFO(rx_dma_overruns),
};

#define for_each_intf(i, priv) \