linux-mips
[Top] [All Lists]

[PATCH] Make CARDBUS_MEM_SIZE and CARDBUS_IO_SIZE customizable

To: linux-kernel@vger.kernel.org
Subject: [PATCH] Make CARDBUS_MEM_SIZE and CARDBUS_IO_SIZE customizable
From: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Date: Fri, 19 Jan 2007 00:23:46 +0900 (JST)
Cc: linux-mips@linux-mips.org, akpm@osdl.org, ralf@linux-mips.org
Original-recipient: rfc822;linux-mips@linux-mips.org
Sender: linux-mips-bounce@linux-mips.org
CARDBUS_MEM_SIZE was increased to 64MB on 2.6.20-rc2, but larger size
might result in allocation failure for the reserving itself on some
platforms (for example typical 32bit MIPS).  Make it (and
CARDBUS_IO_SIZE too) customizable for such platforms.

Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
---
diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
index 3cfb0a3..6085d3d 100644
--- a/drivers/pci/Kconfig
+++ b/drivers/pci/Kconfig
@@ -60,3 +60,19 @@ config HT_IRQ
           This allows native hypertransport devices to use interrupts.
 
           If unsure say Y.
+
+config PCI_CARDBUS_IO_SIZE
+       int "CardBus IO window size (bytes)"
+       depends on PCI
+       default "256"
+       help
+         A fixed amount of bus space is reserved for CardBus bridges.
+         The default value is 256 bytes.
+
+config PCI_CARDBUS_MEM_SIZE
+       int "CardBus Memory window size (megabytes)"
+       depends on PCI
+       default "64"
+       help
+         A fixed amount of bus space is reserved for CardBus bridges.
+         The default value is 64 megabytes.
diff --git a/drivers/pci/setup-bus.c b/drivers/pci/setup-bus.c
index 89f3036..046c87b 100644
--- a/drivers/pci/setup-bus.c
+++ b/drivers/pci/setup-bus.c
@@ -40,8 +40,8 @@
  * FIXME: IO should be max 256 bytes.  However, since we may
  * have a P2P bridge below a cardbus bridge, we need 4K.
  */
-#define CARDBUS_IO_SIZE                (256)
-#define CARDBUS_MEM_SIZE       (64*1024*1024)
+#define CARDBUS_IO_SIZE                CONFIG_PCI_CARDBUS_IO_SIZE
+#define CARDBUS_MEM_SIZE       (CONFIG_PCI_CARDBUS_MEM_SIZE * 1024 * 1024)
 
 static void __devinit
 pbus_assign_resources_sorted(struct pci_bus *bus)

<Prev in Thread] Current Thread [Next in Thread>