From: Len Brown Date: Tue, 24 Jan 2006 22:52:48 +0000 (-0500) Subject: [ACPI] merge 3549 4320 4485 4588 4980 5483 5651 acpica asus fops pnpacpi branches... X-Git-Tag: Ubuntu-5.0.0-8.9~51505^2~14^2~1^2 X-Git-Url: https://git.proxmox.com/?a=commitdiff_plain;h=9fdb62af92c741addbea15545f214a6e89460865;p=mirror_ubuntu-disco-kernel.git [ACPI] merge 3549 4320 4485 4588 4980 5483 5651 acpica asus fops pnpacpi branches into release Signed-off-by: Len Brown --- 9fdb62af92c741addbea15545f214a6e89460865 diff --cc Documentation/kernel-parameters.txt index 1cbcf65b764b,a482fde09bbb,5dffcfefc3c7,5dffcfefc3c7,5dffcfefc3c7,2ad64efdf183,5dffcfefc3c7,5dffcfefc3c7,a482fde09bbb,5dffcfefc3c7,a482fde09bbb,a482fde09bbb..84370363da80 --- a/Documentation/kernel-parameters.txt +++ b/Documentation/kernel-parameters.txt @@@@@@@@@@@@@ -712,17 -711,9 -703,9 -703,9 -703,9 -708,9 -703,9 -703,9 -711,9 -703,9 -711,9 -711,9 +717,17 @@@@@@@@@@@@@ running once the system is up load_ramdisk= [RAM] List of ramdisks to load from floppy See Documentation/ramdisk.txt. ----------- lockd.udpport= [NFS] +++++++++++ lockd.nlm_grace_period=P [NFS] Assign grace period. +++++++++++ Format: +++++++++++ +++++++++++ lockd.nlm_tcpport=N [NFS] Assign TCP port. +++++++++++ Format: ++++ ++++++ - lockd.tcpport= [NFS] +++++++++++ lockd.nlm_timeout=T [NFS] Assign timeout value. +++++++++++ Format: + ---- ------ lockd.tcpport= [NFS] +++++++++++ lockd.nlm_udpport=M [NFS] Assign UDP port. +++++++++++ Format: logibm.irq= [HW,MOUSE] Logitech Bus Mouse Driver Format: diff --cc arch/i386/kernel/cpu/cpufreq/acpi-cpufreq.c index 7975e79d5fa4,871366b83b3f,871366b83b3f,871366b83b3f,871366b83b3f,871366b83b3f,8a5e159d8185,871366b83b3f,871366b83b3f,871366b83b3f,871366b83b3f,871366b83b3f..3852d0a4c1b5 --- a/arch/i386/kernel/cpu/cpufreq/acpi-cpufreq.c +++ b/arch/i386/kernel/cpu/cpufreq/acpi-cpufreq.c @@@@@@@@@@@@@ -365,16 -367,15 -367,15 -367,15 -367,15 -367,15 -305,8 -367,15 -367,15 -367,15 -367,15 -367,15 +303,9 @@@@@@@@@@@@@ acpi_cpufreq_cpu_init unsigned int cpu = policy->cpu; struct cpufreq_acpi_io *data; unsigned int result = 0; ----- ----- ----- ----- union acpi_object arg0 = {ACPI_TYPE_BUFFER}; ----- ----- u32 arg0_buf[3]; ----- ----- struct acpi_object_list arg_list = {1, &arg0}; +++++++++++ struct cpuinfo_x86 *c = &cpu_data[policy->cpu]; - union acpi_object arg0 = {ACPI_TYPE_BUFFER}; - u32 arg0_buf[3]; - struct acpi_object_list arg_list = {1, &arg0}; - dprintk("acpi_cpufreq_cpu_init\n"); ------ ----- /* setup arg_list for _PDC settings */ ------ ----- arg0.buffer.length = 12; ------ ----- arg0.buffer.pointer = (u8 *) arg0_buf; data = kzalloc(sizeof(struct cpufreq_acpi_io), GFP_KERNEL); if (!data) diff --cc drivers/acpi/processor_idle.c index cc049338e418,552420e1f890,5f51057518b0,40c9f9ca5965,807b0df308f1,70d8a6ec0920,1915c377bfc6,70d8a6ec0920,807b0df308f1,807b0df308f1,807b0df308f1,807b0df308f1..be2dae52f6fa --- a/drivers/acpi/processor_idle.c +++ b/drivers/acpi/processor_idle.c @@@@@@@@@@@@@ -274,19 -309,19 -274,18 -278,18 -274,19 -278,8 -278,8 -278,8 -274,19 -274,19 -274,19 -274,19 +309,19 @@@@@@@@@@@@@ static void acpi_processor_idle(void } } -- cx->usage++; -- +++ #ifdef CONFIG_HOTPLUG_CPU +++ /* +++ * Check for P_LVL2_UP flag before entering C2 and above on +++ * an SMP system. We do it here instead of doing it at _CST/P_LVL +++ * detection phase, to work cleanly with logical CPU hotplug. +++ */ +++ if ((cx->type != ACPI_STATE_C1) && (num_online_cpus() > 1) && -- !pr->flags.has_cst && acpi_fadt.plvl2_up) -- cx->type = ACPI_STATE_C1; ++ +++ !pr->flags.has_cst && !acpi_fadt.plvl2_up) ++ +++ cx = &pr->power.states[ACPI_STATE_C1]; +++ #endif ++ +++ ++ cx->usage++; ++ /* * Sleep: * ------ @@@@@@@@@@@@@ -556,20 -591,20 -546,20 -536,14 -556,20 -528,11 -528,11 -528,11 -556,20 -556,20 -556,20 -556,20 +589,14 @@@@@@@@@@@@@ static int acpi_processor_get_power_inf pr->power.states[ACPI_STATE_C2].type = ACPI_STATE_C2; pr->power.states[ACPI_STATE_C3].type = ACPI_STATE_C3; --- -------- /* the C0 state only exists as a filler in our array, --- -------- * and all processors need to support C1 */ --- -------- pr->power.states[ACPI_STATE_C0].valid = 1; --- -------- pr->power.states[ACPI_STATE_C1].valid = 1; --- - ---- +++ #ifndef CONFIG_HOTPLUG_CPU +++ /* +++ * Check for P_LVL2_UP flag before entering C2 and above on +++ * an SMP system. +++ */ -- if ((num_online_cpus() > 1) && acpi_fadt.plvl2_up) ++ +++ if ((num_online_cpus() > 1) && !acpi_fadt.plvl2_up) +++ return_VALUE(-ENODEV); +++ #endif /* determine C2 and C3 address from pblk */ pr->power.states[ACPI_STATE_C2].address = pr->pblk + 4; @@@@@@@@@@@@@ -723,11 -758,11 -713,11 -702,11 -723,11 -686,11 -686,11 -686,11 -723,11 -723,11 -723,11 -723,11 +755,11 @@@@@@@@@@@@@ static int acpi_processor_get_power_inf } ACPI_DEBUG_PRINT((ACPI_DB_INFO, "Found %d power states\n", --- -------- pr->power.count)); +++ ++++++++ current_count)); /* Validate number of power states discovered */ --- -------- if (pr->power.count < 2) --- status = -ENODEV; +++ ++++++++ if (current_count < 2) +++ status = -EFAULT; end: acpi_os_free(buffer.pointer); @@@@@@@@@@@@@ -892,12 -912,12 -867,12 -856,13 -877,12 -840,12 -840,12 -840,12 -877,12 -877,12 -877,12 -877,12 +924,13 @@@@@@@@@@@@@ static int acpi_processor_get_power_inf /* NOTE: the idle thread may not be running while calling * this function */ +++ ++++++++ /* Adding C1 state */ +++ ++++++++ acpi_processor_get_power_info_default_c1(pr); result = acpi_processor_get_power_info_cst(pr); --- if ((result) || (acpi_processor_power_verify(pr) < 2)) { --- result = acpi_processor_get_power_info_fadt(pr); --- if ((result) || (acpi_processor_power_verify(pr) < 2)) --- result = acpi_processor_get_power_info_default_c1(pr); --- } +++ if (result == -ENODEV) --- - ---- result = acpi_processor_get_power_info_fadt(pr); +++ ++++++++ acpi_processor_get_power_info_fadt(pr); +++ --- - ---- if ((result) || (acpi_processor_power_verify(pr) < 2)) --- - ---- result = acpi_processor_get_power_info_default_c1(pr); +++ ++++++++ pr->power.count = acpi_processor_power_verify(pr); /* * Set Default Policy diff --cc kernel/power/disk.c index e24446f8d8cd,e24446f8d8cd,f2cd279d07c7,027322a564f4,027322a564f4,027322a564f4,027322a564f4,027322a564f4,e24446f8d8cd,027322a564f4,e24446f8d8cd,e24446f8d8cd..e03d85e55291 --- a/kernel/power/disk.c +++ b/kernel/power/disk.c @@@@@@@@@@@@@ -95,16 -95,16 -119,9 -119,16 -119,16 -119,16 -119,16 -119,16 -95,16 -119,16 -95,16 -95,16 +95,9 @@@@@@@@@@@@@ static int prepare_processes(void goto thaw; } -- --------- if (pm_disk_mode == PM_DISK_PLATFORM) { -- --------- if (pm_ops && pm_ops->prepare) { -- --------- if ((error = pm_ops->prepare(PM_SUSPEND_DISK))) -- --------- goto thaw; -- --------- } -- --------- } -- --------- /* Free memory before shutting down devices. */ ------ - free_some_memory(); ------ - return 0; ++++++ + if (!(error = swsusp_shrink_memory())) ++++++ + return 0; thaw: thaw_processes(); enable_nonboot_cpus();