mirror of https://gitee.com/openkylin/linux.git
staging: ks7010: bail out when registering netdevice fails
There is no need to continue then. Also, this enables us to remove an ugly static variable. Signed-off-by: Wolfram Sang <wsa@the-dreams.de> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
4c0d46d2cf
commit
3fb54d7590
|
@ -25,8 +25,6 @@
|
|||
#define KS7010_IO_BLOCK_SIZE 512
|
||||
#define KS7010_MAX_CLOCK 25000000
|
||||
|
||||
static int reg_net = 0;
|
||||
|
||||
static const struct sdio_device_id ks7010_sdio_ids[] = {
|
||||
{SDIO_DEVICE(SDIO_VENDOR_ID_KS_CODE_A, SDIO_DEVICE_ID_KS_7010)},
|
||||
{SDIO_DEVICE(SDIO_VENDOR_ID_KS_CODE_B, SDIO_DEVICE_ID_KS_7010)},
|
||||
|
@ -936,8 +934,6 @@ static void ks7010_card_init(struct ks_wlan_private *priv)
|
|||
if (priv->dev_state >= DEVICE_STATE_PREINIT) {
|
||||
DPRINTK(1, "DEVICE READY!!\n");
|
||||
priv->dev_state = DEVICE_STATE_READY;
|
||||
reg_net = register_netdev(priv->net_dev);
|
||||
DPRINTK(3, "register_netdev=%d\n", reg_net);
|
||||
} else {
|
||||
DPRINTK(1, "dev_state=%d\n", priv->dev_state);
|
||||
}
|
||||
|
@ -1115,6 +1111,10 @@ static int ks7010_sdio_probe(struct sdio_func *func,
|
|||
INIT_DELAYED_WORK(&priv->ks_wlan_hw.rw_wq, ks7010_rw_function);
|
||||
ks7010_card_init(priv);
|
||||
|
||||
ret = register_netdev(priv->net_dev);
|
||||
if (ret)
|
||||
goto error_free_read_buf;
|
||||
|
||||
return 0;
|
||||
|
||||
error_free_read_buf:
|
||||
|
@ -1196,9 +1196,7 @@ static void ks7010_sdio_remove(struct sdio_func *func)
|
|||
hostif_exit(priv);
|
||||
DPRINTK(1, "hostif_exit\n");
|
||||
|
||||
if (!reg_net)
|
||||
unregister_netdev(netdev);
|
||||
DPRINTK(1, "unregister_netdev\n");
|
||||
unregister_netdev(netdev);
|
||||
|
||||
trx_device_exit(priv);
|
||||
if (priv->ks_wlan_hw.read_buf) {
|
||||
|
|
Loading…
Reference in New Issue