linux/drivers/platform/x86
Matthew Garrett c1e1655bb8 apple-gmux: Assign apple_gmux_data before registering
Registering the handler after both GPUs will trigger a DDC switch for
connector reprobing. This will oops if apple_gmux_data hasn't already
been assigned. Reorder the code to do that.

[Lukas: More generally, this commit fixes a race condition that
is triggered by invoking a handler callback between the call to
vga_switcheroo_register_handler() and the assignment of
apple_gmux_data.]

Tested-by: Pierre Moreau <pierre.morrow@free.fr>
    [MBP  5,3 2009  nvidia MCP79 + G96        pre-retina  15"]
Tested-by: Paul Hordiienko <pvt.gord@gmail.com>
    [MBP  6,2 2010  intel ILK + nvidia GT216  pre-retina  15"]
Tested-by: Lukas Wunner <lukas@wunner.de>
    [MBP  9,1 2012  intel IVB + nvidia GK107  pre-retina  15"]
Tested-by: William Brown <william@blackhats.net.au>
    [MBP  8,2 2011  intel SNB + amd turks     pre-retina  15"]
Tested-by: Bruno Bierbaumer <bruno@bierbaumer.net>
    [MBP 11,3 2013  intel HSW + nvidia GK107  retina      15"]

Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
Reviewed-by: Lukas Wunner <lukas@wunner.de>
Signed-off-by: Lukas Wunner <lukas@wunner.de>
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
2016-01-19 15:49:34 -08:00
..
acer-wmi.c acer-wmi: remove threeg and interface sysfs interfaces 2015-10-06 23:38:08 +01:00
acerhdf.c thermal: consistently use int for temperatures 2015-08-03 23:15:50 +08:00
alienware-wmi.c platform: x86: drop owner assignment from platform_drivers 2014-10-20 16:21:27 +02:00
amilo-rfkill.c platform: x86: drop owner assignment from platform_drivers 2014-10-20 16:21:27 +02:00
apple-gmux.c apple-gmux: Assign apple_gmux_data before registering 2016-01-19 15:49:34 -08:00
asus-laptop.c asus-laptop: Add key found on Asus F3M 2015-08-10 21:24:23 -07:00
asus-nb-wmi.c asus-nb-wmi: Add wapf=4 quirk for X456UA/X456UF 2015-09-06 10:44:48 -07:00
asus-wmi.c platform-drivers-x86 for 4.4-2 2015-11-13 21:47:06 -08:00
asus-wmi.h asus-wmi: always report brightness key events 2013-02-27 08:30:37 -05:00
classmate-laptop.c classmate-laptop: Fix sparse warning (0 as NULL) 2015-02-07 12:12:00 -08:00
compal-laptop.c compal-laptop: Add charge control limit 2015-10-03 08:44:57 -07:00
dell-laptop.c dell-laptop: Do not cache hwswitch state 2015-07-06 15:35:23 -07:00
dell-rbtn.c dell-rbtn: Export notifier for other kernel modules 2015-06-10 22:04:11 -07:00
dell-rbtn.h dell-rbtn: Export notifier for other kernel modules 2015-06-10 22:04:11 -07:00
dell-smo8800.c dell-smo8800: Add more ACPI ids and change description of driver 2014-12-03 10:10:19 -08:00
dell-wmi-aio.c ACPI: Clean up inclusions of ACPI header files 2013-12-07 01:03:14 +01:00
dell-wmi.c dell_wmi: Use a C99-style array for bios_to_linux_keycode 2015-11-20 16:22:52 -08:00
eeepc-laptop.c eeepc-laptop: Port to new backlight interface selection API 2015-06-19 01:11:56 +02:00
eeepc-wmi.c eeepc-wmi: Constify asus_quirks[] DMI table 2014-08-16 01:23:52 -07:00
fujitsu-laptop.c fujitsu-laptop: Port to new backlight interface selection API 2015-06-19 01:12:01 +02:00
fujitsu-tablet.c Input: use more descriptive KEY_ROTATE_DISPLAY instead of KEY_DIRECTION 2015-03-06 17:18:16 -08:00
hdaps.c platform: x86: drop owner assignment from platform_drivers 2014-10-20 16:21:27 +02:00
hp_accel.c hp_accel: Add support for HP ZBook 15 2014-12-03 10:10:12 -08:00
hp-wireless.c hp-wireless: remove unneeded goto/label in hpwl_init 2015-08-25 23:34:15 -07:00
hp-wmi.c hp-wmi: limit hotkey enable 2015-09-17 18:14:11 -07:00
ibm_rtl.c move io-64-nonatomic*.h out of asm-generic 2015-10-15 00:21:07 +02:00
ideapad-laptop.c ideapad-laptop: Add Lenovo Yoga 900 to no_hw_rfkill dmi list 2015-11-09 13:24:10 -08:00
intel_ips.c move io-64-nonatomic*.h out of asm-generic 2015-10-15 00:21:07 +02:00
intel_ips.h
intel_menlow.c linux/thermal.h: rename KELVIN_TO_CELSIUS to DECI_KELVIN_TO_CELSIUS 2015-10-10 11:32:30 +08:00
intel_mid_powerbtn.c intel_mid_powerbtn: Remove misuse of IRQF_NO_SUSPEND flag 2015-10-03 09:40:30 -07:00
intel_mid_thermal.c thermal: consistently use int for temperatures 2015-08-03 23:15:50 +08:00
intel_oaktrail.c intel-oaktrail: Port to new backlight interface selection API 2015-06-19 01:12:11 +02:00
intel_pmc_ipc.c - New Device Support 2015-09-04 11:35:03 -07:00
intel_pmic_gpio.c platform: x86: drop owner assignment from platform_drivers 2014-10-20 16:21:27 +02:00
intel_scu_ipc.c intel_scu_ipc: Protect dev member assignment on ->remove() 2015-10-15 08:23:30 -07:00
intel_scu_ipcutil.c
intel-rst.c intel-rst: Clean up ACPI add function 2014-09-17 13:55:54 -07:00
intel-smartconnect.c ACPI: Clean up inclusions of ACPI header files 2013-12-07 01:03:14 +01:00
Kconfig platform-drivers-x86 for 4.4-2 2015-11-13 21:47:06 -08:00
Makefile platform/x86: Toshiba WMI Hotkey Driver 2015-10-03 10:07:08 -07:00
msi-laptop.c msi-laptop: Port to new backlight interface selection API 2015-06-19 01:12:16 +02:00
msi-wmi.c msi-wmi: Port to new backlight interface selection API 2015-06-19 01:12:20 +02:00
mxm-wmi.c Merge branch 'for_linus' of git://cavan.codon.org.uk/platform-drivers-x86 2014-01-29 18:54:05 -08:00
panasonic-laptop.c Fix sleep / suspend keys for Toughbook CF-51 2014-04-06 12:58:11 -04:00
pvpanic.c pvpanic: handle missing _STA correctly 2015-06-07 21:30:12 -07:00
samsung-laptop.c samsung-laptop: Port to new backlight interface selection API 2015-06-19 01:12:25 +02:00
samsung-q10.c platform: x86: drop owner assignment from platform_drivers 2014-10-20 16:21:27 +02:00
sony-laptop.c sony-laptop: Fix handling sony_nc_hotkeys_decode result 2015-10-03 09:41:54 -07:00
surfacepro3_button.c surface pro 3: Add support driver for Surface Pro 3 buttons 2015-08-26 00:21:27 -07:00
tc1100-wmi.c tc1100-wmi: Delete an unnecessary check before the function call "kfree" 2015-06-26 15:55:51 -07:00
thinkpad_acpi.c thinkpad_acpi: Don't yell on unsupported brightness interfaces 2015-11-06 09:58:01 -08:00
topstar-laptop.c platform:x86: Remove OOM message after input_allocate_device 2013-11-20 18:51:03 -05:00
toshiba_acpi.c toshiba_acpi: Fix keyboard backlight sysfs entries not being updated 2016-01-19 15:49:21 -08:00
toshiba_bluetooth.c toshiba_bluetooth: Add missing newline in toshiba_bluetooth_present function 2015-11-20 15:20:08 -08:00
toshiba_haps.c toshiba_haps: Make use of DEVICE_ATTR_{RW, WO} macros 2015-05-11 10:38:22 -07:00
toshiba-wmi.c platform/x86: Toshiba WMI Hotkey Driver 2015-10-03 10:07:08 -07:00
wmi.c wmi: Remove private %pUL implementation 2015-09-10 09:07:04 -07:00
xo1-rfkill.c platform: x86: drop owner assignment from platform_drivers 2014-10-20 16:21:27 +02:00
xo15-ebook.c ACPI: Clean up inclusions of ACPI header files 2013-12-07 01:03:14 +01:00