kernel_optimize_test/drivers
Hans de Goede 63dada87f7 platform/x86: Add driver for ACPI INT0002 Virtual GPIO device
Some peripherals on Bay Trail and Cherry Trail platforms signal a
Power Management Event (PME) to the Power Management Controller (PMC)
to wakeup the system. When this happens software needs to explicitly
clear the PME bus 0 status bit in the GPE0a_STS register to avoid an
IRQ storm on IRQ 9.

This is modelled in ACPI through the INT0002 ACPI device, which is
called a "Virtual GPIO controller" in ACPI because it defines the
event handler to call when the PME triggers through _AEI and _L02
methods as would be done for a real GPIO interrupt in ACPI.

This commit adds a driver which registers the Virtual GPIOs expected
by the DSDT on these devices, letting gpiolib-acpi claim the
virtual GPIO and install a GPIO-interrupt handler which call the _L02
handler as it would for a real GPIO controller.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2017-06-15 00:55:44 +02:00
..
accessibility
acpi ACPI / PM: Clean up device wakeup enable/disable code 2017-06-15 00:55:43 +02:00
amba
android
ata libata: fix error checking in in ata_parse_force_one() 2017-05-31 14:26:26 -04:00
atm
auxdisplay
base PM / sleep: Print timing information if debug is enabled 2017-06-15 00:55:43 +02:00
bcma
block Fix loop device flush before configure v3 2017-06-08 08:04:18 -06:00
bluetooth
bus
cdrom
char Improve performance by using a lockless update mechanism suggested by 2017-06-11 12:02:01 -07:00
clk Sort of on the quieter side this time, which is probably due more 2017-05-10 13:38:18 -07:00
clocksource Merge branch 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2017-05-12 10:43:25 -07:00
connector
cpufreq Merge branches 'intel_pstate' and 'pm-sleep' 2017-06-09 01:25:16 +02:00
cpuidle Merge branches 'pm-domains', 'pm-cpuidle', 'pm-sleep' and 'powercap' 2017-05-09 23:21:46 +02:00
crypto virtio: fixes, cleanups, performance 2017-05-10 11:33:08 -07:00
dax device-dax: fix 'dax' device filesystem inode destruction crash 2017-06-09 08:50:49 -07:00
dca
devfreq
dio
dma dmaengine: pl330: fix warning in pl330_remove 2017-06-02 11:49:44 +05:30
dma-buf
edac
eisa
extcon
firewire
firmware Char/Misc driver fixes for 4.12-rc5 2017-06-11 11:29:15 -07:00
fmc
fpga
fsi
gpio gpio: mvebu: fix gpio bank registration when pwm is used 2017-06-09 09:38:27 +02:00
gpu Merge branch 'vmwgfx-fixes-4.12' of git://people.freedesktop.org/~thomash/linux into drm-fixes 2017-06-09 13:12:02 +10:00
hid Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid 2017-06-02 09:23:56 -07:00
hsi
hv char/misc patches for 4.12-rc1 2017-05-04 19:15:35 -07:00
hwmon hwmon: (aspeed-pwm-tacho) make fan/pwm names start with index 1 2017-06-03 03:55:43 -07:00
hwspinlock
hwtracing drivers/hwtracing/intel_th/msu.c: use set_memory.h header 2017-05-08 17:15:14 -07:00
i2c i2c: designware: Fix bogus sda_hold_time due to uninitialized vars 2017-05-22 19:22:19 -07:00
ide ide: don't call memcpy with the same source and destination 2017-05-08 17:36:39 -04:00
idle
iio First set of IIO fixes in the 4.12 cycle. 2017-05-22 21:53:09 +02:00
infiniband RDMA/SA: Fix kernel panic in CMA request handler flow 2017-06-01 17:20:14 -04:00
input Input: synaptics-rmi4 - register F03 port as pass-through serio 2017-06-09 09:57:19 -07:00
iommu iommu/of: Ignore all errors except EPROBE_DEFER 2017-05-30 11:31:32 +02:00
ipack
irqchip Merge branch 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2017-05-21 11:45:26 -07:00
isdn mISDN: Fix a sleep-in-atomic bug 2017-06-01 14:49:47 -04:00
leds leds: pca955x: Correct I2C Functionality 2017-05-22 21:12:44 +02:00
lguest
lightnvm lightnvm: fix bad back free on error path 2017-05-04 07:53:04 -06:00
macintosh DeviceTree for 4.12: 2017-05-05 19:33:07 -07:00
mailbox
mcb
md md: initialise ->writes_pending in personality modules. 2017-06-05 16:04:35 -07:00
media media fixes for v4.12-rc4 2017-06-06 09:37:44 -07:00
memory Merge tag 'at91-4.12-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux into fixes 2017-06-01 17:07:31 -07:00
memstick
message
mfd
misc Char/Misc driver fixes for 4.12-rc5 2017-06-11 11:29:15 -07:00
mmc This pull request contains fixes to make the WiFi work again for the ARM64 2017-05-26 09:05:35 -07:00
mtd mtd: nand: make nand_ooblayout_lp_hamming_ops static 2017-05-22 09:42:29 +02:00
net net: stmmac: fix a broken u32 less than zero check 2017-06-06 16:26:28 -04:00
nfc
ntb
nubus
nvdimm Merge branch 'libnvdimm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm 2017-05-12 15:43:10 -07:00
nvme nvme: relax APST default max latency to 100ms 2017-06-07 11:08:55 +02:00
nvmem ARM: SoC driver updates 2017-05-09 10:01:15 -07:00
of iommu/of: Ignore all errors except EPROBE_DEFER 2017-05-30 11:31:32 +02:00
oprofile
parisc
parport
pci PCI / PM: Restore PME Enable if skipping wakeup setup 2017-06-15 00:55:44 +02:00
pcmcia Annotation of module parameters that specify device settings 2017-05-10 19:13:03 -07:00
perf drivers/perf: arm_pmu_acpi: avoid perf IRQ init when guest PMU is off 2017-05-30 12:40:03 +01:00
phy phy: qualcomm: phy-qcom-qmp: fix application of sizeof to pointer 2017-06-01 15:03:41 +05:30
pinctrl pinctrl: sunxi: Fix SPDIF function name for A83T 2017-05-23 11:31:27 +02:00
platform platform/x86: Add driver for ACPI INT0002 Virtual GPIO device 2017-06-15 00:55:44 +02:00
pnp
power power supply and reset changes for the v4.12 series (part 2) 2017-05-12 12:02:21 -07:00
powercap PowerCap: Fix an error code in powercap_register_zone() 2017-05-14 13:30:05 +02:00
pps
ps3
ptp
pwm
rapidio char/misc patches for 4.12-rc1 2017-05-04 19:15:35 -07:00
ras
regulator
remoteproc virtio: fixes, cleanups, performance 2017-05-10 11:33:08 -07:00
reset reset: hi6220: Set module license so that it can be loaded 2017-05-24 10:53:41 +02:00
rpmsg virtio: fixes, cleanups, performance 2017-05-10 11:33:08 -07:00
rtc Merge branches 'pm-sleep' and 'powercap' 2017-05-22 20:32:05 +02:00
s390 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux 2017-05-16 09:24:44 -07:00
sbus
scsi SCSI fixes on 20170610 2017-06-11 11:21:08 -07:00
sfi
sh
sn
soc ARM: SoC fixes (and a cross-arch dt-include fix) 2017-05-19 13:36:56 -07:00
spi
spmi
ssb
staging Staging/IIO fixes for 4.12-rc5 2017-06-11 11:25:51 -07:00
target iscsi-target: Always wait for kthread_should_stop() before kthread exit 2017-05-31 15:12:57 -07:00
tc
tee Linux 4.12-rc1 2017-05-18 23:54:47 -07:00
thermal thermal: broadcom: ns-thermal: default on iProc SoCs 2017-05-23 20:09:34 -07:00
thunderbolt
tty Revert "tty: fix port buffer locking" 2017-06-04 10:23:25 +02:00
uio uio: fix incorrect memory leak cleanup 2017-05-16 23:06:41 +02:00
usb USB / PCI / PM: Allow the PCI core to do the resume cleanup 2017-06-15 00:55:43 +02:00
uwb uwb: fix device quirk on big-endian hosts 2017-05-17 11:27:41 +02:00
vfio powerpc updates for 4.12 part 1. 2017-05-05 11:36:44 -07:00
vhost mm: support __GFP_REPEAT in kvmalloc_node for >32kB 2017-05-08 17:15:12 -07:00
video fbdev changes for v4.12: 2017-05-11 11:12:26 -07:00
virt drivers/virt/fsl_hypervisor.c: use get_user_pages_unlocked() 2017-05-08 17:15:10 -07:00
virtio
vlynq
vme
w1
watchdog watchdog: bcm281xx: Fix use of uninitialized spinlock. 2017-05-19 10:42:25 +02:00
xen xen: fix for 4.12 rc5 2017-06-09 09:59:51 -07:00
zorro
Kconfig
Makefile Merge branch 'tee/initial-merge' into fixes 2017-05-10 21:03:31 +02:00