@@ -763,7 +763,9 @@ static void _rtl_eri_write(struct rtl8169_private *tp, int addr, u32 mask,
763
763
{
764
764
u32 cmd = ERIAR_WRITE_CMD | type | mask | addr ;
765
765
766
- BUG_ON ((addr & 3 ) || (mask == 0 ));
766
+ if (WARN (addr & 3 || !mask , "addr: 0x%x, mask: 0x%08x\n" , addr , mask ))
767
+ return ;
768
+
767
769
RTL_W32 (tp , ERIDR , val );
768
770
r8168fp_adjust_ocp_cmd (tp , & cmd , type );
769
771
RTL_W32 (tp , ERIAR , cmd );
@@ -810,14 +812,9 @@ static void rtl_eri_clear_bits(struct rtl8169_private *tp, int addr, u32 m)
810
812
rtl_w0w1_eri (tp , addr , 0 , m );
811
813
}
812
814
813
- static bool rtl_ocp_reg_failure (struct rtl8169_private * tp , u32 reg )
815
+ static bool rtl_ocp_reg_failure (u32 reg )
814
816
{
815
- if (reg & 0xffff0001 ) {
816
- if (net_ratelimit ())
817
- netdev_err (tp -> dev , "Invalid ocp reg %x!\n" , reg );
818
- return true;
819
- }
820
- return false;
817
+ return WARN_ONCE (reg & 0xffff0001 , "Invalid ocp reg %x!\n" , reg );
821
818
}
822
819
823
820
DECLARE_RTL_COND (rtl_ocp_gphy_cond )
@@ -827,7 +824,7 @@ DECLARE_RTL_COND(rtl_ocp_gphy_cond)
827
824
828
825
static void r8168_phy_ocp_write (struct rtl8169_private * tp , u32 reg , u32 data )
829
826
{
830
- if (rtl_ocp_reg_failure (tp , reg ))
827
+ if (rtl_ocp_reg_failure (reg ))
831
828
return ;
832
829
833
830
RTL_W32 (tp , GPHY_OCP , OCPAR_FLAG | (reg << 15 ) | data );
@@ -837,7 +834,7 @@ static void r8168_phy_ocp_write(struct rtl8169_private *tp, u32 reg, u32 data)
837
834
838
835
static int r8168_phy_ocp_read (struct rtl8169_private * tp , u32 reg )
839
836
{
840
- if (rtl_ocp_reg_failure (tp , reg ))
837
+ if (rtl_ocp_reg_failure (reg ))
841
838
return 0 ;
842
839
843
840
RTL_W32 (tp , GPHY_OCP , reg << 15 );
@@ -848,15 +845,15 @@ static int r8168_phy_ocp_read(struct rtl8169_private *tp, u32 reg)
848
845
849
846
static void r8168_mac_ocp_write (struct rtl8169_private * tp , u32 reg , u32 data )
850
847
{
851
- if (rtl_ocp_reg_failure (tp , reg ))
848
+ if (rtl_ocp_reg_failure (reg ))
852
849
return ;
853
850
854
851
RTL_W32 (tp , OCPDR , OCPAR_FLAG | (reg << 15 ) | data );
855
852
}
856
853
857
854
static u16 r8168_mac_ocp_read (struct rtl8169_private * tp , u32 reg )
858
855
{
859
- if (rtl_ocp_reg_failure (tp , reg ))
856
+ if (rtl_ocp_reg_failure (reg ))
860
857
return 0 ;
861
858
862
859
RTL_W32 (tp , OCPDR , reg << 15 );
@@ -4895,7 +4892,7 @@ static void rtl_shutdown(struct pci_dev *pdev)
4895
4892
rtl_wol_shutdown_quirk (tp );
4896
4893
}
4897
4894
4898
- pci_wake_from_d3 (pdev , true );
4895
+ pci_wake_from_d3 (pdev , tp -> saved_wolopts );
4899
4896
pci_set_power_state (pdev , PCI_D3hot );
4900
4897
}
4901
4898
}
0 commit comments