diff --git a/drivers/switch/switch_class.c b/drivers/switch/switch_class.c index e05fc2591147..f9cf2b4c16df 100644 --- a/drivers/switch/switch_class.c +++ b/drivers/switch/switch_class.c @@ -151,8 +151,8 @@ void switch_dev_unregister(struct switch_dev *sdev) { device_remove_file(sdev->dev, &dev_attr_name); device_remove_file(sdev->dev, &dev_attr_state); - device_destroy(switch_class, MKDEV(0, sdev->index)); dev_set_drvdata(sdev->dev, NULL); + device_destroy(switch_class, MKDEV(0, sdev->index)); } EXPORT_SYMBOL_GPL(switch_dev_unregister);