Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3fb54d75 authored by Wolfram Sang's avatar Wolfram Sang Committed by Greg Kroah-Hartman
Browse files

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: default avatarWolfram Sang <wsa@the-dreams.de>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 4c0d46d2
Loading
Loading
Loading
Loading
+5 −7
Original line number Diff line number Diff line
@@ -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");

		trx_device_exit(priv);
		if (priv->ks_wlan_hw.read_buf) {