|
@@ -384,6 +384,13 @@ static int sierra_net_parse_lsi(struct usbnet *dev, char *data, int datalen)
|
|
|
return -1;
|
|
|
}
|
|
|
|
|
|
+ /* Validate the session state */
|
|
|
+ if (lsi->session_state == SIERRA_NET_SESSION_IDLE) {
|
|
|
+ netdev_err(dev->net, "Session idle, 0x%02x\n",
|
|
|
+ lsi->session_state);
|
|
|
+ return 0;
|
|
|
+ }
|
|
|
+
|
|
|
/* Validate the protocol - only support UMTS for now */
|
|
|
if (lsi->protocol == SIERRA_NET_PROTOCOL_UMTS) {
|
|
|
struct lsi_umts_single *single = (struct lsi_umts_single *)lsi;
|
|
@@ -417,13 +424,6 @@ static int sierra_net_parse_lsi(struct usbnet *dev, char *data, int datalen)
|
|
|
return 0;
|
|
|
}
|
|
|
|
|
|
- /* Validate the session state */
|
|
|
- if (lsi->session_state == SIERRA_NET_SESSION_IDLE) {
|
|
|
- netdev_err(dev->net, "Session idle, 0x%02x\n",
|
|
|
- lsi->session_state);
|
|
|
- return 0;
|
|
|
- }
|
|
|
-
|
|
|
/* Set link_sense true */
|
|
|
return 1;
|
|
|
}
|