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

Commit 6030308e authored by Paul M Stillwell Jr's avatar Paul M Stillwell Jr Committed by Jeff Kirsher
Browse files

i40e: use register for XL722 control register read/write



The XL722 doesn't support the AQ command to read/write the control
register so enable it to bypass the check and use the direct read/write
method.

Change-ID: Iefecc737b57207485c90845af5989d5af518bf16
Signed-off-by: default avatarPaul M Stillwell Jr <paul.m.stillwell.jr@intel.com>
Tested-by: default avatarAndrew Bowers <andrewx.bowers@intel.com>
Signed-off-by: default avatarJeff Kirsher <jeffrey.t.kirsher@intel.com>
parent aca955d8
Loading
Loading
Loading
Loading
+6 −2
Original line number Original line Diff line number Diff line
@@ -4963,7 +4963,9 @@ u32 i40e_read_rx_ctl(struct i40e_hw *hw, u32 reg_addr)
	int retry = 5;
	int retry = 5;
	u32 val = 0;
	u32 val = 0;


	use_register = (hw->aq.api_maj_ver == 1) && (hw->aq.api_min_ver < 5);
	use_register = (((hw->aq.api_maj_ver == 1) &&
			(hw->aq.api_min_ver < 5)) ||
			(hw->mac.type == I40E_MAC_X722));
	if (!use_register) {
	if (!use_register) {
do_retry:
do_retry:
		status = i40e_aq_rx_ctl_read_register(hw, reg_addr, &val, NULL);
		status = i40e_aq_rx_ctl_read_register(hw, reg_addr, &val, NULL);
@@ -5022,7 +5024,9 @@ void i40e_write_rx_ctl(struct i40e_hw *hw, u32 reg_addr, u32 reg_val)
	bool use_register;
	bool use_register;
	int retry = 5;
	int retry = 5;


	use_register = (hw->aq.api_maj_ver == 1) && (hw->aq.api_min_ver < 5);
	use_register = (((hw->aq.api_maj_ver == 1) &&
			(hw->aq.api_min_ver < 5)) ||
			(hw->mac.type == I40E_MAC_X722));
	if (!use_register) {
	if (!use_register) {
do_retry:
do_retry:
		status = i40e_aq_rx_ctl_write_register(hw, reg_addr,
		status = i40e_aq_rx_ctl_write_register(hw, reg_addr,
+6 −2
Original line number Original line Diff line number Diff line
@@ -958,7 +958,9 @@ u32 i40evf_read_rx_ctl(struct i40e_hw *hw, u32 reg_addr)
	int retry = 5;
	int retry = 5;
	u32 val = 0;
	u32 val = 0;


	use_register = (hw->aq.api_maj_ver == 1) && (hw->aq.api_min_ver < 5);
	use_register = (((hw->aq.api_maj_ver == 1) &&
			(hw->aq.api_min_ver < 5)) ||
			(hw->mac.type == I40E_MAC_X722));
	if (!use_register) {
	if (!use_register) {
do_retry:
do_retry:
		status = i40evf_aq_rx_ctl_read_register(hw, reg_addr,
		status = i40evf_aq_rx_ctl_read_register(hw, reg_addr,
@@ -1019,7 +1021,9 @@ void i40evf_write_rx_ctl(struct i40e_hw *hw, u32 reg_addr, u32 reg_val)
	bool use_register;
	bool use_register;
	int retry = 5;
	int retry = 5;


	use_register = (hw->aq.api_maj_ver == 1) && (hw->aq.api_min_ver < 5);
	use_register = (((hw->aq.api_maj_ver == 1) &&
			(hw->aq.api_min_ver < 5)) ||
			(hw->mac.type == I40E_MAC_X722));
	if (!use_register) {
	if (!use_register) {
do_retry:
do_retry:
		status = i40evf_aq_rx_ctl_write_register(hw, reg_addr,
		status = i40evf_aq_rx_ctl_write_register(hw, reg_addr,