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:
Wolfram Sang 2016-06-17 10:46:58 +02:00 committed by Greg Kroah-Hartman
parent 4c0d46d2cf
commit 3fb54d7590
1 changed files with 5 additions and 7 deletions

View File

@ -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) {