aboutsummaryrefslogtreecommitdiffstats
path: root/arch/i386/kernel/setup.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/i386/kernel/setup.c')
-rw-r--r--arch/i386/kernel/setup.c22
1 files changed, 14 insertions, 8 deletions
diff --git a/arch/i386/kernel/setup.c b/arch/i386/kernel/setup.c
index a659d274914c..dc39ca6a7eca 100644
--- a/arch/i386/kernel/setup.c
+++ b/arch/i386/kernel/setup.c
@@ -139,6 +139,7 @@ struct sys_desc_table_struct {
139 unsigned char table[0]; 139 unsigned char table[0];
140}; 140};
141struct edid_info edid_info; 141struct edid_info edid_info;
142EXPORT_SYMBOL_GPL(edid_info);
142struct ist_info ist_info; 143struct ist_info ist_info;
143#if defined(CONFIG_X86_SPEEDSTEP_SMI) || \ 144#if defined(CONFIG_X86_SPEEDSTEP_SMI) || \
144 defined(CONFIG_X86_SPEEDSTEP_SMI_MODULE) 145 defined(CONFIG_X86_SPEEDSTEP_SMI_MODULE)
@@ -850,6 +851,11 @@ static void __init parse_cmdline_early (char ** cmdline_p)
850#endif 851#endif
851 852
852#ifdef CONFIG_X86_LOCAL_APIC 853#ifdef CONFIG_X86_LOCAL_APIC
854 if (!memcmp(from, "disable_timer_pin_1", 19))
855 disable_timer_pin_1 = 1;
856 if (!memcmp(from, "enable_timer_pin_1", 18))
857 disable_timer_pin_1 = -1;
858
853 /* disable IO-APIC */ 859 /* disable IO-APIC */
854 else if (!memcmp(from, "noapic", 6)) 860 else if (!memcmp(from, "noapic", 6))
855 disable_ioapic_setup(); 861 disable_ioapic_setup();
@@ -1299,7 +1305,7 @@ legacy_init_iomem_resources(struct resource *code_resource, struct resource *dat
1299 */ 1305 */
1300static void __init register_memory(void) 1306static void __init register_memory(void)
1301{ 1307{
1302 unsigned long gapstart, gapsize; 1308 unsigned long gapstart, gapsize, round;
1303 unsigned long long last; 1309 unsigned long long last;
1304 int i; 1310 int i;
1305 1311
@@ -1344,14 +1350,14 @@ static void __init register_memory(void)
1344 } 1350 }
1345 1351
1346 /* 1352 /*
1347 * Start allocating dynamic PCI memory a bit into the gap, 1353 * See how much we want to round up: start off with
1348 * aligned up to the nearest megabyte. 1354 * rounding to the next 1MB area.
1349 *
1350 * Question: should we try to pad it up a bit (do something
1351 * like " + (gapsize >> 3)" in there too?). We now have the
1352 * technology.
1353 */ 1355 */
1354 pci_mem_start = (gapstart + 0xfffff) & ~0xfffff; 1356 round = 0x100000;
1357 while ((gapsize >> 4) > round)
1358 round += round;
1359 /* Fun with two's complement */
1360 pci_mem_start = (gapstart + round) & -round;
1355 1361
1356 printk("Allocating PCI resources starting at %08lx (gap: %08lx:%08lx)\n", 1362 printk("Allocating PCI resources starting at %08lx (gap: %08lx:%08lx)\n",
1357 pci_mem_start, gapstart, gapsize); 1363 pci_mem_start, gapstart, gapsize);