Skip to content

Commit

Permalink
tg3: Automatically size stat/test string arrays
Browse files Browse the repository at this point in the history
This patch reimplements the size preprocessor constants of the stats and
ethtool test string arrays.  The size is calculated at compile time
rather than using static constants.

Signed-off-by: Matt Carlson <[email protected]>
Signed-off-by: Benjamin Li <[email protected]>
Reviewed-by: Michael Chan <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
  • Loading branch information
Matt Carlson authored and davem330 committed Apr 14, 2011
1 parent e64de4e commit 48fa55a
Showing 1 changed file with 8 additions and 7 deletions.
15 changes: 8 additions & 7 deletions drivers/net/tg3.c
Original file line number Diff line number Diff line change
Expand Up @@ -165,11 +165,6 @@

#define TG3_RAW_IP_ALIGN 2

/* number of ETHTOOL_GSTATS u64's */
#define TG3_NUM_STATS (sizeof(struct tg3_ethtool_stats)/sizeof(u64))

#define TG3_NUM_TEST 6

#define TG3_FW_UPDATE_TIMEOUT_SEC 5

#define FIRMWARE_TG3 "tigon/tg3.bin"
Expand Down Expand Up @@ -279,7 +274,7 @@ MODULE_DEVICE_TABLE(pci, tg3_pci_tbl);

static const struct {
const char string[ETH_GSTRING_LEN];
} ethtool_stats_keys[TG3_NUM_STATS] = {
} ethtool_stats_keys[] = {
{ "rx_octets" },
{ "rx_fragments" },
{ "rx_ucast_packets" },
Expand Down Expand Up @@ -358,9 +353,12 @@ static const struct {
{ "nic_tx_threshold_hit" }
};

#define TG3_NUM_STATS ARRAY_SIZE(ethtool_stats_keys)


static const struct {
const char string[ETH_GSTRING_LEN];
} ethtool_test_keys[TG3_NUM_TEST] = {
} ethtool_test_keys[] = {
{ "nvram test (online) " },
{ "link test (online) " },
{ "register test (offline)" },
Expand All @@ -369,6 +367,9 @@ static const struct {
{ "interrupt test (offline)" },
};

#define TG3_NUM_TEST ARRAY_SIZE(ethtool_test_keys)


static void tg3_write32(struct tg3 *tp, u32 off, u32 val)
{
writel(val, tp->regs + off);
Expand Down

0 comments on commit 48fa55a

Please sign in to comment.