On Wed, Nov 7, 2018 at 7:48 PM Chi-Hsien Lin <Chi-Hsien.Lin@xxxxxxxxxxx> wrote: > > From: Wright Feng <wright.feng@xxxxxxxxxxx> > > The firmware does not respond ARP request and causes ping failure with > following steps: > > 1. Bring up interface > ifconfig wlan0 up or start wpa_supplicant > 2. Set the IP address > ifconfig wlan0 192.168.100.10 > 3. Bring down interface or > ifconfig wlan0 down or kill wpa_supplicant > 4. Bring up interface again and set the same IP address > 5. Connect to AP(192.168.100.1) and ping to AP will be failed. > > FMAC clears arp_hostip when bringing down the interface, but not set it > back if setting the same IP address. We are able to see the IP address > in interface info(inconfig wlan0) but the ping still cannot work because > the firmware ARP offload does not respond the ARP request. > Because of that, we remove "arp_hostip_clear" from function > "brcmf_netdev_stop" Shouldn't brcmf_inetaddr_changed get called when the interface up again? Thanks, - Franky > > Signed-off-by: Wright Feng <wright.feng@xxxxxxxxxxx> > Signed-off-by: Chi-Hsien Lin <chi-hsien.lin@xxxxxxxxxxx> > --- > drivers/net/wireless/broadcom/brcm80211/brcmfmac/core.c | 2 -- > 1 file changed, 2 deletions(-) > > diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/core.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/core.c > index b1f702faff4f..e1666cf3801c 100644 > --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/core.c > +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/core.c > @@ -533,8 +533,6 @@ static int brcmf_netdev_stop(struct net_device *ndev) > > brcmf_cfg80211_down(ndev); > > - brcmf_fil_iovar_data_set(ifp, "arp_hostip_clear", NULL, 0); > - > brcmf_net_setcarrier(ifp, false); > > return 0; > -- > 2.1.0 >