[dpdk-test-report] |WARNING| pw64395 [RFC 1/7] net/igc: base driver

checkpatch at dpdk.org checkpatch at dpdk.org
Fri Jan 10 09:40:30 CET 2020


Test-Label: checkpatch
Test-Status: WARNING
http://dpdk.org/patch/64395

_coding style issues_


WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#159: FILE: drivers/net/igc/base/e1000_80003es2lan.c:12:
+STATIC void igc_release_phy_80003es2lan(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#160: FILE: drivers/net/igc/base/e1000_80003es2lan.c:13:
+STATIC s32  igc_acquire_nvm_80003es2lan(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#161: FILE: drivers/net/igc/base/e1000_80003es2lan.c:14:
+STATIC void igc_release_nvm_80003es2lan(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#162: FILE: drivers/net/igc/base/e1000_80003es2lan.c:15:
+STATIC s32  igc_read_phy_reg_gg82563_80003es2lan(struct igc_hw *hw,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#165: FILE: drivers/net/igc/base/e1000_80003es2lan.c:18:
+STATIC s32  igc_write_phy_reg_gg82563_80003es2lan(struct igc_hw *hw,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#168: FILE: drivers/net/igc/base/e1000_80003es2lan.c:21:
+STATIC s32  igc_write_nvm_80003es2lan(struct igc_hw *hw, u16 offset,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#170: FILE: drivers/net/igc/base/e1000_80003es2lan.c:23:
+STATIC s32  igc_get_cfg_done_80003es2lan(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#171: FILE: drivers/net/igc/base/e1000_80003es2lan.c:24:
+STATIC s32  igc_phy_force_speed_duplex_80003es2lan(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#172: FILE: drivers/net/igc/base/e1000_80003es2lan.c:25:
+STATIC s32  igc_get_cable_length_80003es2lan(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#173: FILE: drivers/net/igc/base/e1000_80003es2lan.c:26:
+STATIC s32  igc_get_link_up_info_80003es2lan(struct igc_hw *hw, u16 *speed,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#175: FILE: drivers/net/igc/base/e1000_80003es2lan.c:28:
+STATIC s32  igc_reset_hw_80003es2lan(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#176: FILE: drivers/net/igc/base/e1000_80003es2lan.c:29:
+STATIC s32  igc_init_hw_80003es2lan(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#177: FILE: drivers/net/igc/base/e1000_80003es2lan.c:30:
+STATIC s32  igc_setup_copper_link_80003es2lan(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#178: FILE: drivers/net/igc/base/e1000_80003es2lan.c:31:
+STATIC void igc_clear_hw_cntrs_80003es2lan(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#179: FILE: drivers/net/igc/base/e1000_80003es2lan.c:32:
+STATIC s32  igc_acquire_swfw_sync_80003es2lan(struct igc_hw *hw, u16 mask);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#180: FILE: drivers/net/igc/base/e1000_80003es2lan.c:33:
+STATIC s32  igc_cfg_kmrn_10_100_80003es2lan(struct igc_hw *hw, u16 duplex);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#181: FILE: drivers/net/igc/base/e1000_80003es2lan.c:34:
+STATIC s32  igc_cfg_kmrn_1000_80003es2lan(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#182: FILE: drivers/net/igc/base/e1000_80003es2lan.c:35:
+STATIC s32  igc_cfg_on_link_up_80003es2lan(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#183: FILE: drivers/net/igc/base/e1000_80003es2lan.c:36:
+STATIC s32  igc_read_kmrn_reg_80003es2lan(struct igc_hw *hw, u32 offset,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#185: FILE: drivers/net/igc/base/e1000_80003es2lan.c:38:
+STATIC s32  igc_write_kmrn_reg_80003es2lan(struct igc_hw *hw, u32 offset,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#187: FILE: drivers/net/igc/base/e1000_80003es2lan.c:40:
+STATIC void igc_initialize_hw_bits_80003es2lan(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#188: FILE: drivers/net/igc/base/e1000_80003es2lan.c:41:
+STATIC void igc_release_swfw_sync_80003es2lan(struct igc_hw *hw, u16 mask);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#189: FILE: drivers/net/igc/base/e1000_80003es2lan.c:42:
+STATIC s32  igc_read_mac_addr_80003es2lan(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#190: FILE: drivers/net/igc/base/e1000_80003es2lan.c:43:
+STATIC void igc_power_down_phy_copper_80003es2lan(struct igc_hw *hw);

WARNING:UNNECESSARY_ELSE: else is not generally useful after a break or return
#216: FILE: drivers/net/igc/base/e1000_80003es2lan.c:69:
+		return IGC_SUCCESS;
+	} else {

CHECK:BRACES: braces {} should be used on all arms of this statement
#973: FILE: drivers/net/igc/base/e1000_80003es2lan.c:826:
+	if (!ret_val) {
[...]
+	} else
[...]

CHECK:BRACES: Unbalanced braces around else statement
#980: FILE: drivers/net/igc/base/e1000_80003es2lan.c:833:
+	} else

CHECK:BRACES: braces {} should be used on all arms of this statement
#1040: FILE: drivers/net/igc/base/e1000_80003es2lan.c:893:
+	if (!ret_val) {
[...]
+	} else
[...]

CHECK:BRACES: Unbalanced braces around else statement
#1047: FILE: drivers/net/igc/base/e1000_80003es2lan.c:900:
+	} else

WARNING:RETURN_VOID: void function return statements are not generally useful
#1150: FILE: drivers/net/igc/base/e1000_80003es2lan.c:1003:
+	return;
+}

WARNING:RETURN_VOID: void function return statements are not generally useful
#1594: FILE: drivers/net/igc/base/e1000_80003es2lan.c:1447:
+	return;
+}

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#1744: FILE: drivers/net/igc/base/e1000_82540.c:19:
+STATIC s32  igc_init_nvm_params_82540(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#1745: FILE: drivers/net/igc/base/e1000_82540.c:20:
+STATIC s32  igc_init_mac_params_82540(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#1746: FILE: drivers/net/igc/base/e1000_82540.c:21:
+STATIC s32  igc_adjust_serdes_amplitude_82540(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#1747: FILE: drivers/net/igc/base/e1000_82540.c:22:
+STATIC void igc_clear_hw_cntrs_82540(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#1748: FILE: drivers/net/igc/base/e1000_82540.c:23:
+STATIC s32  igc_init_hw_82540(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#1749: FILE: drivers/net/igc/base/e1000_82540.c:24:
+STATIC s32  igc_reset_hw_82540(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#1750: FILE: drivers/net/igc/base/e1000_82540.c:25:
+STATIC s32  igc_set_phy_mode_82540(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#1751: FILE: drivers/net/igc/base/e1000_82540.c:26:
+STATIC s32  igc_set_vco_speed_82540(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#1752: FILE: drivers/net/igc/base/e1000_82540.c:27:
+STATIC s32  igc_setup_copper_link_82540(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#1753: FILE: drivers/net/igc/base/e1000_82540.c:28:
+STATIC s32  igc_setup_fiber_serdes_link_82540(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#1754: FILE: drivers/net/igc/base/e1000_82540.c:29:
+STATIC void igc_power_down_phy_copper_82540(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#1755: FILE: drivers/net/igc/base/e1000_82540.c:30:
+STATIC s32  igc_read_mac_addr_82540(struct igc_hw *hw);

WARNING:UNNECESSARY_BREAK: break is not useful after a goto or return
#1801: FILE: drivers/net/igc/base/e1000_82540.c:76:
+		goto out;
+		break;

WARNING:UNNECESSARY_BREAK: break is not useful after a goto or return
#1913: FILE: drivers/net/igc/base/e1000_82540.c:188:
+		goto out;
+		break;

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->device_id == IGC_DEV_ID_82546GB_QUAD_COPPER'
#2083: FILE: drivers/net/igc/base/e1000_82540.c:358:
+	if ((hw->device_id == IGC_DEV_ID_82546GB_QUAD_COPPER) ||
+	    (hw->device_id == IGC_DEV_ID_82546GB_QUAD_COPPER_KSP3)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->device_id == IGC_DEV_ID_82546GB_QUAD_COPPER_KSP3'
#2083: FILE: drivers/net/igc/base/e1000_82540.c:358:
+	if ((hw->device_id == IGC_DEV_ID_82546GB_QUAD_COPPER) ||
+	    (hw->device_id == IGC_DEV_ID_82546GB_QUAD_COPPER_KSP3)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'nvm_data != NVM_RESERVED_WORD'
#2299: FILE: drivers/net/igc/base/e1000_82540.c:574:
+	if ((nvm_data != NVM_RESERVED_WORD) && (nvm_data & NVM_PHY_CLASS_A)) {

CHECK:BRACES: Blank lines aren't necessary before a close brace '}'
#2313: FILE: drivers/net/igc/base/e1000_82540.c:588:
+
+	}

WARNING:RETURN_VOID: void function return statements are not generally useful
#2333: FILE: drivers/net/igc/base/e1000_82540.c:608:
+	return;
+}

CHECK:SPACING: spaces preferred around that '+' (ctx:VxV)
#2401: FILE: drivers/net/igc/base/e1000_82540.c:676:
+		hw->mac.perm_addr[i+1] = (u8)(nvm_data >> 8);
 		                   ^

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#2436: FILE: drivers/net/igc/base/e1000_82541.c:17:
+STATIC s32  igc_init_nvm_params_82541(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#2437: FILE: drivers/net/igc/base/e1000_82541.c:18:
+STATIC s32  igc_init_mac_params_82541(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#2438: FILE: drivers/net/igc/base/e1000_82541.c:19:
+STATIC s32  igc_reset_hw_82541(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#2439: FILE: drivers/net/igc/base/e1000_82541.c:20:
+STATIC s32  igc_init_hw_82541(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#2440: FILE: drivers/net/igc/base/e1000_82541.c:21:
+STATIC s32  igc_get_link_up_info_82541(struct igc_hw *hw, u16 *speed,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#2442: FILE: drivers/net/igc/base/e1000_82541.c:23:
+STATIC s32  igc_phy_hw_reset_82541(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#2443: FILE: drivers/net/igc/base/e1000_82541.c:24:
+STATIC s32  igc_setup_copper_link_82541(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#2444: FILE: drivers/net/igc/base/e1000_82541.c:25:
+STATIC s32  igc_check_for_link_82541(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#2445: FILE: drivers/net/igc/base/e1000_82541.c:26:
+STATIC s32  igc_get_cable_length_igp_82541(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#2446: FILE: drivers/net/igc/base/e1000_82541.c:27:
+STATIC s32  igc_set_d3_lplu_state_82541(struct igc_hw *hw,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#2448: FILE: drivers/net/igc/base/e1000_82541.c:29:
+STATIC s32  igc_setup_led_82541(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#2449: FILE: drivers/net/igc/base/e1000_82541.c:30:
+STATIC s32  igc_cleanup_led_82541(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#2450: FILE: drivers/net/igc/base/e1000_82541.c:31:
+STATIC void igc_clear_hw_cntrs_82541(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#2451: FILE: drivers/net/igc/base/e1000_82541.c:32:
+STATIC s32  igc_config_dsp_after_link_change_82541(struct igc_hw *hw,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#2453: FILE: drivers/net/igc/base/e1000_82541.c:34:
+STATIC s32  igc_phy_init_script_82541(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#2454: FILE: drivers/net/igc/base/e1000_82541.c:35:
+STATIC void igc_power_down_phy_copper_82541(struct igc_hw *hw);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->mac.type == igc_82541'
#2704: FILE: drivers/net/igc/base/e1000_82541.c:285:
+	if ((hw->mac.type == igc_82541) || (hw->mac.type == igc_82547)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->mac.type == igc_82547'
#2704: FILE: drivers/net/igc/base/e1000_82541.c:285:
+	if ((hw->mac.type == igc_82541) || (hw->mac.type == igc_82547)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->mac.type == igc_82541'
#2734: FILE: drivers/net/igc/base/e1000_82541.c:315:
+	if ((hw->mac.type == igc_82541) || (hw->mac.type == igc_82547)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->mac.type == igc_82547'
#2734: FILE: drivers/net/igc/base/e1000_82541.c:315:
+	if ((hw->mac.type == igc_82541) || (hw->mac.type == igc_82547)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->mac.type == igc_82541'
#2898: FILE: drivers/net/igc/base/e1000_82541.c:479:
+	if ((hw->mac.type == igc_82541) || (hw->mac.type == igc_82547)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->mac.type == igc_82547'
#2898: FILE: drivers/net/igc/base/e1000_82541.c:479:
+	if ((hw->mac.type == igc_82541) || (hw->mac.type == igc_82547)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'dev_spec->dsp_config == igc_dsp_config_enabled'
#3087: FILE: drivers/net/igc/base/e1000_82541.c:668:
+		if ((dev_spec->dsp_config == igc_dsp_config_enabled) &&
+		    phy->min_cable_length >= 50) {

CHECK:BRACES: Blank lines aren't necessary after an open brace '{'
#3089: FILE: drivers/net/igc/base/e1000_82541.c:670:
+		    phy->min_cable_length >= 50) {
+

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'dev_spec->ffe_config != igc_ffe_config_enabled'
#3108: FILE: drivers/net/igc/base/e1000_82541.c:689:
+		if ((dev_spec->ffe_config != igc_ffe_config_enabled) ||
+		    (phy->min_cable_length >= 50)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'phy->min_cable_length >= 50'
#3108: FILE: drivers/net/igc/base/e1000_82541.c:689:
+		if ((dev_spec->ffe_config != igc_ffe_config_enabled) ||
+		    (phy->min_cable_length >= 50)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'cur_agc_value == 0'
#3281: FILE: drivers/net/igc/base/e1000_82541.c:862:
+		if ((cur_agc_value >= IGP01IGC_AGC_LENGTH_TABLE_SIZE - 1) ||
+		    (cur_agc_value == 0)) {

WARNING:UNNECESSARY_BREAK: break is not useful after a goto or return
#3346: FILE: drivers/net/igc/base/e1000_82541.c:927:
+		goto out;
+		break;

WARNING:RETURN_VOID: void function return statements are not generally useful
#3621: FILE: drivers/net/igc/base/e1000_82541.c:1202:
+	return;
+}

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#3744: FILE: drivers/net/igc/base/e1000_82542.c:12:
+STATIC s32  igc_init_nvm_params_82542(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#3745: FILE: drivers/net/igc/base/e1000_82542.c:13:
+STATIC s32  igc_init_mac_params_82542(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#3746: FILE: drivers/net/igc/base/e1000_82542.c:14:
+STATIC s32  igc_get_bus_info_82542(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#3747: FILE: drivers/net/igc/base/e1000_82542.c:15:
+STATIC s32  igc_reset_hw_82542(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#3748: FILE: drivers/net/igc/base/e1000_82542.c:16:
+STATIC s32  igc_init_hw_82542(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#3749: FILE: drivers/net/igc/base/e1000_82542.c:17:
+STATIC s32  igc_setup_link_82542(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#3750: FILE: drivers/net/igc/base/e1000_82542.c:18:
+STATIC s32  igc_led_on_82542(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#3751: FILE: drivers/net/igc/base/e1000_82542.c:19:
+STATIC s32  igc_led_off_82542(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#3752: FILE: drivers/net/igc/base/e1000_82542.c:20:
+STATIC int  igc_rar_set_82542(struct igc_hw *hw, u8 *addr, u32 index);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#3753: FILE: drivers/net/igc/base/e1000_82542.c:21:
+STATIC void igc_clear_hw_cntrs_82542(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#3754: FILE: drivers/net/igc/base/e1000_82542.c:22:
+STATIC s32  igc_read_mac_addr_82542(struct igc_hw *hw);

CHECK:SPACING: No space is necessary after a cast
#4126: FILE: drivers/net/igc/base/e1000_82542.c:394:
+	rar_low = ((u32) addr[0] | ((u32) addr[1] << 8) |

CHECK:SPACING: No space is necessary after a cast
#4127: FILE: drivers/net/igc/base/e1000_82542.c:395:
+		   ((u32) addr[2] << 16) | ((u32) addr[3] << 24));

CHECK:SPACING: No space is necessary after a cast
#4129: FILE: drivers/net/igc/base/e1000_82542.c:397:
+	rar_high = ((u32) addr[4] | ((u32) addr[5] << 8));

CHECK:SPACING: spaces preferred around that '+' (ctx:VxV)
#4285: FILE: drivers/net/igc/base/e1000_82542.c:553:
+		hw->mac.perm_addr[i+1] = (u8)(nvm_data >> 8);
 		                   ^

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#4316: FILE: drivers/net/igc/base/e1000_82543.c:17:
+STATIC s32  igc_init_nvm_params_82543(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#4317: FILE: drivers/net/igc/base/e1000_82543.c:18:
+STATIC s32  igc_init_mac_params_82543(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#4318: FILE: drivers/net/igc/base/e1000_82543.c:19:
+STATIC s32  igc_read_phy_reg_82543(struct igc_hw *hw, u32 offset,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#4320: FILE: drivers/net/igc/base/e1000_82543.c:21:
+STATIC s32  igc_write_phy_reg_82543(struct igc_hw *hw, u32 offset,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#4322: FILE: drivers/net/igc/base/e1000_82543.c:23:
+STATIC s32  igc_phy_force_speed_duplex_82543(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#4323: FILE: drivers/net/igc/base/e1000_82543.c:24:
+STATIC s32  igc_phy_hw_reset_82543(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#4324: FILE: drivers/net/igc/base/e1000_82543.c:25:
+STATIC s32  igc_reset_hw_82543(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#4325: FILE: drivers/net/igc/base/e1000_82543.c:26:
+STATIC s32  igc_init_hw_82543(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#4326: FILE: drivers/net/igc/base/e1000_82543.c:27:
+STATIC s32  igc_setup_link_82543(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#4327: FILE: drivers/net/igc/base/e1000_82543.c:28:
+STATIC s32  igc_setup_copper_link_82543(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#4328: FILE: drivers/net/igc/base/e1000_82543.c:29:
+STATIC s32  igc_setup_fiber_link_82543(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#4329: FILE: drivers/net/igc/base/e1000_82543.c:30:
+STATIC s32  igc_check_for_copper_link_82543(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#4330: FILE: drivers/net/igc/base/e1000_82543.c:31:
+STATIC s32  igc_check_for_fiber_link_82543(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#4331: FILE: drivers/net/igc/base/e1000_82543.c:32:
+STATIC s32  igc_led_on_82543(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#4332: FILE: drivers/net/igc/base/e1000_82543.c:33:
+STATIC s32  igc_led_off_82543(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#4333: FILE: drivers/net/igc/base/e1000_82543.c:34:
+STATIC void igc_write_vfta_82543(struct igc_hw *hw, u32 offset,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#4335: FILE: drivers/net/igc/base/e1000_82543.c:36:
+STATIC void igc_clear_hw_cntrs_82543(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#4336: FILE: drivers/net/igc/base/e1000_82543.c:37:
+STATIC s32  igc_config_mac_to_phy_82543(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#4337: FILE: drivers/net/igc/base/e1000_82543.c:38:
+STATIC bool igc_init_phy_disabled_82543(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#4338: FILE: drivers/net/igc/base/e1000_82543.c:39:
+STATIC void igc_lower_mdi_clk_82543(struct igc_hw *hw, u32 *ctrl);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#4339: FILE: drivers/net/igc/base/e1000_82543.c:40:
+STATIC s32  igc_polarity_reversal_workaround_82543(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#4340: FILE: drivers/net/igc/base/e1000_82543.c:41:
+STATIC void igc_raise_mdi_clk_82543(struct igc_hw *hw, u32 *ctrl);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#4341: FILE: drivers/net/igc/base/e1000_82543.c:42:
+STATIC u16  igc_shift_in_mdi_bits_82543(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#4342: FILE: drivers/net/igc/base/e1000_82543.c:43:
+STATIC void igc_shift_out_mdi_bits_82543(struct igc_hw *hw, u32 data,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#4344: FILE: drivers/net/igc/base/e1000_82543.c:45:
+STATIC bool igc_tbi_compatibility_enabled_82543(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#4345: FILE: drivers/net/igc/base/e1000_82543.c:46:
+STATIC void igc_set_tbi_sbp_82543(struct igc_hw *hw, bool state);

WARNING:UNNECESSARY_BREAK: break is not useful after a goto or return
#4423: FILE: drivers/net/igc/base/e1000_82543.c:124:
+		goto out;
+		break;

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->mac.type != igc_82543'
#4521: FILE: drivers/net/igc/base/e1000_82543.c:222:
+	if ((hw->mac.type != igc_82543) ||
+	    (hw->phy.media_type == igc_media_type_fiber))

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->phy.media_type == igc_media_type_fiber'
#4521: FILE: drivers/net/igc/base/e1000_82543.c:222:
+	if ((hw->mac.type != igc_82543) ||
+	    (hw->phy.media_type == igc_media_type_fiber))

WARNING:RETURN_VOID: void function return statements are not generally useful
#4639: FILE: drivers/net/igc/base/e1000_82543.c:340:
+	return;
+}

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'mac_addr[0] == 0xff'
#4703: FILE: drivers/net/igc/base/e1000_82543.c:404:
+	if ((mac_addr[0] == 0xff) && (mac_addr[1] == 0xff))

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'mac_addr[1] == 0xff'
#4703: FILE: drivers/net/igc/base/e1000_82543.c:404:
+	if ((mac_addr[0] == 0xff) && (mac_addr[1] == 0xff))

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'frame_len == max_frame_size'
#4714: FILE: drivers/net/igc/base/e1000_82543.c:415:
+	if ((frame_len == max_frame_size) && (stats->roc > 0))

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'stats->roc > 0'
#4714: FILE: drivers/net/igc/base/e1000_82543.c:415:
+	if ((frame_len == max_frame_size) && (stats->roc > 0))

CHECK:BRACES: braces {} should be used on all arms of this statement
#5522: FILE: drivers/net/igc/base/e1000_82543.c:1223:
+	if (mac->type == igc_82544)
[...]
+	else {
[...]

CHECK:BRACES: Unbalanced braces around else statement
#5524: FILE: drivers/net/igc/base/e1000_82543.c:1225:
+	else {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->mac.type == igc_82544'
#5728: FILE: drivers/net/igc/base/e1000_82543.c:1429:
+	if ((hw->mac.type == igc_82544) && (offset & 1)) {

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#5886: FILE: drivers/net/igc/base/e1000_82571.c:24:
+STATIC void igc_release_nvm_82571(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#5887: FILE: drivers/net/igc/base/e1000_82571.c:25:
+STATIC s32  igc_write_nvm_82571(struct igc_hw *hw, u16 offset,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#5889: FILE: drivers/net/igc/base/e1000_82571.c:27:
+STATIC s32  igc_update_nvm_checksum_82571(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#5890: FILE: drivers/net/igc/base/e1000_82571.c:28:
+STATIC s32  igc_validate_nvm_checksum_82571(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#5891: FILE: drivers/net/igc/base/e1000_82571.c:29:
+STATIC s32  igc_get_cfg_done_82571(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#5892: FILE: drivers/net/igc/base/e1000_82571.c:30:
+STATIC s32  igc_set_d0_lplu_state_82571(struct igc_hw *hw,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#5894: FILE: drivers/net/igc/base/e1000_82571.c:32:
+STATIC s32  igc_reset_hw_82571(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#5895: FILE: drivers/net/igc/base/e1000_82571.c:33:
+STATIC s32  igc_init_hw_82571(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#5896: FILE: drivers/net/igc/base/e1000_82571.c:34:
+STATIC void igc_clear_vfta_82571(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#5897: FILE: drivers/net/igc/base/e1000_82571.c:35:
+STATIC bool igc_check_mng_mode_82574(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#5898: FILE: drivers/net/igc/base/e1000_82571.c:36:
+STATIC s32 igc_led_on_82574(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#5899: FILE: drivers/net/igc/base/e1000_82571.c:37:
+STATIC s32  igc_setup_link_82571(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#5900: FILE: drivers/net/igc/base/e1000_82571.c:38:
+STATIC s32  igc_setup_copper_link_82571(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#5901: FILE: drivers/net/igc/base/e1000_82571.c:39:
+STATIC s32  igc_check_for_serdes_link_82571(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#5902: FILE: drivers/net/igc/base/e1000_82571.c:40:
+STATIC s32  igc_setup_fiber_serdes_link_82571(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#5903: FILE: drivers/net/igc/base/e1000_82571.c:41:
+STATIC s32  igc_valid_led_default_82571(struct igc_hw *hw, u16 *data);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#5904: FILE: drivers/net/igc/base/e1000_82571.c:42:
+STATIC void igc_clear_hw_cntrs_82571(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#5905: FILE: drivers/net/igc/base/e1000_82571.c:43:
+STATIC s32  igc_get_hw_semaphore_82571(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#5906: FILE: drivers/net/igc/base/e1000_82571.c:44:
+STATIC s32  igc_fix_nvm_checksum_82571(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#5907: FILE: drivers/net/igc/base/e1000_82571.c:45:
+STATIC s32  igc_get_phy_id_82571(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#5908: FILE: drivers/net/igc/base/e1000_82571.c:46:
+STATIC void igc_put_hw_semaphore_82571(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#5909: FILE: drivers/net/igc/base/e1000_82571.c:47:
+STATIC void igc_put_hw_semaphore_82573(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#5910: FILE: drivers/net/igc/base/e1000_82571.c:48:
+STATIC s32  igc_get_hw_semaphore_82574(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#5911: FILE: drivers/net/igc/base/e1000_82571.c:49:
+STATIC void igc_put_hw_semaphore_82574(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#5912: FILE: drivers/net/igc/base/e1000_82571.c:50:
+STATIC s32  igc_set_d0_lplu_state_82574(struct igc_hw *hw,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#5914: FILE: drivers/net/igc/base/e1000_82571.c:52:
+STATIC s32  igc_set_d3_lplu_state_82574(struct igc_hw *hw,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#5916: FILE: drivers/net/igc/base/e1000_82571.c:54:
+STATIC void igc_initialize_hw_bits_82571(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#5917: FILE: drivers/net/igc/base/e1000_82571.c:55:
+STATIC s32  igc_write_nvm_eewr_82571(struct igc_hw *hw, u16 offset,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#5919: FILE: drivers/net/igc/base/e1000_82571.c:57:
+STATIC s32  igc_read_mac_addr_82571(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#5920: FILE: drivers/net/igc/base/e1000_82571.c:58:
+STATIC void igc_power_down_phy_copper_82571(struct igc_hw *hw);

WARNING:UNNECESSARY_BREAK: break is not useful after a goto or return
#5996: FILE: drivers/net/igc/base/e1000_82571.c:134:
+		return -IGC_ERR_PHY;
+		break;

WARNING:TYPO_SPELLING: 'acess' may be misspelled - perhaps 'access'?
#6231: FILE: drivers/net/igc/base/e1000_82571.c:369:
+	 * first NVM or PHY acess. This should be done for single-port

WARNING:UNNECESSARY_BREAK: break is not useful after a goto or return
#6316: FILE: drivers/net/igc/base/e1000_82571.c:454:
+		return igc_get_phy_id(hw);
+		break;

WARNING:UNNECESSARY_BREAK: break is not useful after a goto or return
#6334: FILE: drivers/net/igc/base/e1000_82571.c:472:
+		return -IGC_ERR_PHY;
+		break;

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'offset >= nvm->word_size'
#6755: FILE: drivers/net/igc/base/e1000_82571.c:893:
+	if ((offset >= nvm->word_size) || (words > (nvm->word_size - offset)) ||
+	    (words == 0)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'words == 0'
#6755: FILE: drivers/net/igc/base/e1000_82571.c:893:
+	if ((offset >= nvm->word_size) || (words > (nvm->word_size - offset)) ||
+	    (words == 0)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->mac.type == igc_82571'
#7188: FILE: drivers/net/igc/base/e1000_82571.c:1326:
+	if ((hw->mac.type == igc_82571) ||
+	   (hw->mac.type == igc_82572)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->mac.type == igc_82572'
#7188: FILE: drivers/net/igc/base/e1000_82571.c:1326:
+	if ((hw->mac.type == igc_82571) ||
+	   (hw->mac.type == igc_82572)) {

WARNING:RETURN_VOID: void function return statements are not generally useful
#7227: FILE: drivers/net/igc/base/e1000_82571.c:1365:
+	return;
+}

WARNING:UNNECESSARY_BREAK: break is not useful after a goto or return
#7424: FILE: drivers/net/igc/base/e1000_82571.c:1562:
+		return -IGC_ERR_PHY;
+		break;

WARNING:RETURN_VOID: void function return statements are not generally useful
#7715: FILE: drivers/net/igc/base/e1000_82571.c:1853:
+	return;
+}

WARNING:RETURN_VOID: void function return statements are not generally useful
#7815: FILE: drivers/net/igc/base/e1000_82571.c:1953:
+	return;
+}

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7931: FILE: drivers/net/igc/base/e1000_82575.c:20:
+STATIC s32  igc_init_mac_params_82575(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7932: FILE: drivers/net/igc/base/e1000_82575.c:21:
+STATIC s32  igc_acquire_nvm_82575(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7933: FILE: drivers/net/igc/base/e1000_82575.c:22:
+STATIC void igc_release_nvm_82575(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7934: FILE: drivers/net/igc/base/e1000_82575.c:23:
+STATIC s32  igc_check_for_link_82575(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7935: FILE: drivers/net/igc/base/e1000_82575.c:24:
+STATIC s32  igc_check_for_link_media_swap(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7936: FILE: drivers/net/igc/base/e1000_82575.c:25:
+STATIC s32  igc_get_cfg_done_82575(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7937: FILE: drivers/net/igc/base/e1000_82575.c:26:
+STATIC s32  igc_get_link_up_info_82575(struct igc_hw *hw, u16 *speed,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7939: FILE: drivers/net/igc/base/e1000_82575.c:28:
+STATIC s32  igc_phy_hw_reset_sgmii_82575(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7940: FILE: drivers/net/igc/base/e1000_82575.c:29:
+STATIC s32  igc_read_phy_reg_sgmii_82575(struct igc_hw *hw, u32 offset,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7942: FILE: drivers/net/igc/base/e1000_82575.c:31:
+STATIC s32  igc_reset_hw_82575(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7943: FILE: drivers/net/igc/base/e1000_82575.c:32:
+STATIC s32 igc_init_hw_82575(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7944: FILE: drivers/net/igc/base/e1000_82575.c:33:
+STATIC s32  igc_reset_hw_82580(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7945: FILE: drivers/net/igc/base/e1000_82575.c:34:
+STATIC s32  igc_read_phy_reg_82580(struct igc_hw *hw,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7947: FILE: drivers/net/igc/base/e1000_82575.c:36:
+STATIC s32  igc_write_phy_reg_82580(struct igc_hw *hw,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7949: FILE: drivers/net/igc/base/e1000_82575.c:38:
+STATIC s32  igc_set_d0_lplu_state_82580(struct igc_hw *hw,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7951: FILE: drivers/net/igc/base/e1000_82575.c:40:
+STATIC s32  igc_set_d3_lplu_state_82580(struct igc_hw *hw,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7953: FILE: drivers/net/igc/base/e1000_82575.c:42:
+STATIC s32  igc_set_d0_lplu_state_82575(struct igc_hw *hw,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7955: FILE: drivers/net/igc/base/e1000_82575.c:44:
+STATIC s32  igc_setup_copper_link_82575(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7956: FILE: drivers/net/igc/base/e1000_82575.c:45:
+STATIC s32  igc_setup_serdes_link_82575(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7957: FILE: drivers/net/igc/base/e1000_82575.c:46:
+STATIC s32  igc_get_media_type_82575(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7958: FILE: drivers/net/igc/base/e1000_82575.c:47:
+STATIC s32  igc_set_sfp_media_type_82575(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7959: FILE: drivers/net/igc/base/e1000_82575.c:48:
+STATIC s32  igc_valid_led_default_82575(struct igc_hw *hw, u16 *data);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7960: FILE: drivers/net/igc/base/e1000_82575.c:49:
+STATIC s32  igc_write_phy_reg_sgmii_82575(struct igc_hw *hw,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7962: FILE: drivers/net/igc/base/e1000_82575.c:51:
+STATIC void igc_clear_hw_cntrs_82575(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7963: FILE: drivers/net/igc/base/e1000_82575.c:52:
+STATIC s32  igc_acquire_swfw_sync_82575(struct igc_hw *hw, u16 mask);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7964: FILE: drivers/net/igc/base/e1000_82575.c:53:
+STATIC s32  igc_get_pcs_speed_and_duplex_82575(struct igc_hw *hw,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7966: FILE: drivers/net/igc/base/e1000_82575.c:55:
+STATIC s32  igc_get_phy_id_82575(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7967: FILE: drivers/net/igc/base/e1000_82575.c:56:
+STATIC void igc_release_swfw_sync_82575(struct igc_hw *hw, u16 mask);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7968: FILE: drivers/net/igc/base/e1000_82575.c:57:
+STATIC bool igc_sgmii_active_82575(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7969: FILE: drivers/net/igc/base/e1000_82575.c:58:
+STATIC s32  igc_read_mac_addr_82575(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7970: FILE: drivers/net/igc/base/e1000_82575.c:59:
+STATIC void igc_config_collision_dist_82575(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7971: FILE: drivers/net/igc/base/e1000_82575.c:60:
+STATIC void igc_shutdown_serdes_link_82575(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7972: FILE: drivers/net/igc/base/e1000_82575.c:61:
+STATIC void igc_power_up_serdes_link_82575(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7973: FILE: drivers/net/igc/base/e1000_82575.c:62:
+STATIC s32 igc_set_pcie_completion_timeout(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7974: FILE: drivers/net/igc/base/e1000_82575.c:63:
+STATIC s32 igc_reset_mdicnfg_82580(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7975: FILE: drivers/net/igc/base/e1000_82575.c:64:
+STATIC s32 igc_validate_nvm_checksum_82580(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7976: FILE: drivers/net/igc/base/e1000_82575.c:65:
+STATIC s32 igc_update_nvm_checksum_82580(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7977: FILE: drivers/net/igc/base/e1000_82575.c:66:
+STATIC s32 igc_update_nvm_checksum_with_offset(struct igc_hw *hw,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7979: FILE: drivers/net/igc/base/e1000_82575.c:68:
+STATIC s32 igc_validate_nvm_checksum_with_offset(struct igc_hw *hw,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7981: FILE: drivers/net/igc/base/e1000_82575.c:70:
+STATIC s32 igc_validate_nvm_checksum_i350(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7982: FILE: drivers/net/igc/base/e1000_82575.c:71:
+STATIC s32 igc_update_nvm_checksum_i350(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7983: FILE: drivers/net/igc/base/e1000_82575.c:72:
+STATIC void igc_clear_vfta_i350(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7985: FILE: drivers/net/igc/base/e1000_82575.c:74:
+STATIC void igc_i2c_start(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7986: FILE: drivers/net/igc/base/e1000_82575.c:75:
+STATIC void igc_i2c_stop(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7987: FILE: drivers/net/igc/base/e1000_82575.c:76:
+STATIC void igc_clock_in_i2c_byte(struct igc_hw *hw, u8 *data);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7988: FILE: drivers/net/igc/base/e1000_82575.c:77:
+STATIC s32 igc_clock_out_i2c_byte(struct igc_hw *hw, u8 data);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7989: FILE: drivers/net/igc/base/e1000_82575.c:78:
+STATIC s32 igc_get_i2c_ack(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7990: FILE: drivers/net/igc/base/e1000_82575.c:79:
+STATIC void igc_clock_in_i2c_bit(struct igc_hw *hw, bool *data);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7991: FILE: drivers/net/igc/base/e1000_82575.c:80:
+STATIC s32 igc_clock_out_i2c_bit(struct igc_hw *hw, bool data);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7992: FILE: drivers/net/igc/base/e1000_82575.c:81:
+STATIC void igc_raise_i2c_clk(struct igc_hw *hw, u32 *i2cctl);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7993: FILE: drivers/net/igc/base/e1000_82575.c:82:
+STATIC void igc_lower_i2c_clk(struct igc_hw *hw, u32 *i2cctl);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7994: FILE: drivers/net/igc/base/e1000_82575.c:83:
+STATIC s32 igc_set_i2c_data(struct igc_hw *hw, u32 *i2cctl, bool data);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#7995: FILE: drivers/net/igc/base/e1000_82575.c:84:
+STATIC bool igc_get_i2c_data(u32 *i2cctl);

WARNING:UNNECESSARY_BREAK: break is not useful after a goto or return
#8543: FILE: drivers/net/igc/base/e1000_82575.c:632:
+			goto out;
+			break;

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->phy.type == igc_phy_igp_3'
#8989: FILE: drivers/net/igc/base/e1000_82575.c:1078:
+	if (!(IGC_READ_REG(hw, IGC_EECD) & IGC_EECD_PRES) &&
+	    (hw->phy.type == igc_phy_igp_3))

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->dev_spec._82575.media_port != port'
#9103: FILE: drivers/net/igc/base/e1000_82575.c:1192:
+	if (port && (hw->dev_spec._82575.media_port != port)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->phy.media_type != igc_media_type_internal_serdes'
#9135: FILE: drivers/net/igc/base/e1000_82575.c:1224:
+	if ((hw->phy.media_type != igc_media_type_internal_serdes) &&
+	    !igc_sgmii_active_82575(hw))

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->phy.media_type != igc_media_type_internal_serdes'
#9233: FILE: drivers/net/igc/base/e1000_82575.c:1322:
+	if ((hw->phy.media_type != igc_media_type_internal_serdes) &&
+	    !igc_sgmii_active_82575(hw))

WARNING:RETURN_VOID: void function return statements are not generally useful
#9254: FILE: drivers/net/igc/base/e1000_82575.c:1343:
+	return;
+}

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->phy.media_type != igc_media_type_internal_serdes'
#9468: FILE: drivers/net/igc/base/e1000_82575.c:1557:
+	if ((hw->phy.media_type != igc_media_type_internal_serdes) &&
+	    !igc_sgmii_active_82575(hw))

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'ret_val != IGC_SUCCESS'
#9637: FILE: drivers/net/igc/base/e1000_82575.c:1726:
+		if ((ret_val != IGC_SUCCESS) ||
+		    (hw->phy.media_type == igc_media_type_unknown)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->phy.media_type == igc_media_type_unknown'
#9637: FILE: drivers/net/igc/base/e1000_82575.c:1726:
+		if ((ret_val != IGC_SUCCESS) ||
+		    (hw->phy.media_type == igc_media_type_unknown)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'tranceiver_type == IGC_SFF_IDENTIFIER_SFP'
#9716: FILE: drivers/net/igc/base/e1000_82575.c:1805:
+	if ((tranceiver_type == IGC_SFF_IDENTIFIER_SFP) ||
+	    (tranceiver_type == IGC_SFF_IDENTIFIER_SFF)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'tranceiver_type == IGC_SFF_IDENTIFIER_SFF'
#9716: FILE: drivers/net/igc/base/e1000_82575.c:1805:
+	if ((tranceiver_type == IGC_SFF_IDENTIFIER_SFP) ||
+	    (tranceiver_type == IGC_SFF_IDENTIFIER_SFF)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->phy.media_type == igc_media_type_internal_serdes'
#9936: FILE: drivers/net/igc/base/e1000_82575.c:2025:
+	if ((hw->phy.media_type == igc_media_type_internal_serdes) ||
+	    igc_sgmii_active_82575(hw))

CHECK:BRACES: Blank lines aren't necessary before a close brace '}'
#10066: FILE: drivers/net/igc/base/e1000_82575.c:2155:
+
+}

WARNING:SUSPECT_CODE_INDENT: suspect code indent for conditional statements (8, 24)
#10222: FILE: drivers/net/igc/base/e1000_82575.c:2311:
+	if (global_device_reset && hw->mac.ops.acquire_swfw_sync(hw,
[...]
+			global_device_reset = false;

CHECK:SPACING: No space is necessary after a cast
#10322: FILE: drivers/net/igc/base/e1000_82575.c:2411:
+	if (checksum != (u16) NVM_SUM) {

CHECK:SPACING: No space is necessary after a cast
#10358: FILE: drivers/net/igc/base/e1000_82575.c:2447:
+	checksum = (u16) NVM_SUM - checksum;

WARNING:BLOCK_COMMENT_STYLE: Block comments use a trailing */ on a separate line
#10393: FILE: drivers/net/igc/base/e1000_82575.c:2482:
+		 * for all 4 ports. */

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->mac.type < igc_i350'
#10750: FILE: drivers/net/igc/base/e1000_82575.c:2839:
+	if ((hw->mac.type < igc_i350) ||
+	    (hw->phy.media_type != igc_media_type_copper))

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->phy.media_type != igc_media_type_copper'
#10750: FILE: drivers/net/igc/base/e1000_82575.c:2839:
+	if ((hw->mac.type < igc_i350) ||
+	    (hw->phy.media_type != igc_media_type_copper))

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->phy.media_type != igc_media_type_copper'
#10807: FILE: drivers/net/igc/base/e1000_82575.c:2896:
+	if ((hw->phy.media_type != igc_media_type_copper) ||
+	    ((phy->id != M88E1543_E_PHY_ID) &&
+	    (phy->id != M88E1512_E_PHY_ID)))

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'phy->id != M88E1543_E_PHY_ID'
#10807: FILE: drivers/net/igc/base/e1000_82575.c:2896:
+	if ((hw->phy.media_type != igc_media_type_copper) ||
+	    ((phy->id != M88E1543_E_PHY_ID) &&
+	    (phy->id != M88E1512_E_PHY_ID)))

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'phy->id != M88E1512_E_PHY_ID'
#10807: FILE: drivers/net/igc/base/e1000_82575.c:2896:
+	if ((hw->phy.media_type != igc_media_type_copper) ||
+	    ((phy->id != M88E1543_E_PHY_ID) &&
+	    (phy->id != M88E1512_E_PHY_ID)))

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->phy.media_type != igc_media_type_copper'
#10890: FILE: drivers/net/igc/base/e1000_82575.c:2979:
+	if ((hw->phy.media_type != igc_media_type_copper) ||
+	    ((phy->id != M88E1543_E_PHY_ID) &&
+	    (phy->id != M88E1512_E_PHY_ID)))

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'phy->id != M88E1543_E_PHY_ID'
#10890: FILE: drivers/net/igc/base/e1000_82575.c:2979:
+	if ((hw->phy.media_type != igc_media_type_copper) ||
+	    ((phy->id != M88E1543_E_PHY_ID) &&
+	    (phy->id != M88E1512_E_PHY_ID)))

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'phy->id != M88E1512_E_PHY_ID'
#10890: FILE: drivers/net/igc/base/e1000_82575.c:2979:
+	if ((hw->phy.media_type != igc_media_type_copper) ||
+	    ((phy->id != M88E1543_E_PHY_ID) &&
+	    (phy->id != M88E1512_E_PHY_ID)))

CHECK:BRACES: Blank lines aren't necessary before a close brace '}'
#11177: FILE: drivers/net/igc/base/e1000_82575.c:3266:
+
+}

CHECK:BRACES: Blank lines aren't necessary after an open brace '{'
#11394: FILE: drivers/net/igc/base/e1000_82575.c:3483:
+{
+

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#11854: FILE: drivers/net/igc/base/e1000_82575.h:351:
+void igc_vfta_set_vf(struct igc_hw *, u16, bool);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#11854: FILE: drivers/net/igc/base/e1000_82575.h:351:
+void igc_vfta_set_vf(struct igc_hw *, u16, bool);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'bool' should also have an identifier name
#11854: FILE: drivers/net/igc/base/e1000_82575.h:351:
+void igc_vfta_set_vf(struct igc_hw *, u16, bool);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#11855: FILE: drivers/net/igc/base/e1000_82575.h:352:
+void igc_rlpml_set_vf(struct igc_hw *, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#11855: FILE: drivers/net/igc/base/e1000_82575.h:352:
+void igc_rlpml_set_vf(struct igc_hw *, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#11856: FILE: drivers/net/igc/base/e1000_82575.h:353:
+s32 igc_promisc_set_vf(struct igc_hw *, enum igc_promisc_type type);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#11862: FILE: drivers/net/igc/base/e1000_82575.h:359:
+s32 igc_get_eee_status_i354(struct igc_hw *, bool *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'bool *' should also have an identifier name
#11862: FILE: drivers/net/igc/base/e1000_82575.h:359:
+s32 igc_get_eee_status_i354(struct igc_hw *, bool *);

CHECK:AVOID_EXTERNS: extern prototypes should be avoided in .h files
#13275: FILE: drivers/net/igc/base/e1000_api.h:10:
+extern void igc_init_function_pointers_82542(struct igc_hw *hw);

CHECK:AVOID_EXTERNS: extern prototypes should be avoided in .h files
#13276: FILE: drivers/net/igc/base/e1000_api.h:11:
+extern void igc_init_function_pointers_82543(struct igc_hw *hw);

CHECK:AVOID_EXTERNS: extern prototypes should be avoided in .h files
#13277: FILE: drivers/net/igc/base/e1000_api.h:12:
+extern void igc_init_function_pointers_82540(struct igc_hw *hw);

CHECK:AVOID_EXTERNS: extern prototypes should be avoided in .h files
#13278: FILE: drivers/net/igc/base/e1000_api.h:13:
+extern void igc_init_function_pointers_82571(struct igc_hw *hw);

CHECK:AVOID_EXTERNS: extern prototypes should be avoided in .h files
#13279: FILE: drivers/net/igc/base/e1000_api.h:14:
+extern void igc_init_function_pointers_82541(struct igc_hw *hw);

CHECK:AVOID_EXTERNS: extern prototypes should be avoided in .h files
#13280: FILE: drivers/net/igc/base/e1000_api.h:15:
+extern void igc_init_function_pointers_80003es2lan(struct igc_hw *hw);

CHECK:AVOID_EXTERNS: extern prototypes should be avoided in .h files
#13281: FILE: drivers/net/igc/base/e1000_api.h:16:
+extern void igc_init_function_pointers_ich8lan(struct igc_hw *hw);

CHECK:AVOID_EXTERNS: extern prototypes should be avoided in .h files
#13282: FILE: drivers/net/igc/base/e1000_api.h:17:
+extern void igc_init_function_pointers_82575(struct igc_hw *hw);

CHECK:AVOID_EXTERNS: extern prototypes should be avoided in .h files
#13283: FILE: drivers/net/igc/base/e1000_api.h:18:
+extern void igc_init_function_pointers_vf(struct igc_hw *hw);

CHECK:AVOID_EXTERNS: extern prototypes should be avoided in .h files
#13284: FILE: drivers/net/igc/base/e1000_api.h:19:
+extern void igc_power_up_fiber_serdes_link(struct igc_hw *hw);

CHECK:AVOID_EXTERNS: extern prototypes should be avoided in .h files
#13285: FILE: drivers/net/igc/base/e1000_api.h:20:
+extern void igc_shutdown_fiber_serdes_link(struct igc_hw *hw);

CHECK:AVOID_EXTERNS: extern prototypes should be avoided in .h files
#13286: FILE: drivers/net/igc/base/e1000_api.h:21:
+extern void igc_init_function_pointers_i210(struct igc_hw *hw);

CHECK:AVOID_EXTERNS: extern prototypes should be avoided in .h files
#13287: FILE: drivers/net/igc/base/e1000_api.h:22:
+extern void igc_init_function_pointers_i225(struct igc_hw *hw);

CHECK:MACRO_ARG_REUSE: Macro argument reuse 'length' - possible side-effects?
#13390: FILE: drivers/net/igc/base/e1000_api.h:125:
+#define TBI_ACCEPT(a, status, errors, length, last_byte, \
+		   min_frame_size, max_frame_size) \
+	(igc_tbi_sbp_enabled_82543(a) && \
+	 (((errors) & IGC_RXD_ERR_FRAME_ERR_MASK) == IGC_RXD_ERR_CE) && \
+	 ((last_byte) == CARRIER_EXTENSION) && \
+	 (((status) & IGC_RXD_STAT_VP) ? \
+	  (((length) > ((min_frame_size) - VLAN_TAG_SIZE)) && \
+	  ((length) <= ((max_frame_size) + 1))) : \
+	  (((length) > (min_frame_size)) && \
+	  ((length) <= ((max_frame_size) + VLAN_TAG_SIZE + 1)))))

CHECK:MACRO_ARG_REUSE: Macro argument reuse 'min_frame_size' - possible side-effects?
#13390: FILE: drivers/net/igc/base/e1000_api.h:125:
+#define TBI_ACCEPT(a, status, errors, length, last_byte, \
+		   min_frame_size, max_frame_size) \
+	(igc_tbi_sbp_enabled_82543(a) && \
+	 (((errors) & IGC_RXD_ERR_FRAME_ERR_MASK) == IGC_RXD_ERR_CE) && \
+	 ((last_byte) == CARRIER_EXTENSION) && \
+	 (((status) & IGC_RXD_STAT_VP) ? \
+	  (((length) > ((min_frame_size) - VLAN_TAG_SIZE)) && \
+	  ((length) <= ((max_frame_size) + 1))) : \
+	  (((length) > (min_frame_size)) && \
+	  ((length) <= ((max_frame_size) + VLAN_TAG_SIZE + 1)))))

CHECK:MACRO_ARG_REUSE: Macro argument reuse 'max_frame_size' - possible side-effects?
#13390: FILE: drivers/net/igc/base/e1000_api.h:125:
+#define TBI_ACCEPT(a, status, errors, length, last_byte, \
+		   min_frame_size, max_frame_size) \
+	(igc_tbi_sbp_enabled_82543(a) && \
+	 (((errors) & IGC_RXD_ERR_FRAME_ERR_MASK) == IGC_RXD_ERR_CE) && \
+	 ((last_byte) == CARRIER_EXTENSION) && \
+	 (((status) & IGC_RXD_STAT_VP) ? \
+	  (((length) > ((min_frame_size) - VLAN_TAG_SIZE)) && \
+	  ((length) <= ((max_frame_size) + 1))) : \
+	  (((length) > (min_frame_size)) && \
+	  ((length) <= ((max_frame_size) + VLAN_TAG_SIZE + 1)))))

CHECK:MACRO_ARG_REUSE: Macro argument reuse 'a' - possible side-effects?
#13401: FILE: drivers/net/igc/base/e1000_api.h:136:
+#define IGC_MAX(a, b) ((a) > (b) ? (a) : (b))

CHECK:MACRO_ARG_REUSE: Macro argument reuse 'b' - possible side-effects?
#13401: FILE: drivers/net/igc/base/e1000_api.h:136:
+#define IGC_MAX(a, b) ((a) > (b) ? (a) : (b))

CHECK:MACRO_ARG_REUSE: Macro argument reuse 'b' - possible side-effects?
#13402: FILE: drivers/net/igc/base/e1000_api.h:137:
+#define IGC_DIVIDE_ROUND_UP(a, b)	(((a) + (b) - 1) / (b)) /* ceil(a/b) */

WARNING:RETURN_VOID: void function return statements are not generally useful
#13524: FILE: drivers/net/igc/base/e1000_base.c:115:
+	return;
+}

CHECK:AVOID_EXTERNS: extern prototypes should be avoided in .h files
#13619: FILE: drivers/net/igc/base/e1000_base.h:11:
+extern void igc_rx_fifo_flush_base(struct igc_hw *hw);

CHECK:MACRO_ARG_REUSE: Macro argument reuse 'a' - possible side-effects?
#14950: FILE: drivers/net/igc/base/e1000_defines.h:1209:
+#define NVM_82580_LAN_FUNC_OFFSET(a)	((a) ? (0x40 + (0x40 * (a))) : 0)

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16078: FILE: drivers/net/igc/base/e1000_hw.h:687:
+	s32  (*init_params)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16079: FILE: drivers/net/igc/base/e1000_hw.h:688:
+	s32  (*id_led_init)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16080: FILE: drivers/net/igc/base/e1000_hw.h:689:
+	s32  (*blink_led)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16081: FILE: drivers/net/igc/base/e1000_hw.h:690:
+	bool (*check_mng_mode)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16082: FILE: drivers/net/igc/base/e1000_hw.h:691:
+	s32  (*check_for_link)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16083: FILE: drivers/net/igc/base/e1000_hw.h:692:
+	s32  (*cleanup_led)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16084: FILE: drivers/net/igc/base/e1000_hw.h:693:
+	void (*clear_hw_cntrs)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16085: FILE: drivers/net/igc/base/e1000_hw.h:694:
+	void (*clear_vfta)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16086: FILE: drivers/net/igc/base/e1000_hw.h:695:
+	s32  (*get_bus_info)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16087: FILE: drivers/net/igc/base/e1000_hw.h:696:
+	void (*set_lan_id)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16088: FILE: drivers/net/igc/base/e1000_hw.h:697:
+	s32  (*get_link_up_info)(struct igc_hw *, u16 *, u16 *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16 *' should also have an identifier name
#16088: FILE: drivers/net/igc/base/e1000_hw.h:697:
+	s32  (*get_link_up_info)(struct igc_hw *, u16 *, u16 *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16 *' should also have an identifier name
#16088: FILE: drivers/net/igc/base/e1000_hw.h:697:
+	s32  (*get_link_up_info)(struct igc_hw *, u16 *, u16 *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16089: FILE: drivers/net/igc/base/e1000_hw.h:698:
+	s32  (*led_on)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16090: FILE: drivers/net/igc/base/e1000_hw.h:699:
+	s32  (*led_off)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16091: FILE: drivers/net/igc/base/e1000_hw.h:700:
+	void (*update_mc_addr_list)(struct igc_hw *, u8 *, u32);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u8 *' should also have an identifier name
#16091: FILE: drivers/net/igc/base/e1000_hw.h:700:
+	void (*update_mc_addr_list)(struct igc_hw *, u8 *, u32);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u32' should also have an identifier name
#16091: FILE: drivers/net/igc/base/e1000_hw.h:700:
+	void (*update_mc_addr_list)(struct igc_hw *, u8 *, u32);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16092: FILE: drivers/net/igc/base/e1000_hw.h:701:
+	s32  (*reset_hw)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16093: FILE: drivers/net/igc/base/e1000_hw.h:702:
+	s32  (*init_hw)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16094: FILE: drivers/net/igc/base/e1000_hw.h:703:
+	void (*shutdown_serdes)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16095: FILE: drivers/net/igc/base/e1000_hw.h:704:
+	void (*power_up_serdes)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16096: FILE: drivers/net/igc/base/e1000_hw.h:705:
+	s32  (*setup_link)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16097: FILE: drivers/net/igc/base/e1000_hw.h:706:
+	s32  (*setup_physical_interface)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16098: FILE: drivers/net/igc/base/e1000_hw.h:707:
+	s32  (*setup_led)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16099: FILE: drivers/net/igc/base/e1000_hw.h:708:
+	void (*write_vfta)(struct igc_hw *, u32, u32);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u32' should also have an identifier name
#16099: FILE: drivers/net/igc/base/e1000_hw.h:708:
+	void (*write_vfta)(struct igc_hw *, u32, u32);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u32' should also have an identifier name
#16099: FILE: drivers/net/igc/base/e1000_hw.h:708:
+	void (*write_vfta)(struct igc_hw *, u32, u32);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16100: FILE: drivers/net/igc/base/e1000_hw.h:709:
+	void (*config_collision_dist)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16101: FILE: drivers/net/igc/base/e1000_hw.h:710:
+	int  (*rar_set)(struct igc_hw *, u8*, u32);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u8*' should also have an identifier name
#16101: FILE: drivers/net/igc/base/e1000_hw.h:710:
+	int  (*rar_set)(struct igc_hw *, u8*, u32);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u32' should also have an identifier name
#16101: FILE: drivers/net/igc/base/e1000_hw.h:710:
+	int  (*rar_set)(struct igc_hw *, u8*, u32);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16102: FILE: drivers/net/igc/base/e1000_hw.h:711:
+	s32  (*read_mac_addr)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16103: FILE: drivers/net/igc/base/e1000_hw.h:712:
+	s32  (*validate_mdi_setting)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16104: FILE: drivers/net/igc/base/e1000_hw.h:713:
+	s32  (*acquire_swfw_sync)(struct igc_hw *, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#16104: FILE: drivers/net/igc/base/e1000_hw.h:713:
+	s32  (*acquire_swfw_sync)(struct igc_hw *, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16105: FILE: drivers/net/igc/base/e1000_hw.h:714:
+	void (*release_swfw_sync)(struct igc_hw *, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#16105: FILE: drivers/net/igc/base/e1000_hw.h:714:
+	void (*release_swfw_sync)(struct igc_hw *, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16123: FILE: drivers/net/igc/base/e1000_hw.h:732:
+	s32  (*init_params)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16124: FILE: drivers/net/igc/base/e1000_hw.h:733:
+	s32  (*acquire)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16125: FILE: drivers/net/igc/base/e1000_hw.h:734:
+	s32  (*cfg_on_link_up)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16126: FILE: drivers/net/igc/base/e1000_hw.h:735:
+	s32  (*check_polarity)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16127: FILE: drivers/net/igc/base/e1000_hw.h:736:
+	s32  (*check_reset_block)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16128: FILE: drivers/net/igc/base/e1000_hw.h:737:
+	s32  (*commit)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16129: FILE: drivers/net/igc/base/e1000_hw.h:738:
+	s32  (*force_speed_duplex)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16131: FILE: drivers/net/igc/base/e1000_hw.h:740:
+	s32  (*get_cable_length)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16132: FILE: drivers/net/igc/base/e1000_hw.h:741:
+	s32  (*get_info)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16133: FILE: drivers/net/igc/base/e1000_hw.h:742:
+	s32  (*set_page)(struct igc_hw *, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#16133: FILE: drivers/net/igc/base/e1000_hw.h:742:
+	s32  (*set_page)(struct igc_hw *, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16134: FILE: drivers/net/igc/base/e1000_hw.h:743:
+	s32  (*read_reg)(struct igc_hw *, u32, u16 *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u32' should also have an identifier name
#16134: FILE: drivers/net/igc/base/e1000_hw.h:743:
+	s32  (*read_reg)(struct igc_hw *, u32, u16 *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16 *' should also have an identifier name
#16134: FILE: drivers/net/igc/base/e1000_hw.h:743:
+	s32  (*read_reg)(struct igc_hw *, u32, u16 *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16135: FILE: drivers/net/igc/base/e1000_hw.h:744:
+	s32  (*read_reg_locked)(struct igc_hw *, u32, u16 *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u32' should also have an identifier name
#16135: FILE: drivers/net/igc/base/e1000_hw.h:744:
+	s32  (*read_reg_locked)(struct igc_hw *, u32, u16 *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16 *' should also have an identifier name
#16135: FILE: drivers/net/igc/base/e1000_hw.h:744:
+	s32  (*read_reg_locked)(struct igc_hw *, u32, u16 *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16136: FILE: drivers/net/igc/base/e1000_hw.h:745:
+	s32  (*read_reg_page)(struct igc_hw *, u32, u16 *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u32' should also have an identifier name
#16136: FILE: drivers/net/igc/base/e1000_hw.h:745:
+	s32  (*read_reg_page)(struct igc_hw *, u32, u16 *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16 *' should also have an identifier name
#16136: FILE: drivers/net/igc/base/e1000_hw.h:745:
+	s32  (*read_reg_page)(struct igc_hw *, u32, u16 *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16137: FILE: drivers/net/igc/base/e1000_hw.h:746:
+	void (*release)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16138: FILE: drivers/net/igc/base/e1000_hw.h:747:
+	s32  (*reset)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16139: FILE: drivers/net/igc/base/e1000_hw.h:748:
+	s32  (*set_d0_lplu_state)(struct igc_hw *, bool);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'bool' should also have an identifier name
#16139: FILE: drivers/net/igc/base/e1000_hw.h:748:
+	s32  (*set_d0_lplu_state)(struct igc_hw *, bool);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16140: FILE: drivers/net/igc/base/e1000_hw.h:749:
+	s32  (*set_d3_lplu_state)(struct igc_hw *, bool);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'bool' should also have an identifier name
#16140: FILE: drivers/net/igc/base/e1000_hw.h:749:
+	s32  (*set_d3_lplu_state)(struct igc_hw *, bool);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16141: FILE: drivers/net/igc/base/e1000_hw.h:750:
+	s32  (*write_reg)(struct igc_hw *, u32, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u32' should also have an identifier name
#16141: FILE: drivers/net/igc/base/e1000_hw.h:750:
+	s32  (*write_reg)(struct igc_hw *, u32, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#16141: FILE: drivers/net/igc/base/e1000_hw.h:750:
+	s32  (*write_reg)(struct igc_hw *, u32, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16142: FILE: drivers/net/igc/base/e1000_hw.h:751:
+	s32  (*write_reg_locked)(struct igc_hw *, u32, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u32' should also have an identifier name
#16142: FILE: drivers/net/igc/base/e1000_hw.h:751:
+	s32  (*write_reg_locked)(struct igc_hw *, u32, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#16142: FILE: drivers/net/igc/base/e1000_hw.h:751:
+	s32  (*write_reg_locked)(struct igc_hw *, u32, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16143: FILE: drivers/net/igc/base/e1000_hw.h:752:
+	s32  (*write_reg_page)(struct igc_hw *, u32, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u32' should also have an identifier name
#16143: FILE: drivers/net/igc/base/e1000_hw.h:752:
+	s32  (*write_reg_page)(struct igc_hw *, u32, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#16143: FILE: drivers/net/igc/base/e1000_hw.h:752:
+	s32  (*write_reg_page)(struct igc_hw *, u32, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16144: FILE: drivers/net/igc/base/e1000_hw.h:753:
+	void (*power_up)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16145: FILE: drivers/net/igc/base/e1000_hw.h:754:
+	void (*power_down)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16146: FILE: drivers/net/igc/base/e1000_hw.h:755:
+	s32 (*read_i2c_byte)(struct igc_hw *, u8, u8, u8 *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u8' should also have an identifier name
#16146: FILE: drivers/net/igc/base/e1000_hw.h:755:
+	s32 (*read_i2c_byte)(struct igc_hw *, u8, u8, u8 *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u8' should also have an identifier name
#16146: FILE: drivers/net/igc/base/e1000_hw.h:755:
+	s32 (*read_i2c_byte)(struct igc_hw *, u8, u8, u8 *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u8 *' should also have an identifier name
#16146: FILE: drivers/net/igc/base/e1000_hw.h:755:
+	s32 (*read_i2c_byte)(struct igc_hw *, u8, u8, u8 *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16147: FILE: drivers/net/igc/base/e1000_hw.h:756:
+	s32 (*write_i2c_byte)(struct igc_hw *, u8, u8, u8);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u8' should also have an identifier name
#16147: FILE: drivers/net/igc/base/e1000_hw.h:756:
+	s32 (*write_i2c_byte)(struct igc_hw *, u8, u8, u8);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u8' should also have an identifier name
#16147: FILE: drivers/net/igc/base/e1000_hw.h:756:
+	s32 (*write_i2c_byte)(struct igc_hw *, u8, u8, u8);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u8' should also have an identifier name
#16147: FILE: drivers/net/igc/base/e1000_hw.h:756:
+	s32 (*write_i2c_byte)(struct igc_hw *, u8, u8, u8);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16152: FILE: drivers/net/igc/base/e1000_hw.h:761:
+	s32  (*init_params)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16153: FILE: drivers/net/igc/base/e1000_hw.h:762:
+	s32  (*acquire)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16154: FILE: drivers/net/igc/base/e1000_hw.h:763:
+	s32  (*read)(struct igc_hw *, u16, u16, u16 *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#16154: FILE: drivers/net/igc/base/e1000_hw.h:763:
+	s32  (*read)(struct igc_hw *, u16, u16, u16 *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#16154: FILE: drivers/net/igc/base/e1000_hw.h:763:
+	s32  (*read)(struct igc_hw *, u16, u16, u16 *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16 *' should also have an identifier name
#16154: FILE: drivers/net/igc/base/e1000_hw.h:763:
+	s32  (*read)(struct igc_hw *, u16, u16, u16 *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16155: FILE: drivers/net/igc/base/e1000_hw.h:764:
+	void (*release)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16156: FILE: drivers/net/igc/base/e1000_hw.h:765:
+	void (*reload)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16157: FILE: drivers/net/igc/base/e1000_hw.h:766:
+	s32  (*update)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16158: FILE: drivers/net/igc/base/e1000_hw.h:767:
+	s32  (*valid_led_default)(struct igc_hw *, u16 *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16 *' should also have an identifier name
#16158: FILE: drivers/net/igc/base/e1000_hw.h:767:
+	s32  (*valid_led_default)(struct igc_hw *, u16 *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16159: FILE: drivers/net/igc/base/e1000_hw.h:768:
+	s32  (*validate)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16160: FILE: drivers/net/igc/base/e1000_hw.h:769:
+	s32  (*write)(struct igc_hw *, u16, u16, u16 *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#16160: FILE: drivers/net/igc/base/e1000_hw.h:769:
+	s32  (*write)(struct igc_hw *, u16, u16, u16 *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#16160: FILE: drivers/net/igc/base/e1000_hw.h:769:
+	s32  (*write)(struct igc_hw *, u16, u16, u16 *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16 *' should also have an identifier name
#16160: FILE: drivers/net/igc/base/e1000_hw.h:769:
+	s32  (*write)(struct igc_hw *, u16, u16, u16 *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16286: FILE: drivers/net/igc/base/e1000_hw.h:895:
+	s32 (*read)(struct igc_hw *, u32 *, u16,  u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u32 *' should also have an identifier name
#16286: FILE: drivers/net/igc/base/e1000_hw.h:895:
+	s32 (*read)(struct igc_hw *, u32 *, u16,  u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#16286: FILE: drivers/net/igc/base/e1000_hw.h:895:
+	s32 (*read)(struct igc_hw *, u32 *, u16,  u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#16286: FILE: drivers/net/igc/base/e1000_hw.h:895:
+	s32 (*read)(struct igc_hw *, u32 *, u16,  u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16287: FILE: drivers/net/igc/base/e1000_hw.h:896:
+	s32 (*write)(struct igc_hw *, u32 *, u16, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u32 *' should also have an identifier name
#16287: FILE: drivers/net/igc/base/e1000_hw.h:896:
+	s32 (*write)(struct igc_hw *, u32 *, u16, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#16287: FILE: drivers/net/igc/base/e1000_hw.h:896:
+	s32 (*write)(struct igc_hw *, u32 *, u16, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#16287: FILE: drivers/net/igc/base/e1000_hw.h:896:
+	s32 (*write)(struct igc_hw *, u32 *, u16, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16288: FILE: drivers/net/igc/base/e1000_hw.h:897:
+	s32 (*read_posted)(struct igc_hw *, u32 *, u16,  u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u32 *' should also have an identifier name
#16288: FILE: drivers/net/igc/base/e1000_hw.h:897:
+	s32 (*read_posted)(struct igc_hw *, u32 *, u16,  u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#16288: FILE: drivers/net/igc/base/e1000_hw.h:897:
+	s32 (*read_posted)(struct igc_hw *, u32 *, u16,  u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#16288: FILE: drivers/net/igc/base/e1000_hw.h:897:
+	s32 (*read_posted)(struct igc_hw *, u32 *, u16,  u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16289: FILE: drivers/net/igc/base/e1000_hw.h:898:
+	s32 (*write_posted)(struct igc_hw *, u32 *, u16, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u32 *' should also have an identifier name
#16289: FILE: drivers/net/igc/base/e1000_hw.h:898:
+	s32 (*write_posted)(struct igc_hw *, u32 *, u16, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#16289: FILE: drivers/net/igc/base/e1000_hw.h:898:
+	s32 (*write_posted)(struct igc_hw *, u32 *, u16, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#16289: FILE: drivers/net/igc/base/e1000_hw.h:898:
+	s32 (*write_posted)(struct igc_hw *, u32 *, u16, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16290: FILE: drivers/net/igc/base/e1000_hw.h:899:
+	s32 (*check_for_msg)(struct igc_hw *, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#16290: FILE: drivers/net/igc/base/e1000_hw.h:899:
+	s32 (*check_for_msg)(struct igc_hw *, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16291: FILE: drivers/net/igc/base/e1000_hw.h:900:
+	s32 (*check_for_ack)(struct igc_hw *, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#16291: FILE: drivers/net/igc/base/e1000_hw.h:900:
+	s32 (*check_for_ack)(struct igc_hw *, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#16292: FILE: drivers/net/igc/base/e1000_hw.h:901:
+	s32 (*check_for_rst)(struct igc_hw *, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#16292: FILE: drivers/net/igc/base/e1000_hw.h:901:
+	s32 (*check_for_rst)(struct igc_hw *, u16);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#16466: FILE: drivers/net/igc/base/e1000_i210.c:9:
+STATIC void igc_release_nvm_i210(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#16467: FILE: drivers/net/igc/base/e1000_i210.c:10:
+STATIC s32 igc_get_hw_semaphore_i210(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#16468: FILE: drivers/net/igc/base/e1000_i210.c:11:
+STATIC s32 igc_write_nvm_srwr(struct igc_hw *hw, u16 offset, u16 words,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#16470: FILE: drivers/net/igc/base/e1000_i210.c:13:
+STATIC s32 igc_pool_flash_update_done_i210(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#16471: FILE: drivers/net/igc/base/e1000_i210.c:14:
+STATIC s32 igc_valid_led_default_i210(struct igc_hw *hw, u16 *data);

WARNING:BLOCK_COMMENT_STYLE: Block comments use a trailing */ on a separate line
#16672: FILE: drivers/net/igc/base/e1000_i210.c:215:
+	 * to read in bursts than synchronizing access for each word. */

WARNING:BLOCK_COMMENT_STYLE: Block comments use a trailing */ on a separate line
#16717: FILE: drivers/net/igc/base/e1000_i210.c:260:
+	 * to write in bursts than synchronizing access for each word. */

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'offset >= nvm->word_size'
#16762: FILE: drivers/net/igc/base/e1000_i210.c:305:
+	if ((offset >= nvm->word_size) || (words > (nvm->word_size - offset)) ||
+	    (words == 0)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'words == 0'
#16762: FILE: drivers/net/igc/base/e1000_i210.c:305:
+	if ((offset >= nvm->word_size) || (words > (nvm->word_size - offset)) ||
+	    (words == 0)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'i == 1'
#16953: FILE: drivers/net/igc/base/e1000_i210.c:496:
+		if ((i == 1) && ((*record & IGC_INVM_VER_FIELD_ONE) == 0)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'i == 1'
#17000: FILE: drivers/net/igc/base/e1000_i210.c:543:
+		if ((i == 1) && ((*record & IGC_INVM_IMGTYPE_FIELD) == 0)) {

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#17028: FILE: drivers/net/igc/base/e1000_i210.c:571:
+	s32 (*read_op_ptr)(struct igc_hw *, u16, u16, u16 *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#17028: FILE: drivers/net/igc/base/e1000_i210.c:571:
+	s32 (*read_op_ptr)(struct igc_hw *, u16, u16, u16 *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#17028: FILE: drivers/net/igc/base/e1000_i210.c:571:
+	s32 (*read_op_ptr)(struct igc_hw *, u16, u16, u16 *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16 *' should also have an identifier name
#17028: FILE: drivers/net/igc/base/e1000_i210.c:571:
+	s32 (*read_op_ptr)(struct igc_hw *, u16, u16, u16 *);

CHECK:BRACES: Blank lines aren't necessary after an open brace '{'
#17033: FILE: drivers/net/igc/base/e1000_i210.c:576:
+	if (hw->nvm.ops.acquire(hw) == IGC_SUCCESS) {
+

CHECK:SPACING: No space is necessary after a cast
#17099: FILE: drivers/net/igc/base/e1000_i210.c:642:
+		checksum = (u16) NVM_SUM - checksum;

WARNING:UNNECESSARY_ELSE: else is not generally useful after a break or return
#17312: FILE: drivers/net/igc/base/e1000_i210.c:855:
+			break;
+		} else {

CHECK:SPACING: spaces preferred around that '|' (ctx:VxV)
#17317: FILE: drivers/net/igc/base/e1000_i210.c:860:
+		IGC_WRITE_REG(hw, IGC_CTRL, ctrl|IGC_CTRL_PHY_RST);
 		                                ^

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->mac.type >= igc_i210'
#17387: FILE: drivers/net/igc/base/e1000_i210.c:930:
+	if ((hw->mac.type >= igc_i210) &&
+	    !(igc_get_flash_presence_i210(hw))) {

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#17497: FILE: drivers/net/igc/base/e1000_i225.c:8:
+STATIC s32 igc_init_mac_params_i225(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#17498: FILE: drivers/net/igc/base/e1000_i225.c:9:
+STATIC s32 igc_init_phy_params_i225(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#17499: FILE: drivers/net/igc/base/e1000_i225.c:10:
+STATIC s32 igc_reset_hw_i225(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#17500: FILE: drivers/net/igc/base/e1000_i225.c:11:
+STATIC s32 igc_acquire_nvm_i225(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#17501: FILE: drivers/net/igc/base/e1000_i225.c:12:
+STATIC void igc_release_nvm_i225(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#17502: FILE: drivers/net/igc/base/e1000_i225.c:13:
+STATIC s32 igc_get_hw_semaphore_i225(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#17503: FILE: drivers/net/igc/base/e1000_i225.c:14:
+STATIC s32 __igc_write_nvm_srwr(struct igc_hw *hw, u16 offset, u16 words,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#17505: FILE: drivers/net/igc/base/e1000_i225.c:16:
+STATIC s32 igc_pool_flash_update_done_i225(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#17506: FILE: drivers/net/igc/base/e1000_i225.c:17:
+STATIC s32 igc_valid_led_default_i225(struct igc_hw *hw, u16 *data);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'offset >= nvm->word_size'
#18049: FILE: drivers/net/igc/base/e1000_i225.c:560:
+	if ((offset >= nvm->word_size) || (words > (nvm->word_size - offset)) ||
+	    (words == 0)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'words == 0'
#18049: FILE: drivers/net/igc/base/e1000_i225.c:560:
+	if ((offset >= nvm->word_size) || (words > (nvm->word_size - offset)) ||
+	    (words == 0)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'i == 1'
#18115: FILE: drivers/net/igc/base/e1000_i225.c:626:
+		if ((i == 1) && ((*record & IGC_INVM_VER_FIELD_ONE) == 0)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'i == 1'
#18160: FILE: drivers/net/igc/base/e1000_i225.c:671:
+		if ((i == 1) && ((*record & IGC_INVM_IMGTYPE_FIELD) == 0)) {

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#18187: FILE: drivers/net/igc/base/e1000_i225.c:698:
+	s32 (*read_op_ptr)(struct igc_hw *, u16, u16, u16 *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#18187: FILE: drivers/net/igc/base/e1000_i225.c:698:
+	s32 (*read_op_ptr)(struct igc_hw *, u16, u16, u16 *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#18187: FILE: drivers/net/igc/base/e1000_i225.c:698:
+	s32 (*read_op_ptr)(struct igc_hw *, u16, u16, u16 *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16 *' should also have an identifier name
#18187: FILE: drivers/net/igc/base/e1000_i225.c:698:
+	s32 (*read_op_ptr)(struct igc_hw *, u16, u16, u16 *);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->phy.media_type == igc_media_type_copper'
#18503: FILE: drivers/net/igc/base/e1000_i225.c:1014:
+		if ((hw->phy.media_type == igc_media_type_copper) &&
+		    !(hw->dev_spec._i225.eee_disable) &&
+		     (speed != SPEED_10)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'speed != SPEED_10'
#18503: FILE: drivers/net/igc/base/e1000_i225.c:1014:
+		if ((hw->phy.media_type == igc_media_type_copper) &&
+		    !(hw->dev_spec._i225.eee_disable) &&
+		     (speed != SPEED_10)) {

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19046: FILE: drivers/net/igc/base/e1000_ich8lan.c:45:
+STATIC s32  igc_acquire_swflag_ich8lan(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19047: FILE: drivers/net/igc/base/e1000_ich8lan.c:46:
+STATIC void igc_release_swflag_ich8lan(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19048: FILE: drivers/net/igc/base/e1000_ich8lan.c:47:
+STATIC s32  igc_acquire_nvm_ich8lan(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19049: FILE: drivers/net/igc/base/e1000_ich8lan.c:48:
+STATIC void igc_release_nvm_ich8lan(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19050: FILE: drivers/net/igc/base/e1000_ich8lan.c:49:
+STATIC bool igc_check_mng_mode_ich8lan(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19051: FILE: drivers/net/igc/base/e1000_ich8lan.c:50:
+STATIC bool igc_check_mng_mode_pchlan(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19052: FILE: drivers/net/igc/base/e1000_ich8lan.c:51:
+STATIC int  igc_rar_set_pch2lan(struct igc_hw *hw, u8 *addr, u32 index);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19053: FILE: drivers/net/igc/base/e1000_ich8lan.c:52:
+STATIC int  igc_rar_set_pch_lpt(struct igc_hw *hw, u8 *addr, u32 index);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19054: FILE: drivers/net/igc/base/e1000_ich8lan.c:53:
+STATIC s32 igc_sw_lcd_config_ich8lan(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19055: FILE: drivers/net/igc/base/e1000_ich8lan.c:54:
+STATIC void igc_update_mc_addr_list_pch2lan(struct igc_hw *hw,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19058: FILE: drivers/net/igc/base/e1000_ich8lan.c:57:
+STATIC s32  igc_check_reset_block_ich8lan(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19059: FILE: drivers/net/igc/base/e1000_ich8lan.c:58:
+STATIC s32  igc_phy_hw_reset_ich8lan(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19060: FILE: drivers/net/igc/base/e1000_ich8lan.c:59:
+STATIC s32  igc_set_lplu_state_pchlan(struct igc_hw *hw, bool active);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19061: FILE: drivers/net/igc/base/e1000_ich8lan.c:60:
+STATIC s32  igc_set_d0_lplu_state_ich8lan(struct igc_hw *hw,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19063: FILE: drivers/net/igc/base/e1000_ich8lan.c:62:
+STATIC s32  igc_set_d3_lplu_state_ich8lan(struct igc_hw *hw,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19065: FILE: drivers/net/igc/base/e1000_ich8lan.c:64:
+STATIC s32  igc_read_nvm_ich8lan(struct igc_hw *hw, u16 offset,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19067: FILE: drivers/net/igc/base/e1000_ich8lan.c:66:
+STATIC s32  igc_read_nvm_spt(struct igc_hw *hw, u16 offset, u16 words,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19069: FILE: drivers/net/igc/base/e1000_ich8lan.c:68:
+STATIC s32  igc_write_nvm_ich8lan(struct igc_hw *hw, u16 offset,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19071: FILE: drivers/net/igc/base/e1000_ich8lan.c:70:
+STATIC s32  igc_validate_nvm_checksum_ich8lan(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19072: FILE: drivers/net/igc/base/e1000_ich8lan.c:71:
+STATIC s32  igc_update_nvm_checksum_ich8lan(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19073: FILE: drivers/net/igc/base/e1000_ich8lan.c:72:
+STATIC s32  igc_update_nvm_checksum_spt(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19074: FILE: drivers/net/igc/base/e1000_ich8lan.c:73:
+STATIC s32  igc_valid_led_default_ich8lan(struct igc_hw *hw,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19076: FILE: drivers/net/igc/base/e1000_ich8lan.c:75:
+STATIC s32 igc_id_led_init_pchlan(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19077: FILE: drivers/net/igc/base/e1000_ich8lan.c:76:
+STATIC s32  igc_get_bus_info_ich8lan(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19078: FILE: drivers/net/igc/base/e1000_ich8lan.c:77:
+STATIC s32  igc_reset_hw_ich8lan(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19079: FILE: drivers/net/igc/base/e1000_ich8lan.c:78:
+STATIC s32  igc_init_hw_ich8lan(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19080: FILE: drivers/net/igc/base/e1000_ich8lan.c:79:
+STATIC s32  igc_setup_link_ich8lan(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19081: FILE: drivers/net/igc/base/e1000_ich8lan.c:80:
+STATIC s32  igc_setup_copper_link_ich8lan(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19082: FILE: drivers/net/igc/base/e1000_ich8lan.c:81:
+STATIC s32  igc_setup_copper_link_pch_lpt(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19083: FILE: drivers/net/igc/base/e1000_ich8lan.c:82:
+STATIC s32  igc_get_link_up_info_ich8lan(struct igc_hw *hw,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19085: FILE: drivers/net/igc/base/e1000_ich8lan.c:84:
+STATIC s32  igc_cleanup_led_ich8lan(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19086: FILE: drivers/net/igc/base/e1000_ich8lan.c:85:
+STATIC s32  igc_led_on_ich8lan(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19087: FILE: drivers/net/igc/base/e1000_ich8lan.c:86:
+STATIC s32  igc_led_off_ich8lan(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19088: FILE: drivers/net/igc/base/e1000_ich8lan.c:87:
+STATIC s32  igc_k1_gig_workaround_hv(struct igc_hw *hw, bool link);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19089: FILE: drivers/net/igc/base/e1000_ich8lan.c:88:
+STATIC s32  igc_setup_led_pchlan(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19090: FILE: drivers/net/igc/base/e1000_ich8lan.c:89:
+STATIC s32  igc_cleanup_led_pchlan(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19091: FILE: drivers/net/igc/base/e1000_ich8lan.c:90:
+STATIC s32  igc_led_on_pchlan(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19092: FILE: drivers/net/igc/base/e1000_ich8lan.c:91:
+STATIC s32  igc_led_off_pchlan(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19093: FILE: drivers/net/igc/base/e1000_ich8lan.c:92:
+STATIC void igc_clear_hw_cntrs_ich8lan(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19094: FILE: drivers/net/igc/base/e1000_ich8lan.c:93:
+STATIC s32  igc_erase_flash_bank_ich8lan(struct igc_hw *hw, u32 bank);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19095: FILE: drivers/net/igc/base/e1000_ich8lan.c:94:
+STATIC void igc_initialize_hw_bits_ich8lan(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19096: FILE: drivers/net/igc/base/e1000_ich8lan.c:95:
+STATIC s32  igc_kmrn_lock_loss_workaround_ich8lan(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19097: FILE: drivers/net/igc/base/e1000_ich8lan.c:96:
+STATIC s32  igc_read_flash_byte_ich8lan(struct igc_hw *hw,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19099: FILE: drivers/net/igc/base/e1000_ich8lan.c:98:
+STATIC s32  igc_read_flash_data_ich8lan(struct igc_hw *hw, u32 offset,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19101: FILE: drivers/net/igc/base/e1000_ich8lan.c:100:
+STATIC s32  igc_read_flash_data32_ich8lan(struct igc_hw *hw, u32 offset,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19103: FILE: drivers/net/igc/base/e1000_ich8lan.c:102:
+STATIC s32  igc_read_flash_dword_ich8lan(struct igc_hw *hw,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19105: FILE: drivers/net/igc/base/e1000_ich8lan.c:104:
+STATIC s32  igc_write_flash_data32_ich8lan(struct igc_hw *hw,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19107: FILE: drivers/net/igc/base/e1000_ich8lan.c:106:
+STATIC s32  igc_retry_write_flash_dword_ich8lan(struct igc_hw *hw,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19109: FILE: drivers/net/igc/base/e1000_ich8lan.c:108:
+STATIC s32  igc_read_flash_word_ich8lan(struct igc_hw *hw,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19111: FILE: drivers/net/igc/base/e1000_ich8lan.c:110:
+STATIC s32  igc_retry_write_flash_byte_ich8lan(struct igc_hw *hw,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19113: FILE: drivers/net/igc/base/e1000_ich8lan.c:112:
+STATIC s32 igc_get_cfg_done_ich8lan(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19114: FILE: drivers/net/igc/base/e1000_ich8lan.c:113:
+STATIC void igc_power_down_phy_copper_ich8lan(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19115: FILE: drivers/net/igc/base/e1000_ich8lan.c:114:
+STATIC s32 igc_check_for_copper_link_ich8lan(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19116: FILE: drivers/net/igc/base/e1000_ich8lan.c:115:
+STATIC s32 igc_set_mdio_slow_mode_hv(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19117: FILE: drivers/net/igc/base/e1000_ich8lan.c:116:
+STATIC s32 igc_k1_workaround_lv(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#19118: FILE: drivers/net/igc/base/e1000_ich8lan.c:117:
+STATIC void igc_gate_hw_phy_config_ich8lan(struct igc_hw *hw, bool gate);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'phy_reg == 0xFFFF'
#19181: FILE: drivers/net/igc/base/e1000_ich8lan.c:180:
+		if (ret_val || (phy_reg == 0xFFFF))

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'phy_reg == 0xFFFF'
#19186: FILE: drivers/net/igc/base/e1000_ich8lan.c:185:
+		if (ret_val || (phy_reg == 0xFFFF)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->mac.type == igc_pchlan'
#19341: FILE: drivers/net/igc/base/e1000_ich8lan.c:340:
+		if ((hw->mac.type == igc_pchlan) &&
+		    (fwsm & IGC_ICH_FWSM_FW_VALID))

CHECK:BRACES: Blank lines aren't necessary after an open brace '{'
#19376: FILE: drivers/net/igc/base/e1000_ich8lan.c:375:
+	if (!ret_val) {
+

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->mac.type == igc_pch2lan'
#19405: FILE: drivers/net/igc/base/e1000_ich8lan.c:404:
+	if ((hw->mac.type == igc_pch2lan) &&
+	    !(fwsm & IGC_ICH_FWSM_FW_VALID)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'phy->id != 0'
#19460: FILE: drivers/net/igc/base/e1000_ich8lan.c:459:
+			if ((phy->id != 0) && (phy->id != PHY_REVISION_MASK))

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'phy->id != PHY_REVISION_MASK'
#19460: FILE: drivers/net/igc/base/e1000_ich8lan.c:459:
+			if ((phy->id != 0) && (phy->id != PHY_REVISION_MASK))

WARNING:UNNECESSARY_BREAK: break is not useful after a goto or return
#19590: FILE: drivers/net/igc/base/e1000_ich8lan.c:589:
+		return -IGC_ERR_PHY;
+		break;

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->phy.revision > 5'
#20029: FILE: drivers/net/igc/base/e1000_ich8lan.c:1028:
+		if ((hw->phy.revision > 5) || !link ||
+		    ((status & IGC_STATUS_SPEED_100) &&
+		     (status & IGC_STATUS_FD)))

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->mac.type < igc_pch_lpt'
#20084: FILE: drivers/net/igc/base/e1000_ich8lan.c:1083:
+	if ((hw->mac.type < igc_pch_lpt) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_LPT_I217_LM) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_LPT_I217_V) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_I218_LM2) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_I218_V2) ||
+	    (hw->dev_spec.ich8lan.ulp_state == igc_ulp_state_on))

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->device_id == IGC_DEV_ID_PCH_LPT_I217_LM'
#20084: FILE: drivers/net/igc/base/e1000_ich8lan.c:1083:
+	if ((hw->mac.type < igc_pch_lpt) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_LPT_I217_LM) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_LPT_I217_V) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_I218_LM2) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_I218_V2) ||
+	    (hw->dev_spec.ich8lan.ulp_state == igc_ulp_state_on))

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->device_id == IGC_DEV_ID_PCH_LPT_I217_V'
#20084: FILE: drivers/net/igc/base/e1000_ich8lan.c:1083:
+	if ((hw->mac.type < igc_pch_lpt) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_LPT_I217_LM) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_LPT_I217_V) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_I218_LM2) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_I218_V2) ||
+	    (hw->dev_spec.ich8lan.ulp_state == igc_ulp_state_on))

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->device_id == IGC_DEV_ID_PCH_I218_LM2'
#20084: FILE: drivers/net/igc/base/e1000_ich8lan.c:1083:
+	if ((hw->mac.type < igc_pch_lpt) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_LPT_I217_LM) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_LPT_I217_V) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_I218_LM2) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_I218_V2) ||
+	    (hw->dev_spec.ich8lan.ulp_state == igc_ulp_state_on))

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->device_id == IGC_DEV_ID_PCH_I218_V2'
#20084: FILE: drivers/net/igc/base/e1000_ich8lan.c:1083:
+	if ((hw->mac.type < igc_pch_lpt) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_LPT_I217_LM) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_LPT_I217_V) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_I218_LM2) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_I218_V2) ||
+	    (hw->dev_spec.ich8lan.ulp_state == igc_ulp_state_on))

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->dev_spec.ich8lan.ulp_state == igc_ulp_state_on'
#20084: FILE: drivers/net/igc/base/e1000_ich8lan.c:1083:
+	if ((hw->mac.type < igc_pch_lpt) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_LPT_I217_LM) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_LPT_I217_V) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_I218_LM2) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_I218_V2) ||
+	    (hw->dev_spec.ich8lan.ulp_state == igc_ulp_state_on))

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->phy.type == igc_phy_i217'
#20146: FILE: drivers/net/igc/base/e1000_ich8lan.c:1145:
+	if ((hw->phy.type == igc_phy_i217) && (hw->phy.revision == 6)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->phy.revision == 6'
#20146: FILE: drivers/net/igc/base/e1000_ich8lan.c:1145:
+	if ((hw->phy.type == igc_phy_i217) && (hw->phy.revision == 6)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->phy.type == igc_phy_i217'
#20218: FILE: drivers/net/igc/base/e1000_ich8lan.c:1217:
+	if ((hw->phy.type == igc_phy_i217) && (hw->phy.revision == 6) &&
+	    to_sx && (IGC_READ_REG(hw, IGC_STATUS) & IGC_STATUS_LU)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->phy.revision == 6'
#20218: FILE: drivers/net/igc/base/e1000_ich8lan.c:1217:
+	if ((hw->phy.type == igc_phy_i217) && (hw->phy.revision == 6) &&
+	    to_sx && (IGC_READ_REG(hw, IGC_STATUS) & IGC_STATUS_LU)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->mac.type < igc_pch_lpt'
#20266: FILE: drivers/net/igc/base/e1000_ich8lan.c:1265:
+	if ((hw->mac.type < igc_pch_lpt) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_LPT_I217_LM) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_LPT_I217_V) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_I218_LM2) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_I218_V2) ||
+	    (hw->dev_spec.ich8lan.ulp_state == igc_ulp_state_off))

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->device_id == IGC_DEV_ID_PCH_LPT_I217_LM'
#20266: FILE: drivers/net/igc/base/e1000_ich8lan.c:1265:
+	if ((hw->mac.type < igc_pch_lpt) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_LPT_I217_LM) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_LPT_I217_V) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_I218_LM2) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_I218_V2) ||
+	    (hw->dev_spec.ich8lan.ulp_state == igc_ulp_state_off))

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->device_id == IGC_DEV_ID_PCH_LPT_I217_V'
#20266: FILE: drivers/net/igc/base/e1000_ich8lan.c:1265:
+	if ((hw->mac.type < igc_pch_lpt) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_LPT_I217_LM) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_LPT_I217_V) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_I218_LM2) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_I218_V2) ||
+	    (hw->dev_spec.ich8lan.ulp_state == igc_ulp_state_off))

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->device_id == IGC_DEV_ID_PCH_I218_LM2'
#20266: FILE: drivers/net/igc/base/e1000_ich8lan.c:1265:
+	if ((hw->mac.type < igc_pch_lpt) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_LPT_I217_LM) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_LPT_I217_V) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_I218_LM2) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_I218_V2) ||
+	    (hw->dev_spec.ich8lan.ulp_state == igc_ulp_state_off))

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->device_id == IGC_DEV_ID_PCH_I218_V2'
#20266: FILE: drivers/net/igc/base/e1000_ich8lan.c:1265:
+	if ((hw->mac.type < igc_pch_lpt) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_LPT_I217_LM) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_LPT_I217_V) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_I218_LM2) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_I218_V2) ||
+	    (hw->dev_spec.ich8lan.ulp_state == igc_ulp_state_off))

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->dev_spec.ich8lan.ulp_state == igc_ulp_state_off'
#20266: FILE: drivers/net/igc/base/e1000_ich8lan.c:1265:
+	if ((hw->mac.type < igc_pch_lpt) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_LPT_I217_LM) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_LPT_I217_V) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_I218_LM2) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_I218_V2) ||
+	    (hw->dev_spec.ich8lan.ulp_state == igc_ulp_state_off))

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->mac.type < igc_pch_lpt'
#20473: FILE: drivers/net/igc/base/e1000_ich8lan.c:1472:
+	if ((hw->mac.type < igc_pch_lpt) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_LPT_I217_LM) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_LPT_I217_V)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->device_id == IGC_DEV_ID_PCH_LPT_I217_LM'
#20473: FILE: drivers/net/igc/base/e1000_ich8lan.c:1472:
+	if ((hw->mac.type < igc_pch_lpt) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_LPT_I217_LM) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_LPT_I217_V)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->device_id == IGC_DEV_ID_PCH_LPT_I217_V'
#20473: FILE: drivers/net/igc/base/e1000_ich8lan.c:1472:
+	if ((hw->mac.type < igc_pch_lpt) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_LPT_I217_LM) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_LPT_I217_V)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->mac.type >= igc_pch2lan'
#20506: FILE: drivers/net/igc/base/e1000_ich8lan.c:1505:
+	if ((hw->mac.type >= igc_pch2lan) && link) {

WARNING:TABSTOP: Statements should start on a tabstop
#20561: FILE: drivers/net/igc/base/e1000_ich8lan.c:1560:
+		 }

CHECK:BRACES: Blank lines aren't necessary before a close brace '}'
#20607: FILE: drivers/net/igc/base/e1000_ich8lan.c:1606:
+
+			}

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->device_id == IGC_DEV_ID_PCH_LPTLP_I218_LM'
#20626: FILE: drivers/net/igc/base/e1000_ich8lan.c:1625:
+	if ((hw->device_id == IGC_DEV_ID_PCH_LPTLP_I218_LM) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_LPTLP_I218_V) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_I218_LM3) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_I218_V3)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->device_id == IGC_DEV_ID_PCH_LPTLP_I218_V'
#20626: FILE: drivers/net/igc/base/e1000_ich8lan.c:1625:
+	if ((hw->device_id == IGC_DEV_ID_PCH_LPTLP_I218_LM) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_LPTLP_I218_V) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_I218_LM3) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_I218_V3)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->device_id == IGC_DEV_ID_PCH_I218_LM3'
#20626: FILE: drivers/net/igc/base/e1000_ich8lan.c:1625:
+	if ((hw->device_id == IGC_DEV_ID_PCH_LPTLP_I218_LM) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_LPTLP_I218_V) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_I218_LM3) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_I218_V3)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->device_id == IGC_DEV_ID_PCH_I218_V3'
#20626: FILE: drivers/net/igc/base/e1000_ich8lan.c:1625:
+	if ((hw->device_id == IGC_DEV_ID_PCH_LPTLP_I218_LM) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_LPTLP_I218_V) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_I218_LM3) ||
+	    (hw->device_id == IGC_DEV_ID_PCH_I218_V3)) {

WARNING:BRACES: braces {} are not necessary for single statement blocks
#20638: FILE: drivers/net/igc/base/e1000_ich8lan.c:1637:
+	if (hw->mac.type >= igc_pch_lpt) {
+		igc_configure_k0s_lpt(hw, K1_ENTRY_LATENCY, K1_MIN_TIME);
+	}

CHECK:BOOL_COMPARISON: Using comparison to true is error prone
#20655: FILE: drivers/net/igc/base/e1000_ich8lan.c:1654:
+		if (hw->dev_spec.ich8lan.disable_k1_off == true)

WARNING:RETURN_VOID: void function return statements are not generally useful
#20791: FILE: drivers/net/igc/base/e1000_ich8lan.c:1790:
+	return;
+}

WARNING:RETURN_VOID: void function return statements are not generally useful
#20879: FILE: drivers/net/igc/base/e1000_ich8lan.c:1878:
+	return;
+}

CHECK:SPACING: No space is necessary after a cast
#20942: FILE: drivers/net/igc/base/e1000_ich8lan.c:1941:
+	rar_low = ((u32) addr[0] |

CHECK:SPACING: No space is necessary after a cast
#20943: FILE: drivers/net/igc/base/e1000_ich8lan.c:1942:
+		   ((u32) addr[1] << 8) |

CHECK:SPACING: No space is necessary after a cast
#20944: FILE: drivers/net/igc/base/e1000_ich8lan.c:1943:
+		   ((u32) addr[2] << 16) | ((u32) addr[3] << 24));

CHECK:SPACING: No space is necessary after a cast
#20946: FILE: drivers/net/igc/base/e1000_ich8lan.c:1945:
+	rar_high = ((u32) addr[4] | ((u32) addr[5] << 8));

CHECK:SPACING: No space is necessary after a cast
#20963: FILE: drivers/net/igc/base/e1000_ich8lan.c:1962:
+	if (index < (u32) (hw->mac.rar_entry_count)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->mac.rar_entry_count'
#20963: FILE: drivers/net/igc/base/e1000_ich8lan.c:1962:
+	if (index < (u32) (hw->mac.rar_entry_count)) {

CHECK:SPACING: No space is necessary after a cast
#21012: FILE: drivers/net/igc/base/e1000_ich8lan.c:2011:
+	rar_low = ((u32) addr[0] | ((u32) addr[1] << 8) |

CHECK:SPACING: No space is necessary after a cast
#21013: FILE: drivers/net/igc/base/e1000_ich8lan.c:2012:
+		   ((u32) addr[2] << 16) | ((u32) addr[3] << 24));

CHECK:SPACING: No space is necessary after a cast
#21015: FILE: drivers/net/igc/base/e1000_ich8lan.c:2014:
+	rar_high = ((u32) addr[4] | ((u32) addr[5] << 8));

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'wlock_mac == 0'
#21041: FILE: drivers/net/igc/base/e1000_ich8lan.c:2040:
+		if ((wlock_mac == 0) || (index <= wlock_mac)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'index <= wlock_mac'
#21041: FILE: drivers/net/igc/base/e1000_ich8lan.c:2040:
+		if ((wlock_mac == 0) || (index <= wlock_mac)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->device_id == IGC_DEV_ID_ICH8_IGP_AMT'
#21210: FILE: drivers/net/igc/base/e1000_ich8lan.c:2209:
+		if ((hw->device_id == IGC_DEV_ID_ICH8_IGP_AMT) ||
+		    (hw->device_id == IGC_DEV_ID_ICH8_IGP_C)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->device_id == IGC_DEV_ID_ICH8_IGP_C'
#21210: FILE: drivers/net/igc/base/e1000_ich8lan.c:2209:
+		if ((hw->device_id == IGC_DEV_ID_ICH8_IGP_AMT) ||
+		    (hw->device_id == IGC_DEV_ID_ICH8_IGP_C)) {

WARNING:SUSPECT_CODE_INDENT: suspect code indent for conditional statements (8, 24)
#21239: FILE: drivers/net/igc/base/e1000_ich8lan.c:2238:
+	if ((hw->mac.type < igc_pch2lan) &&
[...]
+			goto release;

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->mac.type < igc_pch2lan'
#21239: FILE: drivers/net/igc/base/e1000_ich8lan.c:2238:
+	if ((hw->mac.type < igc_pch2lan) &&
+	    (data & IGC_EXTCNF_CTRL_LCD_WRITE_ENABLE))

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->mac.type == igc_pchlan'
#21252: FILE: drivers/net/igc/base/e1000_ich8lan.c:2251:
+	if (((hw->mac.type == igc_pchlan) &&
+	     !(data & IGC_EXTCNF_CTRL_OEM_WRITE_ENABLE)) ||
+	    (hw->mac.type > igc_pchlan)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->mac.type > igc_pchlan'
#21252: FILE: drivers/net/igc/base/e1000_ich8lan.c:2251:
+	if (((hw->mac.type == igc_pchlan) &&
+	     !(data & IGC_EXTCNF_CTRL_OEM_WRITE_ENABLE)) ||
+	    (hw->mac.type > igc_pchlan)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->mac.type != igc_pchlan'
#21502: FILE: drivers/net/igc/base/e1000_ich8lan.c:2501:
+	if ((d0_state || (hw->mac.type != igc_pchlan)) &&
+	    !hw->phy.ops.check_reset_block(hw))

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->phy.type == igc_phy_82577'
#21559: FILE: drivers/net/igc/base/e1000_ich8lan.c:2558:
+	if (((hw->phy.type == igc_phy_82577) &&
+	     ((hw->phy.revision == 1) || (hw->phy.revision == 2))) ||
+	    ((hw->phy.type == igc_phy_82578) && (hw->phy.revision == 1))) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->phy.revision == 1'
#21559: FILE: drivers/net/igc/base/e1000_ich8lan.c:2558:
+	if (((hw->phy.type == igc_phy_82577) &&
+	     ((hw->phy.revision == 1) || (hw->phy.revision == 2))) ||
+	    ((hw->phy.type == igc_phy_82578) && (hw->phy.revision == 1))) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->phy.revision == 2'
#21559: FILE: drivers/net/igc/base/e1000_ich8lan.c:2558:
+	if (((hw->phy.type == igc_phy_82577) &&
+	     ((hw->phy.revision == 1) || (hw->phy.revision == 2))) ||
+	    ((hw->phy.type == igc_phy_82578) && (hw->phy.revision == 1))) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->phy.type == igc_phy_82578'
#21559: FILE: drivers/net/igc/base/e1000_ich8lan.c:2558:
+	if (((hw->phy.type == igc_phy_82577) &&
+	     ((hw->phy.revision == 1) || (hw->phy.revision == 2))) ||
+	    ((hw->phy.type == igc_phy_82578) && (hw->phy.revision == 1))) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->phy.revision == 1'
#21559: FILE: drivers/net/igc/base/e1000_ich8lan.c:2558:
+	if (((hw->phy.type == igc_phy_82577) &&
+	     ((hw->phy.revision == 1) || (hw->phy.revision == 2))) ||
+	    ((hw->phy.type == igc_phy_82578) && (hw->phy.revision == 1))) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->mac.type == igc_pch2lan'
#22085: FILE: drivers/net/igc/base/e1000_ich8lan.c:3084:
+	if ((hw->mac.type == igc_pch2lan) &&
+	    !(IGC_READ_REG(hw, IGC_FWSM) & IGC_ICH_FWSM_FW_VALID))

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'offset >= nvm->word_size'
#22443: FILE: drivers/net/igc/base/e1000_ich8lan.c:3442:
+	if ((offset >= nvm->word_size) || (words > nvm->word_size - offset) ||
+	    (words == 0)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'words == 0'
#22443: FILE: drivers/net/igc/base/e1000_ich8lan.c:3442:
+	if ((offset >= nvm->word_size) || (words > nvm->word_size - offset) ||
+	    (words == 0)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'offset >= nvm->word_size'
#22536: FILE: drivers/net/igc/base/e1000_ich8lan.c:3535:
+	if ((offset >= nvm->word_size) || (words > nvm->word_size - offset) ||
+	    (words == 0)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'words == 0'
#22536: FILE: drivers/net/igc/base/e1000_ich8lan.c:3535:
+	if ((offset >= nvm->word_size) || (words > nvm->word_size - offset) ||
+	    (words == 0)) {

CHECK:SPACING: spaces preferred around that '>>' (ctx:VxV)
#22680: FILE: drivers/net/igc/base/e1000_ich8lan.c:3679:
+		hsflctl.regval = IGC_READ_FLASH_REG(hw, ICH_FLASH_HSFSTS)>>16;
 		                                                         ^

WARNING:UNNECESSARY_ELSE: else is not generally useful after a break or return
#22770: FILE: drivers/net/igc/base/e1000_ich8lan.c:3769:
+		return -IGC_ERR_NVM;
+	else

WARNING:UNNECESSARY_ELSE: else is not generally useful after a break or return
#22836: FILE: drivers/net/igc/base/e1000_ich8lan.c:3835:
+			break;
+		} else {

CHECK:SPACING: spaces preferred around that '>>' (ctx:VxV)
#22891: FILE: drivers/net/igc/base/e1000_ich8lan.c:3890:
+		hsflctl.regval = IGC_READ_FLASH_REG(hw, ICH_FLASH_HSFSTS)>>16;
 		                                                         ^

WARNING:UNNECESSARY_ELSE: else is not generally useful after a break or return
#22914: FILE: drivers/net/igc/base/e1000_ich8lan.c:3913:
+			break;
+		} else {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'offset >= nvm->word_size'
#22953: FILE: drivers/net/igc/base/e1000_ich8lan.c:3952:
+	if ((offset >= nvm->word_size) || (words > nvm->word_size - offset) ||
+	    (words == 0)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'words == 0'
#22953: FILE: drivers/net/igc/base/e1000_ich8lan.c:3952:
+	if ((offset >= nvm->word_size) || (words > nvm->word_size - offset) ||
+	    (words == 0)) {

WARNING:TABSTOP: Statements should start on a tabstop
#23066: FILE: drivers/net/igc/base/e1000_ich8lan.c:4065:
+	 }

WARNING:TABSTOP: Statements should start on a tabstop
#23224: FILE: drivers/net/igc/base/e1000_ich8lan.c:4223:
+	 }

CHECK:SPACING: spaces preferred around that '>>' (ctx:VxV)
#23381: FILE: drivers/net/igc/base/e1000_ich8lan.c:4380:
+			    IGC_READ_FLASH_REG(hw, ICH_FLASH_HSFSTS)>>16;
 			                                            ^

WARNING:BLOCK_COMMENT_STYLE: Block comments should align the * on each line
#23437: FILE: drivers/net/igc/base/e1000_ich8lan.c:4436:
+/**
+*  igc_write_flash_data32_ich8lan - Writes 4 bytes to the NVM

WARNING:BLOCK_COMMENT_STYLE: Block comments should align the * on each line
#23544: FILE: drivers/net/igc/base/e1000_ich8lan.c:4543:
+/**
+*  igc_retry_write_flash_dword_ich8lan - Writes a dword to NVM

CHECK:SPACING: spaces preferred around that '>>' (ctx:VxV)
#23691: FILE: drivers/net/igc/base/e1000_ich8lan.c:4690:
+							 ICH_FLASH_HSFSTS)>>16;
 							                  ^

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->mac.type == igc_pch2lan'
#23931: FILE: drivers/net/igc/base/e1000_ich8lan.c:4930:
+		if ((hw->mac.type == igc_pch2lan) &&
+		    !(IGC_READ_REG(hw, IGC_FWSM) & IGC_ICH_FWSM_FW_VALID))

CHECK:SPACING: No space is necessary after a cast
#24069: FILE: drivers/net/igc/base/e1000_ich8lan.c:5068:
+		snoop = (u32) ~(PCIE_NO_SNOOP_ALL);

WARNING:RETURN_VOID: void function return statements are not generally useful
#24165: FILE: drivers/net/igc/base/e1000_ich8lan.c:5164:
+	return;
+}

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->phy.type == igc_phy_82578'
#24206: FILE: drivers/net/igc/base/e1000_ich8lan.c:5205:
+	if ((hw->phy.type == igc_phy_82578) ||
+	    (hw->phy.type == igc_phy_82579) ||
+	    (hw->phy.type == igc_phy_i217) ||
+	    (hw->phy.type == igc_phy_82577)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->phy.type == igc_phy_82579'
#24206: FILE: drivers/net/igc/base/e1000_ich8lan.c:5205:
+	if ((hw->phy.type == igc_phy_82578) ||
+	    (hw->phy.type == igc_phy_82579) ||
+	    (hw->phy.type == igc_phy_i217) ||
+	    (hw->phy.type == igc_phy_82577)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->phy.type == igc_phy_i217'
#24206: FILE: drivers/net/igc/base/e1000_ich8lan.c:5205:
+	if ((hw->phy.type == igc_phy_82578) ||
+	    (hw->phy.type == igc_phy_82579) ||
+	    (hw->phy.type == igc_phy_i217) ||
+	    (hw->phy.type == igc_phy_82577)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->phy.type == igc_phy_82577'
#24206: FILE: drivers/net/igc/base/e1000_ich8lan.c:5205:
+	if ((hw->phy.type == igc_phy_82578) ||
+	    (hw->phy.type == igc_phy_82579) ||
+	    (hw->phy.type == igc_phy_i217) ||
+	    (hw->phy.type == igc_phy_82577)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->mac.type == igc_ich8lan'
#24361: FILE: drivers/net/igc/base/e1000_ich8lan.c:5360:
+	if ((hw->mac.type == igc_ich8lan) &&
+	    (hw->phy.type == igc_phy_igp_3) &&
+	    (*speed == SPEED_1000)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->phy.type == igc_phy_igp_3'
#24361: FILE: drivers/net/igc/base/e1000_ich8lan.c:5360:
+	if ((hw->mac.type == igc_ich8lan) &&
+	    (hw->phy.type == igc_phy_igp_3) &&
+	    (*speed == SPEED_1000)) {

WARNING:RETURN_VOID: void function return statements are not generally useful
#24462: FILE: drivers/net/igc/base/e1000_ich8lan.c:5461:
+	return;
+}

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'data == IGP3_VR_CTRL_MODE_SHUTDOWN'
#24508: FILE: drivers/net/igc/base/e1000_ich8lan.c:5507:
+		if ((data == IGP3_VR_CTRL_MODE_SHUTDOWN) || retry)

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->mac.type != igc_ich8lan'
#24535: FILE: drivers/net/igc/base/e1000_ich8lan.c:5534:
+	if ((hw->mac.type != igc_ich8lan) ||
+	    (hw->phy.type == igc_phy_ife))

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->phy.type == igc_phy_ife'
#24535: FILE: drivers/net/igc/base/e1000_ich8lan.c:5534:
+	if ((hw->mac.type != igc_ich8lan) ||
+	    (hw->phy.type == igc_phy_ife))

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'device_id == IGC_DEV_ID_PCH_LPTLP_I218_LM'
#24582: FILE: drivers/net/igc/base/e1000_ich8lan.c:5581:
+		if ((device_id == IGC_DEV_ID_PCH_LPTLP_I218_LM) ||
+		    (device_id == IGC_DEV_ID_PCH_LPTLP_I218_V) ||
+		    (device_id == IGC_DEV_ID_PCH_I218_LM3) ||
+		    (device_id == IGC_DEV_ID_PCH_I218_V3) ||
+		    (hw->mac.type >= igc_pch_spt)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'device_id == IGC_DEV_ID_PCH_LPTLP_I218_V'
#24582: FILE: drivers/net/igc/base/e1000_ich8lan.c:5581:
+		if ((device_id == IGC_DEV_ID_PCH_LPTLP_I218_LM) ||
+		    (device_id == IGC_DEV_ID_PCH_LPTLP_I218_V) ||
+		    (device_id == IGC_DEV_ID_PCH_I218_LM3) ||
+		    (device_id == IGC_DEV_ID_PCH_I218_V3) ||
+		    (hw->mac.type >= igc_pch_spt)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'device_id == IGC_DEV_ID_PCH_I218_LM3'
#24582: FILE: drivers/net/igc/base/e1000_ich8lan.c:5581:
+		if ((device_id == IGC_DEV_ID_PCH_LPTLP_I218_LM) ||
+		    (device_id == IGC_DEV_ID_PCH_LPTLP_I218_V) ||
+		    (device_id == IGC_DEV_ID_PCH_I218_LM3) ||
+		    (device_id == IGC_DEV_ID_PCH_I218_V3) ||
+		    (hw->mac.type >= igc_pch_spt)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'device_id == IGC_DEV_ID_PCH_I218_V3'
#24582: FILE: drivers/net/igc/base/e1000_ich8lan.c:5581:
+		if ((device_id == IGC_DEV_ID_PCH_LPTLP_I218_LM) ||
+		    (device_id == IGC_DEV_ID_PCH_LPTLP_I218_V) ||
+		    (device_id == IGC_DEV_ID_PCH_I218_LM3) ||
+		    (device_id == IGC_DEV_ID_PCH_I218_V3) ||
+		    (hw->mac.type >= igc_pch_spt)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->mac.type >= igc_pch_spt'
#24582: FILE: drivers/net/igc/base/e1000_ich8lan.c:5581:
+		if ((device_id == IGC_DEV_ID_PCH_LPTLP_I218_LM) ||
+		    (device_id == IGC_DEV_ID_PCH_LPTLP_I218_V) ||
+		    (device_id == IGC_DEV_ID_PCH_I218_LM3) ||
+		    (device_id == IGC_DEV_ID_PCH_I218_V3) ||
+		    (hw->mac.type >= igc_pch_spt)) {

WARNING:BLOCK_COMMENT_STYLE: Block comments should align the * on each line
#24648: FILE: drivers/net/igc/base/e1000_ich8lan.c:5647:
+			 * power good.
+			*/

CHECK:CAMELCASE: Avoid CamelCase: <I217_SxCTRL>
#24649: FILE: drivers/net/igc/base/e1000_ich8lan.c:5648:
+			hw->phy.ops.read_reg_locked(hw, I217_SxCTRL, &phy_reg);

CHECK:CAMELCASE: Avoid CamelCase: <I217_SxCTRL_ENABLE_LPI_RESET>
#24650: FILE: drivers/net/igc/base/e1000_ich8lan.c:5649:
+			phy_reg |= I217_SxCTRL_ENABLE_LPI_RESET;

WARNING:RETURN_VOID: void function return statements are not generally useful
#24690: FILE: drivers/net/igc/base/e1000_ich8lan.c:5689:
+	return;
+}

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->phy.type == igc_phy_igp_3'
#24958: FILE: drivers/net/igc/base/e1000_ich8lan.c:5957:
+		if (!(IGC_READ_REG(hw, IGC_EECD) & IGC_EECD_PRES) &&
+		    (hw->phy.type == igc_phy_igp_3)) {

WARNING:RETURN_VOID: void function return statements are not generally useful
#24988: FILE: drivers/net/igc/base/e1000_ich8lan.c:5987:
+	return;
+}

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->phy.type == igc_phy_82578'
#25021: FILE: drivers/net/igc/base/e1000_ich8lan.c:6020:
+	if ((hw->phy.type == igc_phy_82578) ||
+	    (hw->phy.type == igc_phy_82579) ||
+	    (hw->phy.type == igc_phy_i217) ||
+	    (hw->phy.type == igc_phy_82577)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->phy.type == igc_phy_82579'
#25021: FILE: drivers/net/igc/base/e1000_ich8lan.c:6020:
+	if ((hw->phy.type == igc_phy_82578) ||
+	    (hw->phy.type == igc_phy_82579) ||
+	    (hw->phy.type == igc_phy_i217) ||
+	    (hw->phy.type == igc_phy_82577)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->phy.type == igc_phy_i217'
#25021: FILE: drivers/net/igc/base/e1000_ich8lan.c:6020:
+	if ((hw->phy.type == igc_phy_82578) ||
+	    (hw->phy.type == igc_phy_82579) ||
+	    (hw->phy.type == igc_phy_i217) ||
+	    (hw->phy.type == igc_phy_82577)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->phy.type == igc_phy_82577'
#25021: FILE: drivers/net/igc/base/e1000_ich8lan.c:6020:
+	if ((hw->phy.type == igc_phy_82578) ||
+	    (hw->phy.type == igc_phy_82579) ||
+	    (hw->phy.type == igc_phy_i217) ||
+	    (hw->phy.type == igc_phy_82577)) {

WARNING:LONG_LINE_COMMENT: line over 90 characters
#25457: FILE: drivers/net/igc/base/e1000_impl_guide.c:56:
+ * igc_set_mac_type(), igc_setup_init_funcs() and igc_get_bus_info()  must be called prior to any other calls to the shared code.

WARNING:LONG_LINE_COMMENT: line over 90 characters
#25470: FILE: drivers/net/igc/base/e1000_impl_guide.c:69:
+ * <tr><td>IGC_ERR_MASTER_REQUESTS_PENDING</td>	<td>PCI-E master disable request error.</td></tr>

CHECK:SPACING: No space is necessary after a cast
#27690: FILE: drivers/net/igc/base/e1000_manage.c:29:
+	return (u8) (0 - sum);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hdr_csum != csum'
#27803: FILE: drivers/net/igc/base/e1000_manage.c:142:
+	if ((hdr_csum != csum) || (hdr->signature != IGC_IAMT_SIGNATURE)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hdr->signature != IGC_IAMT_SIGNATURE'
#27803: FILE: drivers/net/igc/base/e1000_manage.c:142:
+	if ((hdr_csum != csum) || (hdr->signature != IGC_IAMT_SIGNATURE)) {

CHECK:SPACING: No space is necessary after a cast
#27837: FILE: drivers/net/igc/base/e1000_manage.c:176:
+					    *((u32 *) hdr + i));

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around hdr.checksum
#27950: FILE: drivers/net/igc/base/e1000_manage.c:289:
+						  sizeof(hdr), &(hdr.checksum));

CHECK:SPACING: spaces preferred around that '*' (ctx:WxV)
#28297: FILE: drivers/net/igc/base/e1000_mbx.c:12:
+STATIC s32 igc_null_mbx_check_for_flag(struct igc_hw IGC_UNUSEDARG *hw,
                                                                    ^

CHECK:SPACING: spaces preferred around that '*' (ctx:WxV)
#28313: FILE: drivers/net/igc/base/e1000_mbx.c:28:
+STATIC s32 igc_null_mbx_transact(struct igc_hw IGC_UNUSEDARG *hw,
                                                              ^

CHECK:SPACING: spaces preferred around that '*' (ctx:WxV)
#28314: FILE: drivers/net/igc/base/e1000_mbx.c:29:
+				   u32 IGC_UNUSEDARG *msg,
 				                     ^

WARNING:TYPO_SPELLING: 'successfuly' may be misspelled - perhaps 'successfully'?
#28331: FILE: drivers/net/igc/base/e1000_mbx.c:46:
+ *  returns SUCCESS if it successfuly read message from buffer

WARNING:TYPO_SPELLING: 'acknowledgement' may be misspelled - perhaps 'acknowledgment'?
#28467: FILE: drivers/net/igc/base/e1000_mbx.c:182:
+ *  igc_poll_for_ack - Wait for message acknowledgement

WARNING:TYPO_SPELLING: 'acknowledgement' may be misspelled - perhaps 'acknowledgment'?
#28471: FILE: drivers/net/igc/base/e1000_mbx.c:186:
+ *  returns SUCCESS if it successfully received a message acknowledgement

WARNING:TYPO_SPELLING: 'successfuly' may be misspelled - perhaps 'successfully'?
#28761: FILE: drivers/net/igc/base/e1000_mbx.c:476:
+ *  returns SUCCESS if it successfuly read message from buffer

WARNING:BLOCK_COMMENT_STYLE: Block comments use a trailing */ on a separate line
#28802: FILE: drivers/net/igc/base/e1000_mbx.c:517:
+	 * value to begin communications */

CHECK:BRACES: Blank lines aren't necessary before a close brace '}'
#28934: FILE: drivers/net/igc/base/e1000_mbx.c:649:
+
+}

CHECK:BRACES: Blank lines aren't necessary before a close brace '}'
#28975: FILE: drivers/net/igc/base/e1000_mbx.c:690:
+
+}

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#29123: FILE: drivers/net/igc/base/e1000_mbx.h:65:
+s32 igc_read_mbx(struct igc_hw *, u32 *, u16, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u32 *' should also have an identifier name
#29123: FILE: drivers/net/igc/base/e1000_mbx.h:65:
+s32 igc_read_mbx(struct igc_hw *, u32 *, u16, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#29123: FILE: drivers/net/igc/base/e1000_mbx.h:65:
+s32 igc_read_mbx(struct igc_hw *, u32 *, u16, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#29123: FILE: drivers/net/igc/base/e1000_mbx.h:65:
+s32 igc_read_mbx(struct igc_hw *, u32 *, u16, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#29124: FILE: drivers/net/igc/base/e1000_mbx.h:66:
+s32 igc_write_mbx(struct igc_hw *, u32 *, u16, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u32 *' should also have an identifier name
#29124: FILE: drivers/net/igc/base/e1000_mbx.h:66:
+s32 igc_write_mbx(struct igc_hw *, u32 *, u16, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#29124: FILE: drivers/net/igc/base/e1000_mbx.h:66:
+s32 igc_write_mbx(struct igc_hw *, u32 *, u16, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#29124: FILE: drivers/net/igc/base/e1000_mbx.h:66:
+s32 igc_write_mbx(struct igc_hw *, u32 *, u16, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#29125: FILE: drivers/net/igc/base/e1000_mbx.h:67:
+s32 igc_read_posted_mbx(struct igc_hw *, u32 *, u16, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u32 *' should also have an identifier name
#29125: FILE: drivers/net/igc/base/e1000_mbx.h:67:
+s32 igc_read_posted_mbx(struct igc_hw *, u32 *, u16, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#29125: FILE: drivers/net/igc/base/e1000_mbx.h:67:
+s32 igc_read_posted_mbx(struct igc_hw *, u32 *, u16, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#29125: FILE: drivers/net/igc/base/e1000_mbx.h:67:
+s32 igc_read_posted_mbx(struct igc_hw *, u32 *, u16, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#29126: FILE: drivers/net/igc/base/e1000_mbx.h:68:
+s32 igc_write_posted_mbx(struct igc_hw *, u32 *, u16, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u32 *' should also have an identifier name
#29126: FILE: drivers/net/igc/base/e1000_mbx.h:68:
+s32 igc_write_posted_mbx(struct igc_hw *, u32 *, u16, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#29126: FILE: drivers/net/igc/base/e1000_mbx.h:68:
+s32 igc_write_posted_mbx(struct igc_hw *, u32 *, u16, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#29126: FILE: drivers/net/igc/base/e1000_mbx.h:68:
+s32 igc_write_posted_mbx(struct igc_hw *, u32 *, u16, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#29127: FILE: drivers/net/igc/base/e1000_mbx.h:69:
+s32 igc_check_for_msg(struct igc_hw *, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#29127: FILE: drivers/net/igc/base/e1000_mbx.h:69:
+s32 igc_check_for_msg(struct igc_hw *, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#29128: FILE: drivers/net/igc/base/e1000_mbx.h:70:
+s32 igc_check_for_ack(struct igc_hw *, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#29128: FILE: drivers/net/igc/base/e1000_mbx.h:70:
+s32 igc_check_for_ack(struct igc_hw *, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#29129: FILE: drivers/net/igc/base/e1000_mbx.h:71:
+s32 igc_check_for_rst(struct igc_hw *, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#29129: FILE: drivers/net/igc/base/e1000_mbx.h:71:
+s32 igc_check_for_rst(struct igc_hw *, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#29131: FILE: drivers/net/igc/base/e1000_mbx.h:73:
+s32 igc_init_mbx_params_vf(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#29132: FILE: drivers/net/igc/base/e1000_mbx.h:74:
+s32 igc_init_mbx_params_pf(struct igc_hw *);

CHECK:SPACING: spaces preferred around that '*' (ctx:WxV)
#29179: FILE: drivers/net/igc/base/e1000_nvm.c:39:
+s32 igc_null_read_nvm(struct igc_hw IGC_UNUSEDARG *hw,
                                                   ^

CHECK:SPACING: spaces preferred around that '*' (ctx:WxV)
#29181: FILE: drivers/net/igc/base/e1000_nvm.c:41:
+			u16 IGC_UNUSEDARG *c)
 			                  ^

CHECK:SPACING: spaces preferred around that '*' (ctx:WxV)
#29192: FILE: drivers/net/igc/base/e1000_nvm.c:52:
+void igc_null_nvm_generic(struct igc_hw IGC_UNUSEDARG *hw)
                                                       ^

WARNING:RETURN_VOID: void function return statements are not generally useful
#29197: FILE: drivers/net/igc/base/e1000_nvm.c:57:
+	return;
+}

CHECK:SPACING: spaces preferred around that '*' (ctx:WxV)
#29204: FILE: drivers/net/igc/base/e1000_nvm.c:64:
+s32 igc_null_led_default(struct igc_hw IGC_UNUSEDARG *hw,
                                                      ^

CHECK:SPACING: spaces preferred around that '*' (ctx:WxV)
#29205: FILE: drivers/net/igc/base/e1000_nvm.c:65:
+			   u16 IGC_UNUSEDARG *data)
 			                     ^

CHECK:SPACING: spaces preferred around that '*' (ctx:WxV)
#29219: FILE: drivers/net/igc/base/e1000_nvm.c:79:
+s32 igc_null_write_nvm(struct igc_hw IGC_UNUSEDARG *hw,
                                                    ^

CHECK:SPACING: spaces preferred around that '*' (ctx:WxV)
#29221: FILE: drivers/net/igc/base/e1000_nvm.c:81:
+			 u16 IGC_UNUSEDARG *c)
 			                   ^

WARNING:SUSPECT_CODE_INDENT: suspect code indent for conditional statements (8, 8)
#29279: FILE: drivers/net/igc/base/e1000_nvm.c:139:
+	else
+	if (nvm->type == igc_nvm_eeprom_spi)

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'offset >= nvm->word_size'
#29574: FILE: drivers/net/igc/base/e1000_nvm.c:434:
+	if ((offset >= nvm->word_size) || (words > (nvm->word_size - offset)) ||
+	    (words == 0)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'words == 0'
#29574: FILE: drivers/net/igc/base/e1000_nvm.c:434:
+	if ((offset >= nvm->word_size) || (words > (nvm->word_size - offset)) ||
+	    (words == 0)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'nvm->address_bits == 8'
#29590: FILE: drivers/net/igc/base/e1000_nvm.c:450:
+	if ((nvm->address_bits == 8) && (offset >= 128))

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'offset >= 128'
#29590: FILE: drivers/net/igc/base/e1000_nvm.c:450:
+	if ((nvm->address_bits == 8) && (offset >= 128))

CHECK:SPACING: spaces preferred around that '*' (ctx:VxV)
#29595: FILE: drivers/net/igc/base/e1000_nvm.c:455:
+	igc_shift_out_eec_bits(hw, (u16)(offset*2), nvm->address_bits);
 	                                       ^

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'offset >= nvm->word_size'
#29634: FILE: drivers/net/igc/base/e1000_nvm.c:494:
+	if ((offset >= nvm->word_size) || (words > (nvm->word_size - offset)) ||
+	    (words == 0)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'words == 0'
#29634: FILE: drivers/net/igc/base/e1000_nvm.c:494:
+	if ((offset >= nvm->word_size) || (words > (nvm->word_size - offset)) ||
+	    (words == 0)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'offset >= nvm->word_size'
#29687: FILE: drivers/net/igc/base/e1000_nvm.c:547:
+	if ((offset >= nvm->word_size) || (words > (nvm->word_size - offset)) ||
+	    (words == 0)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'words == 0'
#29687: FILE: drivers/net/igc/base/e1000_nvm.c:547:
+	if ((offset >= nvm->word_size) || (words > (nvm->word_size - offset)) ||
+	    (words == 0)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'offset >= nvm->word_size'
#29735: FILE: drivers/net/igc/base/e1000_nvm.c:595:
+	if ((offset >= nvm->word_size) || (words > (nvm->word_size - offset)) ||
+	    (words == 0)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'words == 0'
#29735: FILE: drivers/net/igc/base/e1000_nvm.c:595:
+	if ((offset >= nvm->word_size) || (words > (nvm->word_size - offset)) ||
+	    (words == 0)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'nvm->address_bits == 8'
#29765: FILE: drivers/net/igc/base/e1000_nvm.c:625:
+		if ((nvm->address_bits == 8) && (offset >= 128))

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'offset >= 128'
#29765: FILE: drivers/net/igc/base/e1000_nvm.c:625:
+		if ((nvm->address_bits == 8) && (offset >= 128))

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'offset >= nvm->word_size'
#29818: FILE: drivers/net/igc/base/e1000_nvm.c:678:
+	if ((offset >= nvm->word_size) || (words > (nvm->word_size - offset)) ||
+	    (words == 0)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'words == 0'
#29818: FILE: drivers/net/igc/base/e1000_nvm.c:678:
+	if ((offset >= nvm->word_size) || (words > (nvm->word_size - offset)) ||
+	    (words == 0)) {

CHECK:SPACING: spaces preferred around that '*' (ctx:VxV)
#30297: FILE: drivers/net/igc/base/e1000_nvm.c:1157:
+		hw->mac.perm_addr[i] = (u8)(rar_low >> (i*8));
 		                                         ^

CHECK:SPACING: spaces preferred around that '+' (ctx:VxV)
#30300: FILE: drivers/net/igc/base/e1000_nvm.c:1160:
+		hw->mac.perm_addr[i+4] = (u8)(rar_high >> (i*8));
 		                   ^

CHECK:SPACING: spaces preferred around that '*' (ctx:VxV)
#30300: FILE: drivers/net/igc/base/e1000_nvm.c:1160:
+		hw->mac.perm_addr[i+4] = (u8)(rar_high >> (i*8));
 		                                            ^

CHECK:SPACING: No space is necessary after a cast
#30332: FILE: drivers/net/igc/base/e1000_nvm.c:1192:
+	if (checksum != (u16) NVM_SUM) {

CHECK:SPACING: No space is necessary after a cast
#30364: FILE: drivers/net/igc/base/e1000_nvm.c:1224:
+	checksum = (u16) NVM_SUM - checksum;

WARNING:BLOCK_COMMENT_STYLE: Block comments use a trailing */ on a separate line
#30408: FILE: drivers/net/igc/base/e1000_nvm.c:1268:
+	 * used to create the nvm images */

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'comb_offset != 0x0'
#30443: FILE: drivers/net/igc/base/e1000_nvm.c:1303:
+		if ((comb_offset != 0x0) &&
+		    (comb_offset != NVM_VER_INVALID)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'comb_offset != NVM_VER_INVALID'
#30443: FILE: drivers/net/igc/base/e1000_nvm.c:1303:
+		if ((comb_offset != 0x0) &&
+		    (comb_offset != NVM_VER_INVALID)) {

CHECK:BRACES: Blank lines aren't necessary after an open brace '{'
#30445: FILE: drivers/net/igc/base/e1000_nvm.c:1305:
+		    (comb_offset != NVM_VER_INVALID)) {
+

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'comb_verh != NVM_VER_INVALID'
#30452: FILE: drivers/net/igc/base/e1000_nvm.c:1312:
+			if ((comb_verh && comb_verl) &&
+			    ((comb_verh != NVM_VER_INVALID) &&
+			     (comb_verl != NVM_VER_INVALID))) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'comb_verl != NVM_VER_INVALID'
#30452: FILE: drivers/net/igc/base/e1000_nvm.c:1312:
+			if ((comb_verh && comb_verl) &&
+			    ((comb_verh != NVM_VER_INVALID) &&
+			     (comb_verl != NVM_VER_INVALID))) {

CHECK:BRACES: Blank lines aren't necessary after an open brace '{'
#30455: FILE: drivers/net/igc/base/e1000_nvm.c:1315:
+			     (comb_verl != NVM_VER_INVALID))) {
+

WARNING:BLOCK_COMMENT_STYLE: Block comments use * on subsequent lines
#30658: FILE: drivers/net/igc/base/e1000_osdep.h:2:
+/******************************************************************************
+

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#30858: FILE: drivers/net/igc/base/e1000_phy.c:8:
+STATIC s32 igc_access_phy_wakeup_reg_bm(struct igc_hw *hw, u32 offset,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#30860: FILE: drivers/net/igc/base/e1000_phy.c:10:
+STATIC u32 igc_get_phy_addr_for_hv_page(u32 page);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#30861: FILE: drivers/net/igc/base/e1000_phy.c:11:
+STATIC s32 igc_access_phy_debug_regs_hv(struct igc_hw *hw, u32 offset,

CHECK:SPACING: spaces preferred around that '*' (ctx:WxV)
#30928: FILE: drivers/net/igc/base/e1000_phy.c:78:
+s32 igc_null_set_page(struct igc_hw IGC_UNUSEDARG *hw,
                                                   ^

CHECK:SPACING: spaces preferred around that '*' (ctx:WxV)
#30942: FILE: drivers/net/igc/base/e1000_phy.c:92:
+s32 igc_null_read_reg(struct igc_hw IGC_UNUSEDARG *hw,
                                                   ^

CHECK:SPACING: spaces preferred around that '*' (ctx:WxV)
#30943: FILE: drivers/net/igc/base/e1000_phy.c:93:
+			u32 IGC_UNUSEDARG offset, u16 IGC_UNUSEDARG *data)
 			                                            ^

CHECK:SPACING: spaces preferred around that '*' (ctx:WxV)
#30954: FILE: drivers/net/igc/base/e1000_phy.c:104:
+void igc_null_phy_generic(struct igc_hw IGC_UNUSEDARG *hw)
                                                       ^

WARNING:RETURN_VOID: void function return statements are not generally useful
#30959: FILE: drivers/net/igc/base/e1000_phy.c:109:
+	return;
+}

CHECK:SPACING: spaces preferred around that '*' (ctx:WxV)
#30966: FILE: drivers/net/igc/base/e1000_phy.c:116:
+s32 igc_null_lplu_state(struct igc_hw IGC_UNUSEDARG *hw,
                                                     ^

CHECK:SPACING: spaces preferred around that '*' (ctx:WxV)
#30980: FILE: drivers/net/igc/base/e1000_phy.c:130:
+s32 igc_null_write_reg(struct igc_hw IGC_UNUSEDARG *hw,
                                                    ^

CHECK:SPACING: spaces preferred around that '*' (ctx:WxV)
#30996: FILE: drivers/net/igc/base/e1000_phy.c:146:
+s32 igc_read_i2c_byte_null(struct igc_hw IGC_UNUSEDARG *hw,
                                                        ^

CHECK:SPACING: spaces preferred around that '*' (ctx:WxV)
#30999: FILE: drivers/net/igc/base/e1000_phy.c:149:
+			     u8 IGC_UNUSEDARG *data)
 			                      ^

CHECK:SPACING: spaces preferred around that '*' (ctx:WxV)
#31014: FILE: drivers/net/igc/base/e1000_phy.c:164:
+s32 igc_write_i2c_byte_null(struct igc_hw IGC_UNUSEDARG *hw,
                                                         ^

CHECK:SPACING: No space is necessary after a cast
#31163: FILE: drivers/net/igc/base/e1000_phy.c:313:
+	*data = (u16) mdic;

WARNING:TYPO_SPELLING: 'overwritting' may be misspelled - perhaps 'overwriting'?
#31303: FILE: drivers/net/igc/base/e1000_phy.c:453:
+	/* Prevent overwritting SFP I2C EEPROM which is at A0 address.*/

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->phy.addr == 0'
#31304: FILE: drivers/net/igc/base/e1000_phy.c:454:
+	if ((hw->phy.addr == 0) || (hw->phy.addr > 7)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->phy.addr > 7'
#31304: FILE: drivers/net/igc/base/e1000_phy.c:454:
+	if ((hw->phy.addr == 0) || (hw->phy.addr > 7)) {

CHECK:SPACING: No space is necessary after a cast
#31393: FILE: drivers/net/igc/base/e1000_phy.c:543:
+	*data = (u8) data_local & 0xFF;

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'phy->type == igc_phy_m88'
#32022: FILE: drivers/net/igc/base/e1000_phy.c:1172:
+	if ((phy->type == igc_phy_m88) &&
+	    (phy->revision < IGC_REVISION_4) &&
+	    (phy->id != BMIGC_E_PHY_ID_R2)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'phy->revision < IGC_REVISION_4'
#32022: FILE: drivers/net/igc/base/e1000_phy.c:1172:
+	if ((phy->type == igc_phy_m88) &&
+	    (phy->revision < IGC_REVISION_4) &&
+	    (phy->id != BMIGC_E_PHY_ID_R2)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'phy->id != BMIGC_E_PHY_ID_R2'
#32022: FILE: drivers/net/igc/base/e1000_phy.c:1172:
+	if ((phy->type == igc_phy_m88) &&
+	    (phy->revision < IGC_REVISION_4) &&
+	    (phy->id != BMIGC_E_PHY_ID_R2)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'phy->revision == IGC_REVISION_2'
#32035: FILE: drivers/net/igc/base/e1000_phy.c:1185:
+		if ((phy->revision == IGC_REVISION_2) &&
+		    (phy->id == M88E1111_I_PHY_ID)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'phy->id == M88E1111_I_PHY_ID'
#32035: FILE: drivers/net/igc/base/e1000_phy.c:1185:
+		if ((phy->revision == IGC_REVISION_2) &&
+		    (phy->id == M88E1111_I_PHY_ID)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'phy->type == igc_phy_bm'
#32053: FILE: drivers/net/igc/base/e1000_phy.c:1203:
+	if ((phy->type == igc_phy_bm) && (phy->id == BMIGC_E_PHY_ID_R2)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'phy->id == BMIGC_E_PHY_ID_R2'
#32053: FILE: drivers/net/igc/base/e1000_phy.c:1203:
+	if ((phy->type == igc_phy_bm) && (phy->id == BMIGC_E_PHY_ID_R2)) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->phy.id == M88E1543_E_PHY_ID'
#32780: FILE: drivers/net/igc/base/e1000_phy.c:1930:
+	if ((hw->phy.id == M88E1543_E_PHY_ID) ||
+	    (hw->phy.id == M88E1512_E_PHY_ID))

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->phy.id == M88E1512_E_PHY_ID'
#32780: FILE: drivers/net/igc/base/e1000_phy.c:1930:
+	if ((hw->phy.id == M88E1543_E_PHY_ID) ||
+	    (hw->phy.id == M88E1512_E_PHY_ID))

CHECK:SPACING: spaces preferred around that '/' (ctx:VxV)
#33243: FILE: drivers/net/igc/base/e1000_phy.c:2393:
+				msec_delay(usec_interval/1000);
 				                        ^

CHECK:SPACING: spaces preferred around that '/' (ctx:VxV)
#33253: FILE: drivers/net/igc/base/e1000_phy.c:2403:
+			msec_delay(usec_interval/1000);
 			                        ^

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'cur_agc_index >= IGP02IGC_CABLE_LENGTH_TABLE_SIZE'
#33463: FILE: drivers/net/igc/base/e1000_phy.c:2613:
+		if ((cur_agc_index >= IGP02IGC_CABLE_LENGTH_TABLE_SIZE) ||
+		    (cur_agc_index == 0))

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'cur_agc_index == 0'
#33463: FILE: drivers/net/igc/base/e1000_phy.c:2613:
+		if ((cur_agc_index >= IGP02IGC_CABLE_LENGTH_TABLE_SIZE) ||
+		    (cur_agc_index == 0))

CHECK:SPACING: spaces preferred around that '*' (ctx:WxV)
#33768: FILE: drivers/net/igc/base/e1000_phy.c:2918:
+s32 igc_get_cfg_done_generic(struct igc_hw IGC_UNUSEDARG *hw)
                                                          ^

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'page >= 768'
#33978: FILE: drivers/net/igc/base/e1000_phy.c:3128:
+	if ((page >= 768) || (page == 0 && reg == 25) || (reg == 31))

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'reg == 31'
#33978: FILE: drivers/net/igc/base/e1000_phy.c:3128:
+	if ((page >= 768) || (page == 0 && reg == 25) || (reg == 31))

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->mac.type == igc_pchlan'
#34321: FILE: drivers/net/igc/base/e1000_phy.c:3471:
+	if ((hw->mac.type == igc_pchlan) &&
+	   (!(IGC_READ_REG(hw, IGC_PHY_CTRL) & IGC_PHY_CTRL_GBE_DISABLE)))

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->phy.type == igc_phy_82578'
#34558: FILE: drivers/net/igc/base/e1000_phy.c:3708:
+		if ((hw->phy.type == igc_phy_82578) &&
+		    (hw->phy.revision >= 1) &&
+		    (hw->phy.addr == 2) &&
+		    !(MAX_PHY_REG_ADDRESS & reg) &&
+		    (data & (1 << 11))) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->phy.revision >= 1'
#34558: FILE: drivers/net/igc/base/e1000_phy.c:3708:
+		if ((hw->phy.type == igc_phy_82578) &&
+		    (hw->phy.revision >= 1) &&
+		    (hw->phy.addr == 2) &&
+		    !(MAX_PHY_REG_ADDRESS & reg) &&
+		    (data & (1 << 11))) {

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around 'hw->phy.addr == 2'
#34558: FILE: drivers/net/igc/base/e1000_phy.c:3708:
+		if ((hw->phy.type == igc_phy_82578) &&
+		    (hw->phy.revision >= 1) &&
+		    (hw->phy.addr == 2) &&
+		    !(MAX_PHY_REG_ADDRESS & reg) &&
+		    (data & (1 << 11))) {

WARNING:TYPO_SPELLING: 'retreived' may be misspelled - perhaps 'retrieved'?
#34659: FILE: drivers/net/igc/base/e1000_phy.c:3809:
+ *  Reads the PHY register at offset and stores the retreived information

CHECK:MACRO_ARG_REUSE: Macro argument reuse 'reg' - possible side-effects?
#35431: FILE: drivers/net/igc/base/e1000_phy.h:152:
+#define BM_PHY_REG(page, reg) \
+	(((reg) & MAX_PHY_REG_ADDRESS) |\
+	 (((page) & 0xFFFF) << PHY_PAGE_SHIFT) |\
+	 (((reg) & ~MAX_PHY_REG_ADDRESS) << (PHY_UPPER_SHIFT - PHY_PAGE_SHIFT)))

CHECK:MACRO_ARG_REUSE: Macro argument reuse 'offset' - possible side-effects?
#35437: FILE: drivers/net/igc/base/e1000_phy.h:158:
+#define BM_PHY_REG_NUM(offset) \
+	((u16)(((offset) & MAX_PHY_REG_ADDRESS) |\
+	 (((offset) >> (PHY_UPPER_SHIFT - PHY_PAGE_SHIFT)) &\
+		~MAX_PHY_REG_ADDRESS)))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_n' - possible side-effects?
#35829: FILE: drivers/net/igc/base/e1000_regs.h:218:
+#define IGC_RDBAL(_n)	((_n) < 4 ? (0x02800 + ((_n) * 0x100)) : \
+			 (0x0C000 + ((_n) * 0x40)))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_n' - possible side-effects?
#35831: FILE: drivers/net/igc/base/e1000_regs.h:220:
+#define IGC_RDBAH(_n)	((_n) < 4 ? (0x02804 + ((_n) * 0x100)) : \
+			 (0x0C004 + ((_n) * 0x40)))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_n' - possible side-effects?
#35833: FILE: drivers/net/igc/base/e1000_regs.h:222:
+#define IGC_RDLEN(_n)	((_n) < 4 ? (0x02808 + ((_n) * 0x100)) : \
+			 (0x0C008 + ((_n) * 0x40)))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_n' - possible side-effects?
#35835: FILE: drivers/net/igc/base/e1000_regs.h:224:
+#define IGC_SRRCTL(_n)	((_n) < 4 ? (0x0280C + ((_n) * 0x100)) : \
+				 (0x0C00C + ((_n) * 0x40)))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_n' - possible side-effects?
#35837: FILE: drivers/net/igc/base/e1000_regs.h:226:
+#define IGC_RDH(_n)	((_n) < 4 ? (0x02810 + ((_n) * 0x100)) : \
+			 (0x0C010 + ((_n) * 0x40)))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_n' - possible side-effects?
#35839: FILE: drivers/net/igc/base/e1000_regs.h:228:
+#define IGC_RXCTL(_n)	((_n) < 4 ? (0x02814 + ((_n) * 0x100)) : \
+			 (0x0C014 + ((_n) * 0x40)))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_n' - possible side-effects?
#35842: FILE: drivers/net/igc/base/e1000_regs.h:231:
+#define IGC_RDT(_n)	((_n) < 4 ? (0x02818 + ((_n) * 0x100)) : \
+			 (0x0C018 + ((_n) * 0x40)))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_n' - possible side-effects?
#35844: FILE: drivers/net/igc/base/e1000_regs.h:233:
+#define IGC_RXDCTL(_n)	((_n) < 4 ? (0x02828 + ((_n) * 0x100)) : \
+				 (0x0C028 + ((_n) * 0x40)))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_n' - possible side-effects?
#35846: FILE: drivers/net/igc/base/e1000_regs.h:235:
+#define IGC_RQDPC(_n)	((_n) < 4 ? (0x02830 + ((_n) * 0x100)) : \
+			 (0x0C030 + ((_n) * 0x40)))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_n' - possible side-effects?
#35848: FILE: drivers/net/igc/base/e1000_regs.h:237:
+#define IGC_TDBAL(_n)	((_n) < 4 ? (0x03800 + ((_n) * 0x100)) : \
+			 (0x0E000 + ((_n) * 0x40)))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_n' - possible side-effects?
#35850: FILE: drivers/net/igc/base/e1000_regs.h:239:
+#define IGC_TDBAH(_n)	((_n) < 4 ? (0x03804 + ((_n) * 0x100)) : \
+			 (0x0E004 + ((_n) * 0x40)))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_n' - possible side-effects?
#35852: FILE: drivers/net/igc/base/e1000_regs.h:241:
+#define IGC_TDLEN(_n)	((_n) < 4 ? (0x03808 + ((_n) * 0x100)) : \
+			 (0x0E008 + ((_n) * 0x40)))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_n' - possible side-effects?
#35854: FILE: drivers/net/igc/base/e1000_regs.h:243:
+#define IGC_TDH(_n)	((_n) < 4 ? (0x03810 + ((_n) * 0x100)) : \
+			 (0x0E010 + ((_n) * 0x40)))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_n' - possible side-effects?
#35856: FILE: drivers/net/igc/base/e1000_regs.h:245:
+#define IGC_TXCTL(_n)	((_n) < 4 ? (0x03814 + ((_n) * 0x100)) : \
+			 (0x0E014 + ((_n) * 0x40)))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_n' - possible side-effects?
#35859: FILE: drivers/net/igc/base/e1000_regs.h:248:
+#define IGC_TDT(_n)	((_n) < 4 ? (0x03818 + ((_n) * 0x100)) : \
+			 (0x0E018 + ((_n) * 0x40)))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_n' - possible side-effects?
#35861: FILE: drivers/net/igc/base/e1000_regs.h:250:
+#define IGC_TXDCTL(_n)	((_n) < 4 ? (0x03828 + ((_n) * 0x100)) : \
+				 (0x0E028 + ((_n) * 0x40)))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_n' - possible side-effects?
#35863: FILE: drivers/net/igc/base/e1000_regs.h:252:
+#define IGC_TDWBAL(_n)	((_n) < 4 ? (0x03838 + ((_n) * 0x100)) : \
+				 (0x0E038 + ((_n) * 0x40)))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_n' - possible side-effects?
#35865: FILE: drivers/net/igc/base/e1000_regs.h:254:
+#define IGC_TDWBAH(_n)	((_n) < 4 ? (0x0383C + ((_n) * 0x100)) : \
+				 (0x0E03C + ((_n) * 0x40)))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_i' - possible side-effects?
#35873: FILE: drivers/net/igc/base/e1000_regs.h:262:
+#define IGC_RAL(_i)		(((_i) <= 15) ? (0x05400 + ((_i) * 8)) : \
+				 (0x054E0 + ((_i - 16) * 8)))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_i' - possible side-effects?
#35875: FILE: drivers/net/igc/base/e1000_regs.h:264:
+#define IGC_RAH(_i)		(((_i) <= 15) ? (0x05404 + ((_i) * 8)) : \
+				 (0x054E4 + ((_i - 16) * 8)))

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#36357: FILE: drivers/net/igc/base/e1000_vf.c:10:
+STATIC s32 igc_init_nvm_params_vf(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#36358: FILE: drivers/net/igc/base/e1000_vf.c:11:
+STATIC void igc_release_vf(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#36359: FILE: drivers/net/igc/base/e1000_vf.c:12:
+STATIC s32 igc_acquire_vf(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#36360: FILE: drivers/net/igc/base/e1000_vf.c:13:
+STATIC s32 igc_setup_link_vf(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#36361: FILE: drivers/net/igc/base/e1000_vf.c:14:
+STATIC s32 igc_get_bus_info_pcie_vf(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#36362: FILE: drivers/net/igc/base/e1000_vf.c:15:
+STATIC s32 igc_init_mac_params_vf(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#36363: FILE: drivers/net/igc/base/e1000_vf.c:16:
+STATIC s32 igc_check_for_link_vf(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#36364: FILE: drivers/net/igc/base/e1000_vf.c:17:
+STATIC s32 igc_get_link_up_info_vf(struct igc_hw *hw, u16 *speed,

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#36366: FILE: drivers/net/igc/base/e1000_vf.c:19:
+STATIC s32 igc_init_hw_vf(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#36367: FILE: drivers/net/igc/base/e1000_vf.c:20:
+STATIC s32 igc_reset_hw_vf(struct igc_hw *hw);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#36368: FILE: drivers/net/igc/base/e1000_vf.c:21:
+STATIC void igc_update_mc_addr_list_vf(struct igc_hw *hw, u8 *, u32);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u8 *' should also have an identifier name
#36368: FILE: drivers/net/igc/base/e1000_vf.c:21:
+STATIC void igc_update_mc_addr_list_vf(struct igc_hw *hw, u8 *, u32);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u32' should also have an identifier name
#36368: FILE: drivers/net/igc/base/e1000_vf.c:21:
+STATIC void igc_update_mc_addr_list_vf(struct igc_hw *hw, u8 *, u32);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#36369: FILE: drivers/net/igc/base/e1000_vf.c:22:
+STATIC int  igc_rar_set_vf(struct igc_hw *, u8 *, u32);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#36369: FILE: drivers/net/igc/base/e1000_vf.c:22:
+STATIC int  igc_rar_set_vf(struct igc_hw *, u8 *, u32);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u8 *' should also have an identifier name
#36369: FILE: drivers/net/igc/base/e1000_vf.c:22:
+STATIC int  igc_rar_set_vf(struct igc_hw *, u8 *, u32);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u32' should also have an identifier name
#36369: FILE: drivers/net/igc/base/e1000_vf.c:22:
+STATIC int  igc_rar_set_vf(struct igc_hw *, u8 *, u32);

WARNING:AVOID_EXTERNS: externs should be avoided in .c files
#36370: FILE: drivers/net/igc/base/e1000_vf.c:23:
+STATIC s32 igc_read_mac_addr_vf(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#36370: FILE: drivers/net/igc/base/e1000_vf.c:23:
+STATIC s32 igc_read_mac_addr_vf(struct igc_hw *);

CHECK:SPACING: spaces preferred around that '*' (ctx:WxV)
#36479: FILE: drivers/net/igc/base/e1000_vf.c:132:
+STATIC s32 igc_acquire_vf(struct igc_hw IGC_UNUSEDARG *hw)
                                                       ^

CHECK:SPACING: spaces preferred around that '*' (ctx:WxV)
#36493: FILE: drivers/net/igc/base/e1000_vf.c:146:
+STATIC void igc_release_vf(struct igc_hw IGC_UNUSEDARG *hw)
                                                        ^

WARNING:RETURN_VOID: void function return statements are not generally useful
#36497: FILE: drivers/net/igc/base/e1000_vf.c:150:
+	return;
+}

CHECK:SPACING: spaces preferred around that '*' (ctx:WxV)
#36505: FILE: drivers/net/igc/base/e1000_vf.c:158:
+STATIC s32 igc_setup_link_vf(struct igc_hw IGC_UNUSEDARG *hw)
                                                          ^

CHECK:SPACING: No space is necessary after a cast
#36696: FILE: drivers/net/igc/base/e1000_vf.c:349:
+				  (((u16) mc_addr[5]) << bit_shift)));

WARNING:BLOCK_COMMENT_STYLE: Block comments use a trailing */ on a separate line
#36879: FILE: drivers/net/igc/base/e1000_vf.c:532:
+	 * until we are called again and don't report an error */

WARNING:BLOCK_COMMENT_STYLE: Block comments use a trailing */ on a separate line
#36893: FILE: drivers/net/igc/base/e1000_vf.c:546:
+	 * if we failed then we will need to reinit */

WARNING:BLOCK_COMMENT_STYLE: Block comments use a trailing */ on a separate line
#36900: FILE: drivers/net/igc/base/e1000_vf.c:553:
+	 * longer need to check for link */

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_n' - possible side-effects?
#36936: FILE: drivers/net/igc/base/e1000_vf.h:24:
+#define IGC_SRRCTL(_n)	((_n) < 4 ? (0x0280C + ((_n) * 0x100)) : \
+				 (0x0C00C + ((_n) * 0x40)))

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#37083: FILE: drivers/net/igc/base/e1000_vf.h:171:
+	s32  (*init_params)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#37084: FILE: drivers/net/igc/base/e1000_vf.h:172:
+	s32  (*check_for_link)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#37085: FILE: drivers/net/igc/base/e1000_vf.h:173:
+	void (*clear_vfta)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#37086: FILE: drivers/net/igc/base/e1000_vf.h:174:
+	s32  (*get_bus_info)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#37087: FILE: drivers/net/igc/base/e1000_vf.h:175:
+	s32  (*get_link_up_info)(struct igc_hw *, u16 *, u16 *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16 *' should also have an identifier name
#37087: FILE: drivers/net/igc/base/e1000_vf.h:175:
+	s32  (*get_link_up_info)(struct igc_hw *, u16 *, u16 *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16 *' should also have an identifier name
#37087: FILE: drivers/net/igc/base/e1000_vf.h:175:
+	s32  (*get_link_up_info)(struct igc_hw *, u16 *, u16 *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#37088: FILE: drivers/net/igc/base/e1000_vf.h:176:
+	void (*update_mc_addr_list)(struct igc_hw *, u8 *, u32);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u8 *' should also have an identifier name
#37088: FILE: drivers/net/igc/base/e1000_vf.h:176:
+	void (*update_mc_addr_list)(struct igc_hw *, u8 *, u32);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u32' should also have an identifier name
#37088: FILE: drivers/net/igc/base/e1000_vf.h:176:
+	void (*update_mc_addr_list)(struct igc_hw *, u8 *, u32);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#37089: FILE: drivers/net/igc/base/e1000_vf.h:177:
+	s32  (*reset_hw)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#37090: FILE: drivers/net/igc/base/e1000_vf.h:178:
+	s32  (*init_hw)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#37091: FILE: drivers/net/igc/base/e1000_vf.h:179:
+	s32  (*setup_link)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#37092: FILE: drivers/net/igc/base/e1000_vf.h:180:
+	void (*write_vfta)(struct igc_hw *, u32, u32);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u32' should also have an identifier name
#37092: FILE: drivers/net/igc/base/e1000_vf.h:180:
+	void (*write_vfta)(struct igc_hw *, u32, u32);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u32' should also have an identifier name
#37092: FILE: drivers/net/igc/base/e1000_vf.h:180:
+	void (*write_vfta)(struct igc_hw *, u32, u32);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#37093: FILE: drivers/net/igc/base/e1000_vf.h:181:
+	int  (*rar_set)(struct igc_hw *, u8*, u32);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u8*' should also have an identifier name
#37093: FILE: drivers/net/igc/base/e1000_vf.h:181:
+	int  (*rar_set)(struct igc_hw *, u8*, u32);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u32' should also have an identifier name
#37093: FILE: drivers/net/igc/base/e1000_vf.h:181:
+	int  (*rar_set)(struct igc_hw *, u8*, u32);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#37094: FILE: drivers/net/igc/base/e1000_vf.h:182:
+	s32  (*read_mac_addr)(struct igc_hw *);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#37112: FILE: drivers/net/igc/base/e1000_vf.h:200:
+	s32 (*read)(struct igc_hw *, u32 *, u16,  u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u32 *' should also have an identifier name
#37112: FILE: drivers/net/igc/base/e1000_vf.h:200:
+	s32 (*read)(struct igc_hw *, u32 *, u16,  u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#37112: FILE: drivers/net/igc/base/e1000_vf.h:200:
+	s32 (*read)(struct igc_hw *, u32 *, u16,  u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#37112: FILE: drivers/net/igc/base/e1000_vf.h:200:
+	s32 (*read)(struct igc_hw *, u32 *, u16,  u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#37113: FILE: drivers/net/igc/base/e1000_vf.h:201:
+	s32 (*write)(struct igc_hw *, u32 *, u16, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u32 *' should also have an identifier name
#37113: FILE: drivers/net/igc/base/e1000_vf.h:201:
+	s32 (*write)(struct igc_hw *, u32 *, u16, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#37113: FILE: drivers/net/igc/base/e1000_vf.h:201:
+	s32 (*write)(struct igc_hw *, u32 *, u16, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#37113: FILE: drivers/net/igc/base/e1000_vf.h:201:
+	s32 (*write)(struct igc_hw *, u32 *, u16, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#37114: FILE: drivers/net/igc/base/e1000_vf.h:202:
+	s32 (*read_posted)(struct igc_hw *, u32 *, u16,  u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u32 *' should also have an identifier name
#37114: FILE: drivers/net/igc/base/e1000_vf.h:202:
+	s32 (*read_posted)(struct igc_hw *, u32 *, u16,  u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#37114: FILE: drivers/net/igc/base/e1000_vf.h:202:
+	s32 (*read_posted)(struct igc_hw *, u32 *, u16,  u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#37114: FILE: drivers/net/igc/base/e1000_vf.h:202:
+	s32 (*read_posted)(struct igc_hw *, u32 *, u16,  u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#37115: FILE: drivers/net/igc/base/e1000_vf.h:203:
+	s32 (*write_posted)(struct igc_hw *, u32 *, u16, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u32 *' should also have an identifier name
#37115: FILE: drivers/net/igc/base/e1000_vf.h:203:
+	s32 (*write_posted)(struct igc_hw *, u32 *, u16, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#37115: FILE: drivers/net/igc/base/e1000_vf.h:203:
+	s32 (*write_posted)(struct igc_hw *, u32 *, u16, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#37115: FILE: drivers/net/igc/base/e1000_vf.h:203:
+	s32 (*write_posted)(struct igc_hw *, u32 *, u16, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#37116: FILE: drivers/net/igc/base/e1000_vf.h:204:
+	s32 (*check_for_msg)(struct igc_hw *, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#37116: FILE: drivers/net/igc/base/e1000_vf.h:204:
+	s32 (*check_for_msg)(struct igc_hw *, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#37117: FILE: drivers/net/igc/base/e1000_vf.h:205:
+	s32 (*check_for_ack)(struct igc_hw *, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#37117: FILE: drivers/net/igc/base/e1000_vf.h:205:
+	s32 (*check_for_ack)(struct igc_hw *, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#37118: FILE: drivers/net/igc/base/e1000_vf.h:206:
+	s32 (*check_for_rst)(struct igc_hw *, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#37118: FILE: drivers/net/igc/base/e1000_vf.h:206:
+	s32 (*check_for_rst)(struct igc_hw *, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#37175: FILE: drivers/net/igc/base/e1000_vf.h:263:
+void igc_vfta_set_vf(struct igc_hw *, u16, bool);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#37175: FILE: drivers/net/igc/base/e1000_vf.h:263:
+void igc_vfta_set_vf(struct igc_hw *, u16, bool);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'bool' should also have an identifier name
#37175: FILE: drivers/net/igc/base/e1000_vf.h:263:
+void igc_vfta_set_vf(struct igc_hw *, u16, bool);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#37176: FILE: drivers/net/igc/base/e1000_vf.h:264:
+void igc_rlpml_set_vf(struct igc_hw *, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'u16' should also have an identifier name
#37176: FILE: drivers/net/igc/base/e1000_vf.h:264:
+void igc_rlpml_set_vf(struct igc_hw *, u16);

WARNING:FUNCTION_ARGUMENTS: function definition argument 'struct igc_hw *' should also have an identifier name
#37177: FILE: drivers/net/igc/base/e1000_vf.h:265:
+s32 igc_promisc_set_vf(struct igc_hw *, enum igc_promisc_type);

total: 0 errors, 535 warnings, 288 checks, 36797 lines checked
Warning in /drivers/net/igc/base/e1000_osdep.h:
Using rte_panic/rte_exit


More information about the test-report mailing list