android_kernel_oneplus_msm8998/arch/x86
Andy Shevchenko 32b04db4f2 x86/platform/intel_mid_pci: Rework IRQ0 workaround
commit bb27570525a71f48347ed0e0c265063e7952bb61 upstream.

On Intel Merrifield platform several PCI devices have a bogus configuration,
i.e. the IRQ0 had been assigned to few of them. These are PCI root bridge,
eMMC0, HS UART common registers, PWM, and HDMI. The actual interrupt line can
be allocated to one device exclusively, in our case to eMMC0, the rest should
cope without it and basically known drivers for them are not using interrupt
line at all.

Rework IRQ0 workaround, which was previously done to avoid conflict between
eMMC0 and HS UART common registers, to behave differently based on the device
in question, i.e. allocate interrupt line to eMMC0, but silently skip interrupt
allocation for the rest except HS UART common registers which are not used
anyway. With this rework IOSF MBI driver in particular would be used.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Acked-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Bjorn Helgaas <bhelgaas@google.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Fixes: 39d9b77b8d ("x86/pci/intel_mid_pci: Work around for IRQ0 assignment")
Link: http://lkml.kernel.org/r/1465842481-136852-1-git-send-email-andriy.shevchenko@linux.intel.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-08-20 18:09:27 +02:00
..
boot x86, build: copy ldlinux.c32 to image.iso 2016-07-27 09:47:29 -07:00
configs
crypto crypto: sha1-mb - use corrcet pointer while completing jobs 2016-05-04 14:48:44 -07:00
entry x86/syscalls/64: Add compat_sys_keyctl for 32-bit userspace 2016-08-16 09:30:50 +02:00
ia32 Merge branch 'x86-headers-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2015-11-03 21:05:40 -08:00
include x86/xen, pat: Remove PAT table init code from Xen 2016-08-16 09:30:49 +02:00
kernel x86/mtrr: Fix PAT init handling when MTRR is disabled 2016-08-16 09:30:49 +02:00
kvm KVM: nVMX: Fix memory corruption when using VMCS shadowing 2016-08-20 18:09:18 +02:00
lguest x86/paravirt: Prevent rtc_cmos platform device init on PV guests 2015-12-19 21:35:13 +01:00
lib x86/uaccess/64: Handle the caching of 4-byte nocache copies properly in __copy_user_nocache() 2016-02-25 12:01:13 -08:00
math-emu Merge branch 'x86-headers-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2015-11-03 21:05:40 -08:00
mm x86/mm/pat: Fix BUG_ON() in mmap_mem() on QEMU/i386 2016-08-16 09:30:50 +02:00
net ebpf: migrate bpf_prog's flags to bitfield 2015-10-03 05:02:39 -07:00
oprofile
pci x86/platform/intel_mid_pci: Rework IRQ0 workaround 2016-08-20 18:09:27 +02:00
platform Merge branch 'x86-platform-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2015-11-03 21:33:18 -08:00
power
purgatory
ras x86/ras/mce_amd_inj: Inject bank 4 errors on the NBC 2015-10-12 16:15:48 +02:00
realmode
tools
um um: Fix pointer cast 2015-12-22 15:31:51 -08:00
video
xen x86/xen, pat: Remove PAT table init code from Xen 2016-08-16 09:30:49 +02:00
.gitignore
Kbuild
Kconfig x86/microcode: Untangle from BLK_DEV_INITRD 2016-04-12 09:08:32 -07:00
Kconfig.cpu x86/Kconfig/cpus: Fix/complete CPU type help texts 2015-10-21 11:12:56 +02:00
Kconfig.debug x86: don't make DEBUG_WX default to 'y' even with DEBUG_RODATA 2015-11-06 09:12:41 -08:00
Makefile Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 2015-11-04 09:11:12 -08:00
Makefile.um
Makefile_32.cpu