diff options
author | Kirill Tkhai <tkhai@yandex.ru> | 2013-07-29 09:34:37 -0400 |
---|---|---|
committer | Matthew Garrett <matthew.garrett@nebula.com> | 2013-09-05 08:51:59 -0400 |
commit | 5b5c2b3c9b0585350d2da62bc4b990d9bf836d94 (patch) | |
tree | bee0947aaa812e43becb6c8884a6fbc4a1069b58 /drivers/platform | |
parent | 0db7fd969e567dc0e4d2a7138896d6860f9614d5 (diff) |
hp_wmi: Fix unregister order in hp_wmi_rfkill_setup()
Register order is:
wifi
bluetooth
wwan
gps
So unregister order must be:
gps
wwan
bluetiith
wifi
But currently gps and wwan are swapped. Fix that.
Also fix goto links.
Signed-off-by: Kirill Tkhai <tkhai@yandex.ru>
CC: Matthew Garrett <matthew.garrett@nebula.com>
Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
Diffstat (limited to 'drivers/platform')
-rw-r--r-- | drivers/platform/x86/hp-wmi.c | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/drivers/platform/x86/hp-wmi.c b/drivers/platform/x86/hp-wmi.c index d6970f47ae72..1c86fa0857c8 100644 --- a/drivers/platform/x86/hp-wmi.c +++ b/drivers/platform/x86/hp-wmi.c | |||
@@ -725,7 +725,7 @@ static int hp_wmi_rfkill_setup(struct platform_device *device) | |||
725 | (void *) HPWMI_WWAN); | 725 | (void *) HPWMI_WWAN); |
726 | if (!wwan_rfkill) { | 726 | if (!wwan_rfkill) { |
727 | err = -ENOMEM; | 727 | err = -ENOMEM; |
728 | goto register_gps_error; | 728 | goto register_bluetooth_error; |
729 | } | 729 | } |
730 | rfkill_init_sw_state(wwan_rfkill, | 730 | rfkill_init_sw_state(wwan_rfkill, |
731 | hp_wmi_get_sw_state(HPWMI_WWAN)); | 731 | hp_wmi_get_sw_state(HPWMI_WWAN)); |
@@ -733,7 +733,7 @@ static int hp_wmi_rfkill_setup(struct platform_device *device) | |||
733 | hp_wmi_get_hw_state(HPWMI_WWAN)); | 733 | hp_wmi_get_hw_state(HPWMI_WWAN)); |
734 | err = rfkill_register(wwan_rfkill); | 734 | err = rfkill_register(wwan_rfkill); |
735 | if (err) | 735 | if (err) |
736 | goto register_wwan_err; | 736 | goto register_wwan_error; |
737 | } | 737 | } |
738 | 738 | ||
739 | if (wireless & 0x8) { | 739 | if (wireless & 0x8) { |
@@ -743,7 +743,7 @@ static int hp_wmi_rfkill_setup(struct platform_device *device) | |||
743 | (void *) HPWMI_GPS); | 743 | (void *) HPWMI_GPS); |
744 | if (!gps_rfkill) { | 744 | if (!gps_rfkill) { |
745 | err = -ENOMEM; | 745 | err = -ENOMEM; |
746 | goto register_bluetooth_error; | 746 | goto register_wwan_error; |
747 | } | 747 | } |
748 | rfkill_init_sw_state(gps_rfkill, | 748 | rfkill_init_sw_state(gps_rfkill, |
749 | hp_wmi_get_sw_state(HPWMI_GPS)); | 749 | hp_wmi_get_sw_state(HPWMI_GPS)); |
@@ -755,16 +755,16 @@ static int hp_wmi_rfkill_setup(struct platform_device *device) | |||
755 | } | 755 | } |
756 | 756 | ||
757 | return 0; | 757 | return 0; |
758 | register_wwan_err: | ||
759 | rfkill_destroy(wwan_rfkill); | ||
760 | wwan_rfkill = NULL; | ||
761 | if (gps_rfkill) | ||
762 | rfkill_unregister(gps_rfkill); | ||
763 | register_gps_error: | 758 | register_gps_error: |
764 | rfkill_destroy(gps_rfkill); | 759 | rfkill_destroy(gps_rfkill); |
765 | gps_rfkill = NULL; | 760 | gps_rfkill = NULL; |
766 | if (bluetooth_rfkill) | 761 | if (bluetooth_rfkill) |
767 | rfkill_unregister(bluetooth_rfkill); | 762 | rfkill_unregister(bluetooth_rfkill); |
763 | register_wwan_error: | ||
764 | rfkill_destroy(wwan_rfkill); | ||
765 | wwan_rfkill = NULL; | ||
766 | if (gps_rfkill) | ||
767 | rfkill_unregister(gps_rfkill); | ||
768 | register_bluetooth_error: | 768 | register_bluetooth_error: |
769 | rfkill_destroy(bluetooth_rfkill); | 769 | rfkill_destroy(bluetooth_rfkill); |
770 | bluetooth_rfkill = NULL; | 770 | bluetooth_rfkill = NULL; |