aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/acpi
Commit message (Collapse)AuthorAge
*---------. Merge branches 'release', 'bugzilla-9916', 'bugzilla-9982', 'bugzilla-9989', ↵Len Brown2008-02-21
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | 'misc', 'suspend', 'thermal', 'thinkpad' and 'tsc' into release
| | | | | | * ACPI: TSC breaks atkbd suspendPavel Machek2008-02-19
| | | | | |/ | | | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | TSC is used even on machines when CONFIG_X86_TSC is not set (X86_TSC means _require_ TSC), but it is not properly disabled when it is unusable, because ACPI code understood the config switch as "may use TSC". This actually fixes suspend problems on my x60. Signed-off-by: Pavel Machek <pavel@suse.cz> Signed-off-by: Len Brown <len.brown@intel.com>
| | | | | * ACPI video: check for error from thermal_cooling_device_registerThomas Sujith2008-02-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Need to check whether thermal_cooling_device_register returned ERROR or not. Signed-off-by: Thomas Sujith <sujith.thomas@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
| | | | | * ACPI thermal: extract return values using PTR_ERRThomas Sujith2008-02-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Need to extract errors using PTR_ERR macro and process accordingly.thermal_cooling_device_register returning NULL means that CONFIG_THERMAL=n and in that case no need to create symbolic links. Signed-off-by: Thomas Sujith <sujith.thomas@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
| | | | | * ACPI fan: extract return values using PTR_ERRThomas Sujith2008-02-15
| | | | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Need to extract errors using PTR_ERR macro and process accordingly. thermal_cooling_device_register returning NULL means that CONFIG_THERMAL=n and in that case no need to create symbolic links. Signed-off-by: Thomas Sujith <sujith.thomas@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
| | | * | ACPI: remove is_processor_present prototypeGlauber Costa2008-02-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The function itself is defined just below, so this prototype is not really useful. Signed-off-by: Glauber Costa <gcosta@redhat.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Len Brown <len.brown@intel.com>
| | | * | ACPI: sparse fix, replace macro with static functionHarvey Harrison2008-02-16
| | | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | replace acpi_util_eval_error macro with static function. Avoid these sparse warnings due to using buffer within the macro. drivers/acpi/utils.c:273:3: warning: symbol 'buffer' shadows an earlier one drivers/acpi/utils.c:259:21: originally declared here drivers/acpi/utils.c:279:3: warning: symbol 'buffer' shadows an earlier one drivers/acpi/utils.c:259:21: originally declared here drivers/acpi/utils.c:368:3: warning: symbol 'buffer' shadows an earlier one drivers/acpi/utils.c:348:21: originally declared here drivers/acpi/utils.c:375:3: warning: symbol 'buffer' shadows an earlier one drivers/acpi/utils.c:348:21: originally declared here drivers/acpi/utils.c:382:3: warning: symbol 'buffer' shadows an earlier one drivers/acpi/utils.c:348:21: originally declared here drivers/acpi/utils.c:402:4: warning: symbol 'buffer' shadows an earlier one drivers/acpi/utils.c:348:21: originally declared here Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com> Signed-off-by: Len Brown <len.brown@intel.com>
| | * / ACPI: fix build warningMing Lin2008-02-21
| | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | CC drivers/acpi/executer/exregion.o drivers/acpi/executer/exregion.c: In function ‘acpi_ex_pci_config_space_handler’: drivers/acpi/executer/exregion.c:369: attention : passing argument 3 of ‘acpi_os_read_pci_configuration’ from incompatible pointer type exposed by 10270d4838bdc493781f5a1cf2e90e9c34c9142f http://bugzilla.kernel.org/show_bug.cgi?id=9989 Signed-off-by: Ming Lin <ming.m.lin@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
| * / ACPI: thermal: Check whether cooling device exists before unregisteringZhao Yakui2008-02-15
| |/ | | | | | | | | | | | | | | | | | | | | | | OS should check whether the cooling device exists before it is unregistered. If it doesn't exists, it is unnecessary to remove the sysfs link and call the function of thermal_cooling_device_unregister. http://bugzilla.kernel.org/show_bug.cgi?id=9982 Signed-off-by: Zhao Yakui <yakui.zhao@intel.com> Tested-by : Dhaval Giani <dhaval@linux.vnet.ibm.com> Signed-off-by: Len Brown <len.brown@intel.com>
| *-. Merge branches 'release', 'dmi', 'idle' and 'misc' into releaseLen Brown2008-02-14
| |\ \
| | | * ACPI: static acpi_chain_headAdrian Bunk2008-02-14
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Adrian Bunk <bunk@kernel.org> Signed-off-by: Len Brown <len.brown@intel.com>
| | | * ACPI: static acpi_find_dsdt_initrd()Adrian Bunk2008-02-14
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Adrian Bunk <bunk@kernel.org> Signed-off-by: Len Brown <len.brown@intel.com>
| | | * ACPI: static acpi_no_initrd_override_setup()Adrian Bunk2008-02-14
| | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Adrian Bunk <bunk@kernel.org> Acked-by: Eric Piel <eric.piel@tremplin-utc.net> Signed-off-by: Len Brown <len.brown@intel.com>
| | | * ACPI suspend: Execute _WAK with the right argumentRafael J. Wysocki2008-02-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The _WAK global ACPI control method has to be called with the argument representing the sleep state being exited. Make it happen. Special thanks to Mirco Tischler <mt-ml@gmx.de> for reporting the problem and debugging. Reported-by: Mirco Tischler <mt-ml@gmx.de> Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl> Signed-off-by: Len Brown <len.brown@intel.com>
| | | * ACPI: fix suspend regression due to idle updateVenkatesh Pallipadi2008-02-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Earlier patch (bc71bec91f9875ef825d12104acf3bf4ca215fa4) broke suspend resume on many laptops. The problem was reported by Carlos R. Mafra and Calvin Walton, who bisected the issue to above patch. The problem was because, C2 and C3 code were calling acpi_idle_enter_c1 directly, with C2 or C3 as state parameter, while suspend/resume was in progress. The patch bc71bec started making use of that state information, assuming that it would always be referring to C1 state. This caused the problem with suspend-resume as we ended up using C2/C3 state indirectly. Fix this by adding acpi_idle_suspend check in enter_c1. Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
| | * | ACPI, cpuidle: Clarify C-state description in sysfsVenkatesh Pallipadi2008-02-14
| | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a new sysfs entry under cpuidle states. desc - can be used by driver to communicate to userspace any specific information about the state. This helps in identifying the exact hardware C-states behind the ACPI C-state definition. Idea is to export this through powertop, which will help to map the C-state reported by powertop to actual hardware C-state. Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
| * | ACPI: DMI: quirk for FSC ESPRIMO Mobile V5505Len Brown2008-02-14
| | | | | | | | | | | | | | | | | | http://bugzilla.kernel.org/show_bug.cgi?id=9939 Signed-off-by: Len Brown <len.brown@intel.com>
| * | ACPI: DMI blacklist updatesLen Brown2008-02-14
| |/ | | | | | | | | | | | | | | | | | | | | | | | | Acer Extensa 5220 -- OSI(Linux) is a NOP Dell OptiPlex 755 -- OSI(Linux) turns GUSB into a NOP Dell PowerEdge 1950 -- OSI(Linux) is a NOP Dell Precision 690 -- OSI(Linux) touches USB (skips GUSB) FSC ESPRIMO Mobile V5505 -- OSI(Linux) is a NOP Lenovo LENOVO3000 V100 -- OSI(Linux) is a NOP Lenovo X61x -- OSI(Linux) enables Linux specific AML Sony Vaio VGN-NR11S_S - OSI(Linux) is a NOP Signed-off-by: Len Brown <len.brown@intel.com>
* / ACPI: EC: Use proper handle for boot ECAlexey Starikovskiy2008-02-14
|/ | | | | | | | | | | | | Fall back to ACPI_ROOT_HANDLE only in case of error. ACPI: EC: EC description table is found, configuring boot EC ACPI Error (evregion-0316): No handler for Region [ECOR] (ffff81007a651620) [EmbeddedControl] [20070126] ACPI Error (exfldio-0289): Region EmbeddedControl(3) has no handler [20070126] http://bugzilla.kernel.org/show_bug.cgi?id=9916 Signed-off-by: Alexey Starikovskiy <astarikovskiy@suse.de> Signed-off-by: Len Brown <len.brown@intel.com>
* acpi: fix acpi_os_read_pci_configuration() misuse of raw_pci_read()Linus Torvalds2008-02-13
| | | | | | | | | | | | | | | The raw_pci_read() interface (as the raw_pci_ops->read() before it) unconditionally fills in a 32-bit integer return value regardless of the size of the operation requested. So claiming to take a "void *" is wrong, as is passing in a pointer to just a byte variable. Noticed by pageexec when enabling -fstack-protector (which needs other patches too to actually work, but that's a separate issue). Acked-by: Len Brown <len.brown@intel.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* wmi: (!x & y) strikes againAl Viro2008-02-13
| | | | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Acked-by: Carlos Corbacho <carlos@strangeworlds.co.uk> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* WMI: initialize wmi_blocks.list even if ACPI is disabledLinus Torvalds2008-02-11
| | | | | | | | | | | | Even if we don't want to register the WMI driver, we should initialize the wmi_blocks list to be empty, since we don't want the wmi helper functions to oops just because that basic list has not even been set up. With this, "find_guid()" will happily return "not found" rather than oopsing all over the place, and the callers will then just automatically return false or AE_NOT_FOUND as appropriate. Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* Change pci_raw_ops to pci_raw_read/writeMatthew Wilcox2008-02-10
| | | | | | | | | | We want to allow different implementations of pci_raw_ops for standard and extended config space on x86. Rather than clutter generic code with knowledge of this, we make pci_raw_ops private to x86 and use it to implement the new raw interface -- raw_pci_read() and raw_pci_write(). Signed-off-by: Matthew Wilcox <willy@linux.intel.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* x86: fix sparse warnings in acpi/bus.cHarvey Harrison2008-02-09
| | | | | | | | | | | | | | | | | Add function definition and extern variables to asm-x86/acpi.h. All of these are used in bus.c in ifdef(CONFIG_X86) sections, so are only added to the x86 include headers. boot.c already includes acpi.h so no changes are needed there. Fixes the following: arch/x86/kernel/acpi/boot.c:83:4: warning: symbol 'acpi_sci_flags' was not declared. Should it be static? arch/x86/kernel/acpi/boot.c:84:5: warning: symbol 'acpi_sci_override_gsi' was not declared. Should it be static? arch/x86/kernel/acpi/boot.c:421:13: warning: symbol 'acpi_pic_sci_set_trigger' was not declared. Should it be static? Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com> Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
* ACPI: SBS: Host controller must initialize before SBS.Alexey Starikovskiy2008-02-09
| | | | | | | | | | In static case sbshc must be compiled ahead of sbs, so that hc is configured first. http://bugzilla.kernel.org/show_bug.cgi?id=9910 Signed-off-by: Alexey Starikovskiy <astarikovskiy@suse.de> Signed-off-by: Len Brown <len.brown@intel.com>
* Merge branches 'release', 'dmi' and 'misc' into releaseLen Brown2008-02-08
|\
| * ACPI: WMI: Improve Kconfig descriptionCarlos Corbacho2008-02-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As Pavel Machek has pointed out, the Kconfig entry for WMI is pretty non-descriptive. Rewrite it so that it explains what ACPI-WMI is, and why anyone would want to enable it. Many thanks to Ray Lee for ideas on this. Signed-off-by: Carlos Corbacho <carlos@strangeworlds.co.uk> CC: Pavel Machek <pavel@ucw.cz> CC: Ray Lee <ray-lk@madrabbit.org> Signed-off-by: Len Brown <len.brown@intel.com>
| * ACPI: build WMI on X86 onlyLen Brown2008-02-07
| | | | | | | | Signed-off-by: Len Brown <len.brown@intel.com>
| * ACPI: cpufreq: Print _PPC changes via cpufreq debug layerThomas Renninger2008-02-07
| | | | | | | | | | | | | | enabled with CPU_FREQ_DEBUG Signed-off-by: Thomas Renninger <trenn@suse.de> Signed-off-by: Len Brown <len.brown@intel.com>
| * ACPI: add newline to printkLen Brown2008-02-07
| | | | | | | | Signed-off-by: Len Brown <len.brown@intel.com>
* | ACPI: DMI: add Panasonic CF-52 and Thinpad X61Len Brown2008-02-08
|/ | | | | | | Add Lenovo X61 Add Panasonic Toughbook CF-52 Signed-off-by: Len Brown <len.brown@intel.com>
* ACPI: fix build warningLen Brown2008-02-07
| | | | | | drivers/acpi/system.c:360: warning: ignoring return value of ‘sysfs_create_group’, declared with attribute warn_unused_result Signed-off-by: Len Brown <len.brown@intel.com>
* Merge branches 'release' and 'dsdt-override' into releaseLen Brown2008-02-07
|\
| * ACPI: update intrd DSDT override console messagesLen Brown2008-02-07
| | | | | | | | | | | | also, address some checkpatch.pl violations Signed-off-by: Len Brown <len.brown@intel.com>
| * ACPI: update DSDT override documentationLen Brown2008-02-07
| | | | | | | | Signed-off-by: Len Brown <len.brown@intel.com>
| * ACPI: Add "acpi_no_initrd_override" kernel parameterÉric Piel2008-02-07
| | | | | | | | | | | | | | | | The acpi_no_initrd_override parameter permits to disable the load of an ACPI table from the initramfs. Signed-off-by: Eric Piel <eric.piel@tremplin-utc.net> Signed-off-by: Len Brown <len.brown@intel.com>
| * ACPI: Taint kernel on ACPI table override (format corrected)Éric Piel2008-02-06
| | | | | | | | | | | | | | | | When an ACPI table is overridden (for now this can happen only for DSDT) display a big warning and taint the kernel with flag A. Signed-off-by: Eric Piel <eric.piel@tremplin-utc.net> Signed-off-by: Len Brown <len.brown@intel.com>
| * ACPI: basic initramfs DSDT override supportMarkus Gaugusch2008-02-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The basics of DSDT from initramfs. In case this option is selected, populate_rootfs() is called a bit earlier to have the initramfs content available during ACPI initialization. This is a very similar path to the one available at http://gaugusch.at/kernel.shtml but with some update in the documentation, default set to No and the change of populate_rootfs() the "Jeff Mahony way" (which avoids reading the initramfs twice). Signed-off-by: Thomas Renninger <trenn@suse.de> Signed-off-by: Eric Piel <eric.piel@tremplin-utc.net> Signed-off-by: Len Brown <len.brown@intel.com>
* | Merge branches 'release' and 'fluff' into releaseLen Brown2008-02-07
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: drivers/acpi/scan.c include/linux/acpi.h Signed-off-by: Len Brown <len.brown@intel.com>
| * | ACPI: its a directory not a folder....Alan Cox2008-02-07
| | | | | | | | | | | | | | | | | | | | | The kernel help consistently uses 'directory' Signed-off-by: Alan Cox <alan@redhat.com> Signed-off-by: Len Brown <len.brown@intel.com>
| * | ACPI: misc cleanupsAdrian Bunk2008-02-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch contains the following possible cleanups: - make the following needlessly global code static: - drivers/acpi/bay.c:dev_attr_eject - drivers/acpi/bay.c:dev_attr_present - drivers/acpi/dock.c:dev_attr_docked - drivers/acpi/dock.c:dev_attr_flags - drivers/acpi/dock.c:dev_attr_uid - drivers/acpi/dock.c:dev_attr_undock - drivers/acpi/pci_bind.c:acpi_pci_unbind() - drivers/acpi/pci_link.c:acpi_link_lock - drivers/acpi/sbs.c:acpi_sbs_callback() - drivers/acpi/sbshc.c:acpi_smbus_transaction() - drivers/acpi/sleep/main.c:acpi_sleep_prepare() - #if 0 the following unused global functions: - drivers/acpi/numa.c:acpi_unmap_pxm_to_node() - remove the following unused EXPORT_SYMBOL's: - acpi_register_gsi - acpi_unregister_gsi - acpi_strict - acpi_bus_receive_event - register_acpi_bus_type - unregister_acpi_bus_type - acpi_os_printf - acpi_os_sleep - acpi_os_stall - acpi_os_read_pci_configuration - acpi_os_create_semaphore - acpi_os_delete_semaphore - acpi_os_wait_semaphore - acpi_os_signal_semaphore - acpi_os_signal - acpi_pci_irq_enable - acpi_get_pxm Signed-off-by: Adrian Bunk <bunk@kernel.org> Acked-by: Alexey Starikovskiy <astarikovskiy@suse.de> Signed-off-by: Len Brown <len.brown@intel.com>
| * | ACPI: add missing prink prefix stringsLen Brown2008-02-07
| |/ | | | | | | Signed-off-by: Len Brown <len.brown@intel.com>
* | Merge branches 'release' and 'hwmon-conflicts' into releaseLen Brown2008-02-07
|\ \
| * | ACPI: Export acpi_check_resource_conflictThomas Renninger2008-02-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Export acpi_check_resource_conflict(), sometimes drivers already have a struct resource at hand so no need to use the wrappers to build a new one. Signed-off-by: Jean Delvare <jdelvare@suse.de> Cc: "Mark M. Hoffman" <mhoffman@lightlink.com> Cc: Bjorn Helgaas <bjorn.helgaas@hp.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Len Brown <len.brown@intel.com>
| * | ACPI: track opregion names to avoid driver resource conflicts.Thomas Renninger2008-02-07
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Small ACPICA extension to be able to store the name of operation regions in osl.c later In ACPI, AML can define accesses to IO ports and System Memory by Operation Regions. Those are not registered as done by PNPACPI using resource templates (and _CRS/_SRS methods). The IO ports and System Memory regions may get accessed by arbitrary AML code. When native drivers are accessing the same resources bad things can happen (e.g. a critical shutdown temperature of 3000 C every 2 months or so). It is not really possible to register the operation regions via request_resource, as they often overlap with pnp or other resources (e.g. statically setup IO resources below 0x100). This approach stores all Operation Region declarations (IO and System Memory only) at ACPI table parse time. It offers a similar functionality like request_region and let drivers which are known to possibly use the same IO ports and Memory which are also often used by ACPI (hwmon and i2c) check for ACPI interference. A boot parameter acpi_enforce_resources=strict/lax/no is provided, which is default set to lax: - strict: let conflicting drivers fail to load with an error message - lax: let conflicting driver work normal with a warning message - no: no functional change at all Depending on the feedback and the kind of interferences we see, this should be set to strict at later time. Goal of this patch set is: - Identify ACPI interferences in bug reports (very hard to reproduce and to identify) - Find BIOSes for that an ACPI driver should exist for specific HW instead of a native one. - stability in general Provide acpi_check_{mem_}region. Drivers can additionally check against possible ACPI interference by also invoking this shortly before they call request_region. If -EBUSY is returned, the driver must not load. Use acpi_enforce_resources=strict/lax/no options to: - strict: let conflicting drivers fail to load with an error message - lax: let conflicting driver work normal with a warning message - no: no functional change at all Cc: "Mark M. Hoffman" <mhoffman@lightlink.com> Cc: Jean Delvare <khali@linux-fr.org> Cc: Len Brown <lenb@kernel.org> Cc: Bjorn Helgaas <bjorn.helgaas@hp.com> Signed-off-by: Thomas Renninger <trenn@suse.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Len Brown <len.brown@intel.com>
* | Merge branches 'release' and 'throttling-domains' into releaseLen Brown2008-02-07
|\ \
| * | ACPI: throttling: fix build warningLen Brown2008-02-02
| | | | | | | | | | | | Signed-off-by: Len Brown <len.brown@intel.com>
| * | ACPI: Update the t-state for every affected cpu when t-state is changedZhao Yakui2008-02-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | According to ACPI spec, the _TSD object provides T-state control cross logical processor dependency information to OSPM. So the t-state coordination should be considered when T-state for one cpu is changed. According to ACPI spec, three types of coordination are defined. SW_ALL, SW_ANY and HW_ALL. SW_ALL: it means that OSPM needs to initiate T-state transition on all processors in the domain. It is necessary to call throttling set function for all affected cpus. SW_ANY: it means that OSPM may initiate T-state transition on any processor in the domain. HW_ALL: Spec only says that hardware will perform the coordination and doesn't recommend how OSPM coordinate T-state among the affected cpus. So it is treated as the type of SW_ALL. It means that OSPM needs to initiate t-state transition on all the processors in the domain. Signed-off-by: Zhao Yakui <yakui.zhao@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
| * | ACPI : Add T-state event notifier functionZhao Yakui2008-02-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The t-state coordination should be considered when T-state for one cpu is changed.It means that OSPM should select one proper target T-state for the all affected cpus before updating T-state. So the function of acpi_processor_throttling_notifier is added. Before updating T-state it can be called for all the affected cpus to get the proper target T-state, which can meet the requirement of thermal, user and _TPC. After updating T-state, it can be called to update T-state flag. Signed-off-by: Zhao Yakui <yakui.zhao@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
| * | ACPI : Update T-state coordination after getting _TSD infoZhao Yakui2008-02-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Accordint to ACPI spec, the _TSD object provides T-state control cross logical processor dependency information to OSPM. After the _TSD data for all cpus are obtained, OSPM will set up the T-state coordination between CPUs. Of course if the _TSD doesn't exist or _TSD data is incorrect , it is assumed that there is no T-state coordination and T-state is changed independently. Now there is no proper solution to update T-state coordination after one cpu is hotplugged. So this patch won't support hotplugged cpu very well. Signed-off-by: Zhao Yakui <yakui.zhao@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>