|
@@ -1157,7 +1157,7 @@ struct ixgbe_reg_test {
|
|
|
#define TABLE64_TEST_HI 6
|
|
|
|
|
|
/* default 82599 register test */
|
|
|
-static struct ixgbe_reg_test reg_test_82599[] = {
|
|
|
+static const struct ixgbe_reg_test reg_test_82599[] = {
|
|
|
{ IXGBE_FCRTL_82599(0), 1, PATTERN_TEST, 0x8007FFF0, 0x8007FFF0 },
|
|
|
{ IXGBE_FCRTH_82599(0), 1, PATTERN_TEST, 0x8007FFF0, 0x8007FFF0 },
|
|
|
{ IXGBE_PFCTOP, 1, PATTERN_TEST, 0xFFFFFFFF, 0xFFFFFFFF },
|
|
@@ -1181,7 +1181,7 @@ static struct ixgbe_reg_test reg_test_82599[] = {
|
|
|
};
|
|
|
|
|
|
/* default 82598 register test */
|
|
|
-static struct ixgbe_reg_test reg_test_82598[] = {
|
|
|
+static const struct ixgbe_reg_test reg_test_82598[] = {
|
|
|
{ IXGBE_FCRTL(0), 1, PATTERN_TEST, 0x8007FFF0, 0x8007FFF0 },
|
|
|
{ IXGBE_FCRTH(0), 1, PATTERN_TEST, 0x8007FFF0, 0x8007FFF0 },
|
|
|
{ IXGBE_PFCTOP, 1, PATTERN_TEST, 0xFFFFFFFF, 0xFFFFFFFF },
|
|
@@ -1208,18 +1208,22 @@ static struct ixgbe_reg_test reg_test_82598[] = {
|
|
|
{ 0, 0, 0, 0 }
|
|
|
};
|
|
|
|
|
|
+static const u32 register_test_patterns[] = {
|
|
|
+ 0x5A5A5A5A, 0xA5A5A5A5, 0x00000000, 0xFFFFFFFF
|
|
|
+};
|
|
|
+
|
|
|
#define REG_PATTERN_TEST(R, M, W) \
|
|
|
{ \
|
|
|
u32 pat, val, before; \
|
|
|
- const u32 _test[] = {0x5A5A5A5A, 0xA5A5A5A5, 0x00000000, 0xFFFFFFFF}; \
|
|
|
- for (pat = 0; pat < ARRAY_SIZE(_test); pat++) { \
|
|
|
+ for (pat = 0; pat < ARRAY_SIZE(register_test_patterns); pat++) { \
|
|
|
before = readl(adapter->hw.hw_addr + R); \
|
|
|
- writel((_test[pat] & W), (adapter->hw.hw_addr + R)); \
|
|
|
+ writel((register_test_patterns[pat] & W), \
|
|
|
+ (adapter->hw.hw_addr + R)); \
|
|
|
val = readl(adapter->hw.hw_addr + R); \
|
|
|
- if (val != (_test[pat] & W & M)) { \
|
|
|
- e_err(drv, "pattern test reg %04X failed: got " \
|
|
|
- "0x%08X expected 0x%08X\n", \
|
|
|
- R, val, (_test[pat] & W & M)); \
|
|
|
+ if (val != (register_test_patterns[pat] & W & M)) { \
|
|
|
+ e_err(drv, "pattern test reg %04X failed: got " \
|
|
|
+ "0x%08X expected 0x%08X\n", \
|
|
|
+ R, val, (register_test_patterns[pat] & W & M)); \
|
|
|
*data = R; \
|
|
|
writel(before, adapter->hw.hw_addr + R); \
|
|
|
return 1; \
|
|
@@ -1246,7 +1250,7 @@ static struct ixgbe_reg_test reg_test_82598[] = {
|
|
|
|
|
|
static int ixgbe_reg_test(struct ixgbe_adapter *adapter, u64 *data)
|
|
|
{
|
|
|
- struct ixgbe_reg_test *test;
|
|
|
+ const struct ixgbe_reg_test *test;
|
|
|
u32 value, before, after;
|
|
|
u32 i, toggle;
|
|
|
|