diff --git a/target/linux/generic/files/drivers/net/phy/rtl8366_smi.c b/target/linux/generic/files/drivers/net/phy/rtl8366_smi.c index 9903269390..be85274e78 100644 --- a/target/linux/generic/files/drivers/net/phy/rtl8366_smi.c +++ b/target/linux/generic/files/drivers/net/phy/rtl8366_smi.c @@ -25,6 +25,9 @@ #define RTL8366_SMI_ACK_RETRY_COUNT 5 +#define RTL8366_SMI_HW_STOP_DELAY 25 /* msecs */ +#define RTL8366_SMI_HW_START_DELAY 100 /* msecs */ + static inline void rtl8366_smi_clk_delay(struct rtl8366_smi *smi) { ndelay(smi->clk_delay); @@ -312,9 +315,9 @@ static int rtl8366_reset(struct rtl8366_smi *smi) { if (smi->hw_reset) { smi->hw_reset(true); - msleep(25); + msleep(RTL8366_SMI_HW_STOP_DELAY); smi->hw_reset(false); - msleep(25); + msleep(RTL8366_SMI_HW_START_DELAY); return 0; } @@ -1244,7 +1247,7 @@ static int __rtl8366_smi_init(struct rtl8366_smi *smi, const char *name) /* start the switch */ if (smi->hw_reset) { smi->hw_reset(false); - msleep(25); + msleep(RTL8366_SMI_HW_START_DELAY); } return 0;