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.c32
1 files changed, 19 insertions, 13 deletions
diff --git a/arch/i386/kernel/setup.c b/arch/i386/kernel/setup.c
index e29fd5aeaf8e..dc39ca6a7eca 100644
--- a/arch/i386/kernel/setup.c
+++ b/arch/i386/kernel/setup.c
@@ -87,14 +87,14 @@ EXPORT_SYMBOL(boot_cpu_data);
87 87
88unsigned long mmu_cr4_features; 88unsigned long mmu_cr4_features;
89 89
90#ifdef CONFIG_ACPI_INTERPRETER 90#ifdef CONFIG_ACPI
91 int acpi_disabled = 0; 91 int acpi_disabled = 0;
92#else 92#else
93 int acpi_disabled = 1; 93 int acpi_disabled = 1;
94#endif 94#endif
95EXPORT_SYMBOL(acpi_disabled); 95EXPORT_SYMBOL(acpi_disabled);
96 96
97#ifdef CONFIG_ACPI_BOOT 97#ifdef CONFIG_ACPI
98int __initdata acpi_force = 0; 98int __initdata acpi_force = 0;
99extern acpi_interrupt_flags acpi_sci_flags; 99extern acpi_interrupt_flags acpi_sci_flags;
100#endif 100#endif
@@ -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)
@@ -798,7 +799,7 @@ static void __init parse_cmdline_early (char ** cmdline_p)
798 } 799 }
799#endif 800#endif
800 801
801#ifdef CONFIG_ACPI_BOOT 802#ifdef CONFIG_ACPI
802 /* "acpi=off" disables both ACPI table parsing and interpreter */ 803 /* "acpi=off" disables both ACPI table parsing and interpreter */
803 else if (!memcmp(from, "acpi=off", 8)) { 804 else if (!memcmp(from, "acpi=off", 8)) {
804 disable_acpi(); 805 disable_acpi();
@@ -850,11 +851,16 @@ 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();
856#endif /* CONFIG_X86_LOCAL_APIC */ 862#endif /* CONFIG_X86_LOCAL_APIC */
857#endif /* CONFIG_ACPI_BOOT */ 863#endif /* CONFIG_ACPI */
858 864
859#ifdef CONFIG_X86_LOCAL_APIC 865#ifdef CONFIG_X86_LOCAL_APIC
860 /* enable local APIC */ 866 /* enable local APIC */
@@ -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);
@@ -1579,7 +1585,7 @@ void __init setup_arch(char **cmdline_p)
1579 if (efi_enabled) 1585 if (efi_enabled)
1580 efi_map_memmap(); 1586 efi_map_memmap();
1581 1587
1582#ifdef CONFIG_ACPI_BOOT 1588#ifdef CONFIG_ACPI
1583 /* 1589 /*
1584 * Parse the ACPI tables for possible boot-time SMP configuration. 1590 * Parse the ACPI tables for possible boot-time SMP configuration.
1585 */ 1591 */