X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=linux-2.6-710-avoid-64bits-addr-pcmcia.patch;h=16ac9138de9d5e41aa3b3a075c2fcd5a77e2791a;hb=refs%2Fheads%2F22;hp=d51342693ec17f116448f1118dcafe0e21424adc;hpb=c270d9e4fc9888c753aec750868f1bc786dfb640;p=linux-2.6.git diff --git a/linux-2.6-710-avoid-64bits-addr-pcmcia.patch b/linux-2.6-710-avoid-64bits-addr-pcmcia.patch index d51342693..16ac9138d 100644 --- a/linux-2.6-710-avoid-64bits-addr-pcmcia.patch +++ b/linux-2.6-710-avoid-64bits-addr-pcmcia.patch @@ -1,7 +1,8 @@ -diff -Naur linux-source-2.6.29-orig/drivers/pci/bus.c linux-source-2.6.29/drivers/pci/bus.c ---- linux-source-2.6.29-orig/drivers/pci/bus.c 2009-03-24 00:12:14.000000000 +0100 -+++ linux-source-2.6.29/drivers/pci/bus.c 2009-04-06 11:04:41.000000000 +0200 -@@ -41,6 +41,7 @@ +diff --git a/drivers/pci/bus.c b/drivers/pci/bus.c +index 9e5ea07..db1206b 100644 +--- a/drivers/pci/bus.c ++++ b/drivers/pci/bus.c +@@ -41,6 +41,7 @@ pci_bus_alloc_resource(struct pci_bus *bus, struct resource *res, void *alignf_data) { int i, ret = -ENOMEM; @@ -9,7 +10,7 @@ diff -Naur linux-source-2.6.29-orig/drivers/pci/bus.c linux-source-2.6.29/driver type_mask |= IORESOURCE_IO | IORESOURCE_MEM; -@@ -59,10 +60,15 @@ +@@ -59,10 +60,15 @@ pci_bus_alloc_resource(struct pci_bus *bus, struct resource *res, !(res->flags & IORESOURCE_PREFETCH)) continue; @@ -26,40 +27,34 @@ diff -Naur linux-source-2.6.29-orig/drivers/pci/bus.c linux-source-2.6.29/driver alignf, alignf_data); if (ret == 0) break; -diff -Naur linux-source-2.6.29-orig/drivers/pci/setup-bus.c linux-source-2.6.29/drivers/pci/setup-bus.c ---- linux-source-2.6.29-orig/drivers/pci/setup-bus.c 2009-03-24 00:12:14.000000000 +0100 -+++ linux-source-2.6.29/drivers/pci/setup-bus.c 2009-04-06 11:04:41.000000000 +0200 -@@ -429,19 +429,23 @@ - * If we have prefetchable memory support, allocate - * two regions. Otherwise, allocate one region of - * twice the size. -+ * Avoid 64bit address space, as cardbus devices can't handle it. - */ +diff --git a/drivers/pci/setup-bus.c b/drivers/pci/setup-bus.c +index 5ec297d..24b1ddc 100644 +--- a/drivers/pci/setup-bus.c ++++ b/drivers/pci/setup-bus.c +@@ -430,15 +430,15 @@ pci_bus_size_cardbus(struct pci_bus *bus) if (ctrl & PCI_CB_BRIDGE_CTL_PREFETCH_MEM0) { - b_res[2].start = 0; - b_res[2].end = pci_cardbus_mem_size - 1; -- b_res[2].flags |= IORESOURCE_MEM | IORESOURCE_PREFETCH | IORESOURCE_SIZEALIGN; -+ b_res[2].flags |= IORESOURCE_MEM | IORESOURCE_PREFETCH | -+ IORESOURCE_SIZEALIGN | IORESOURCE_PCI_32BIT; + b_res[2].start = pci_cardbus_mem_size; + b_res[2].end = b_res[2].start + pci_cardbus_mem_size - 1; +- b_res[2].flags |= IORESOURCE_MEM | IORESOURCE_PREFETCH; ++ b_res[2].flags |= IORESOURCE_MEM | IORESOURCE_PREFETCH | IORESOURCE_PCI_32BIT; - b_res[3].start = 0; - b_res[3].end = pci_cardbus_mem_size - 1; -- b_res[3].flags |= IORESOURCE_MEM | IORESOURCE_SIZEALIGN; -+ b_res[3].flags |= IORESOURCE_MEM | IORESOURCE_SIZEALIGN | -+ IORESOURCE_PCI_32BIT; + b_res[3].start = pci_cardbus_mem_size; + b_res[3].end = b_res[3].start + pci_cardbus_mem_size - 1; +- b_res[3].flags |= IORESOURCE_MEM; ++ b_res[3].flags |= IORESOURCE_MEM | IORESOURCE_PCI_32BIT; } else { - b_res[3].start = 0; - b_res[3].end = pci_cardbus_mem_size * 2 - 1; -- b_res[3].flags |= IORESOURCE_MEM | IORESOURCE_SIZEALIGN; -+ b_res[3].flags |= IORESOURCE_MEM | IORESOURCE_SIZEALIGN | -+ IORESOURCE_PCI_32BIT; + b_res[3].start = pci_cardbus_mem_size * 2; + b_res[3].end = b_res[3].start + pci_cardbus_mem_size * 2 - 1; +- b_res[3].flags |= IORESOURCE_MEM; ++ b_res[3].flags |= IORESOURCE_MEM | IORESOURCE_PCI_32BIT; } } -diff -Naur linux-source-2.6.29-orig/include/linux/ioport.h linux-source-2.6.29/include/linux/ioport.h ---- linux-source-2.6.29-orig/include/linux/ioport.h 2009-03-24 00:12:14.000000000 +0100 -+++ linux-source-2.6.29/include/linux/ioport.h 2009-04-06 11:04:41.000000000 +0200 -@@ -103,6 +103,7 @@ +diff --git a/include/linux/ioport.h b/include/linux/ioport.h +index 71ea923..f45930d 100644 +--- a/include/linux/ioport.h ++++ b/include/linux/ioport.h +@@ -93,6 +93,7 @@ struct resource_list { /* PCI control bits. Shares IORESOURCE_BITS with above PCI ROM. */ #define IORESOURCE_PCI_FIXED (1<<4) /* Do not move resource */