PCI: disable mmio during bar sizing
authorJacob Pan <jacob.jun.pan@linux.intel.com>
Fri, 16 Jul 2010 17:19:22 +0000 (10:19 -0700)
committerJesse Barnes <jbarnes@virtuousgeek.org>
Fri, 30 Jul 2010 16:29:35 +0000 (09:29 -0700)
commit253d2e549818f5a4a52e2db0aba3dacee21e5b38
tree535ff224cb89860809fa5d948e19e1f3342cf7b3
parentfcd097f31a6ee207cc0c3da9cccd2a86d4334785
PCI: disable mmio during bar sizing

It is a known issue that mmio decoding shall be disabled while doing PCI
bar sizing. Host bridge and other devices (PCI PIC) shall be excluded for
certain platforms. This patch mainly comes from Mathew Willcox's
patch in http://kerneltrap.org/mailarchive/linux-kernel/2007/9/13/258969.

A new flag bit "mmio_alway_on" is added to pci_dev with the intention that
devices with their mmio decoding cannot be disabled during BAR sizing shall
have this bit set, preferrablly in their quirks.

Without this patch, Intel Moorestown platform graphics unit will be
corrupted during bar sizing activities.

Signed-off-by: Jacob Pan <jacob.jun.pan@linux.intel.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
drivers/pci/probe.c
drivers/pci/quirks.c
include/linux/pci.h