From: Luis R. Rodriguez Date: Tue, 1 Apr 2008 19:17:36 +0000 (-0400) Subject: prism54: set carrier flags correctly X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=7b463ced6;p=openwrt%2Fstaging%2Fblogic.git prism54: set carrier flags correctly > prism54 should set the carrier flags correctly when it thinks the > link can be used. Agreed, so sure, this is OK but I rather we turn the carrier on or off *before* sending an event, like this. Signed-off-by: Roy Marples Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville --- diff --git a/drivers/net/wireless/prism54/isl_ioctl.c b/drivers/net/wireless/prism54/isl_ioctl.c index 2e25e190f334..e5b3c282009c 100644 --- a/drivers/net/wireless/prism54/isl_ioctl.c +++ b/drivers/net/wireless/prism54/isl_ioctl.c @@ -2081,6 +2081,7 @@ link_changed(struct net_device *ndev, u32 bitrate) islpci_private *priv = netdev_priv(ndev); if (bitrate) { + netif_carrier_on(ndev); if (priv->iw_mode == IW_MODE_INFRA) { union iwreq_data uwrq; prism54_get_wap(ndev, NULL, (struct sockaddr *) &uwrq, @@ -2089,8 +2090,10 @@ link_changed(struct net_device *ndev, u32 bitrate) } else send_simple_event(netdev_priv(ndev), "Link established"); - } else + } else { + netif_carrier_off(ndev); send_simple_event(netdev_priv(ndev), "Link lost"); + } } /* Beacon/ProbeResp payload header */ diff --git a/drivers/net/wireless/prism54/islpci_dev.c b/drivers/net/wireless/prism54/islpci_dev.c index eb7c1c6bcd8a..04c2638d75ad 100644 --- a/drivers/net/wireless/prism54/islpci_dev.c +++ b/drivers/net/wireless/prism54/islpci_dev.c @@ -387,7 +387,9 @@ islpci_open(struct net_device *ndev) } netif_start_queue(ndev); -/* netif_mark_up( ndev ); */ + + /* Turn off carrier unless we know we have associated */ + netif_carrier_off(ndev); return 0; }