|
@@ -1032,8 +1032,10 @@ static int rt2x00lib_initialize(struct rt2x00_dev *rt2x00dev)
|
|
|
* Initialize the device.
|
|
|
*/
|
|
|
status = rt2x00dev->ops->lib->initialize(rt2x00dev);
|
|
|
- if (status)
|
|
|
- goto exit;
|
|
|
+ if (status) {
|
|
|
+ rt2x00queue_uninitialize(rt2x00dev);
|
|
|
+ return status;
|
|
|
+ }
|
|
|
|
|
|
__set_bit(DEVICE_INITIALIZED, &rt2x00dev->flags);
|
|
|
|
|
@@ -1043,11 +1045,6 @@ static int rt2x00lib_initialize(struct rt2x00_dev *rt2x00dev)
|
|
|
rt2x00rfkill_register(rt2x00dev);
|
|
|
|
|
|
return 0;
|
|
|
-
|
|
|
-exit:
|
|
|
- rt2x00lib_uninitialize(rt2x00dev);
|
|
|
-
|
|
|
- return status;
|
|
|
}
|
|
|
|
|
|
int rt2x00lib_start(struct rt2x00_dev *rt2x00dev)
|