+ mm-gregkh-pci-pci-ignore-pre-set-64-bit-bars-on-32-bit-platforms-fix.patch added to -mm tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The patch titled

     fix to pci ignore pre-set 64-bit bars on 32-bit platforms

has been added to the -mm tree.  Its filename is

     mm-gregkh-pci-pci-ignore-pre-set-64-bit-bars-on-32-bit-platforms-fix.patch

See http://www.zip.com.au/~akpm/linux/patches/stuff/added-to-mm.txt to find
out what to do about this

------------------------------------------------------
Subject: fix to pci ignore pre-set 64-bit bars on 32-bit platforms
From: Bjorn Helgaas <bjorn.helgaas@xxxxxx>


When we detect a 64-bit pre-set address in a BAR on a 32-bit platform, we
disable it and treat it as if it had been unset, thus allowing the general
address assignment code to assign a new address to it when the device is
enabled.  This can happen either if the firmware assigns 64-bit addresses;
additionally, some cards have been found "in the wild" which do not come
out of reset with all the BAR registers set to zero.

Unfortunately, the patch that implemented this tested the low part of the
address instead of the high part of the address.  This patch fixes that.

Signed-off-by: Bjorn Helgaas <bjorn.helgaas@xxxxxx>
Signed-off-by: H. Peter Anvin <hpa@xxxxxxxxx>
Cc: Greg KH <greg@xxxxxxxxx>
Signed-off-by: Andrew Morton <akpm@xxxxxxxx>
---

 drivers/pci/probe.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff -puN drivers/pci/probe.c~mm-gregkh-pci-pci-ignore-pre-set-64-bit-bars-on-32-bit-platforms-fix drivers/pci/probe.c
--- devel/drivers/pci/probe.c~mm-gregkh-pci-pci-ignore-pre-set-64-bit-bars-on-32-bit-platforms-fix	2006-06-09 11:46:58.000000000 -0700
+++ devel-akpm/drivers/pci/probe.c	2006-06-09 11:46:58.000000000 -0700
@@ -199,7 +199,7 @@ static void pci_read_bases(struct pci_de
 				printk(KERN_ERR "PCI: Unable to handle 64-bit BAR for device %s\n", pci_name(dev));
 				res->start = 0;
 				res->flags = 0;
-			} else if (l) {
+			} else if (lhi) {
 				/* 64-bit wide address, treat as disabled */
 				pci_write_config_dword(dev, reg, l & ~(u32)PCI_BASE_ADDRESS_MEM_MASK);
 				pci_write_config_dword(dev, reg+4, 0);
_

Patches currently in -mm which might be from bjorn.helgaas@xxxxxx are

git-acpi.patch
acpi-update-asus_acpi-driver-registration-fix.patch
2.6-sony_acpi4.patch
git-ia64.patch
git-klibc.patch
e100-disable-interrupts-at-boot.patch
mm-gregkh-pci-pci-ignore-pre-set-64-bit-bars-on-32-bit-platforms-fix.patch
vgacon-make-vga_map_mem-take-size-remove-extra-use.patch

-
To unsubscribe from this list: send the line "unsubscribe mm-commits" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Kernel Newbies FAQ]     [Kernel Archive]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [Bugtraq]     [Photo]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]

  Powered by Linux