1. 13 3月, 2008 1 次提交
  2. 02 2月, 2008 5 次提交
  3. 07 12月, 2007 1 次提交
  4. 10 10月, 2007 1 次提交
    • J
      drivers/firmware: const-ify DMI API and internals · 1855256c
      Jeff Garzik 提交于
      Three main sets of changes:
      
      1) dmi_get_system_info() return value should have been marked const,
         since callers should not be changing that data.
      
      2) const-ify DMI internals, since DMI firmware tables should,
         whenever possible, be marked const to ensure we never ever write to
         that data area.
      
      3) const-ify DMI API, to enable marking tables const where possible
         in low-level drivers.
      
      And if we're really lucky, this might enable some additional
      optimizations on the part of the compiler.
      
      The bulk of the changes are #2 and #3, which are interrelated.  #1 could
      have been a separate patch, but it was so small compared to the others,
      it was easier to roll it into this changeset.
      Signed-off-by: NJeff Garzik <jgarzik@redhat.com>
      1855256c
  5. 06 9月, 2007 1 次提交
  6. 05 9月, 2007 1 次提交
    • L
      ACPI: thermal: use round_jiffies when thermal zone polling is enabled · 21bc42ab
      Len Brown 提交于
      Properly functioning systems do not use thermal zone polling,
      they use event-based notification.
      
      However, some users enable periodic thermal zone polling
      to work around bugs on their platforms, and at least one
      platform exists with a real _TZP that requests polling.
      
      While thermal zone polling (_TZP) is specified in units to 0.1 seconds,
      it actually has a maximum granularity of 1 second.  Thus, we can safely
      round up the _TZP timeout to occur on the next 1-second boundary.
      This will batch it with other 1-second-granularity timers in the
      system and thus potentially extend processor idle duration.
      
      Note that the same timer is used both for _TZP
      and for passive processor thermal throttling.
      We can not round up the timeout when it is used
      for passive thermal throttling.
      
      Also, we can not make this a deferrable timer,
      as temperature is just as relevant during idle
      as it is during non-idle.
      Signed-off-by: NLen Brown <len.brown@intel.com>
      21bc42ab
  7. 25 8月, 2007 1 次提交
  8. 24 8月, 2007 2 次提交
    • L
      ACPI: Schedule /proc/acpi/event for removal · 14e04fb3
      Len Brown 提交于
      Schedule /proc/acpi/event for removal in 6 months.
      
      Re-name acpi_bus_generate_event() to acpi_bus_generate_proc_event()
      to make sure there is no confusion that it is for /proc/acpi/event only.
      
      Add CONFIG_ACPI_PROC_EVENT to allow removal of /proc/acpi/event.
      There is no functional change if CONFIG_ACPI_PROC_EVENT=y
      Signed-off-by: NLen Brown <len.brown@intel.com>
      14e04fb3
    • Z
      ACPI: don't duplicate input events on netlink · 962ce8ca
      Zhang Rui 提交于
      The previous events patch added a netlink event for every
      user of the legacy /proc/acpi/event interface.
      
      However, some users of /proc/acpi/event are really input events,
      and they already report their events via the input layer.
      
      Introduce a new interface, acpi_bus_generate_netlink_event(),
      which is explicitly called by devices that want to repoprt
      events via netlink.  This allows the input-like events
      to opt-out of generating netlink events.  In summary:
      
      events that are sent via netlink:
      	ac/battery/sbs
      	thermal
      	processor
      	thinkpad_acpi dock/bay
      
      events that are sent via input layer:
      	button
      	video hotkey
      	thinkpad_acpi hotkey
      	asus_acpi/asus-laptop hotkey
      	sonypi/sonylaptop
      Signed-off-by: NZhang Rui <rui.zhang@intel.com>
      Signed-off-by: NLen Brown <len.brown@intel.com>
      962ce8ca
  9. 21 8月, 2007 1 次提交
  10. 15 8月, 2007 2 次提交
  11. 12 8月, 2007 6 次提交
    • L
      ACPI: thermal: add DMI hooks to handle AOpen's broken Award BIOS · 0b5bfa1c
      Len Brown 提交于
      Use DMI to:
      1. enable polling (BIOS thermal events are broken)
      2. disable active trip points (BIOS fan control is broken)
      3. disable passive trip point (BIOS hard-codes it too low)
      
      The actual temperature reading does work,
      and with the aid of polling, the critical
      trip point should work too.
      
      http://bugzilla.kernel.org/show_bug.cgi?id=8842Signed-off-by: NLen Brown <len.brown@intel.com>
      0b5bfa1c
    • L
      ACPI: thermal: create "thermal.act=" to disable or override active trip point · f8707ec9
      Len Brown 提交于
      thermal.act=-1 disables all active trip points
      in all ACPI thermal zones.
      
      thermal.act=C, where C > 0, overrides all lowest temperature
      active trip points in all thermal zones to C degrees Celsius.
      Raising this trip-point may allow you to keep your system silent
      up to a higher temperature.  However, it will not allow you to
      raise the lowest temperature trip point above the next higher
      trip point (if there is one).  Lowering this trip point may
      kick in the fan sooner.
      
      Note that overriding this trip-point will disable any BIOS attempts
      to implement hysteresis around the lowest temperature trip point.
      This may result in the fan starting and stopping frequently
      if temperature frequently crosses C.
      
      WARNING: raising trip points above the manufacturer's defaults
      may cause the system to run at higher temperature and shorten
      its life.
      Signed-off-by: NLen Brown <len.brown@intel.com>
      f8707ec9
    • L
      ACPI: thermal: create "thermal.nocrt" to disable critical actions · f5487145
      Len Brown 提交于
      thermal.nocrt=1 disables actions on _CRT and _HOT
      ACPI thermal zone trip-points.  They will be marked
      as <disabled> in /proc/acpi/thermal_zone/*/trip_points.
      
      There are two cases where this option is used:
      
      1. Debugging a hot system crossing valid trip point.
      
         If your system fan is spinning at full speed,
         be sure that the vent is not clogged with dust.
         Many laptops have very fine thermal fins that are easily blocked.
      
         Check that the processor fan-sink is properly seated,
         has the proper thermal grease, and is really spinning.
      
         Check for fan related options in BIOS SETUP.
         Sometimes there is a performance vs quiet option.
         Defaults are generally the most conservative.
      
         If your fan is not spinning, yet /proc/acpi/fan/
         has files in it, please file a Linux/ACPI bug.
      
         WARNING: you risk shortening the lifetime of your
         hardware if you use this parameter on a hot system.
         Note that this refers to all system components,
         including the disk drive.
      
      2. Working around a cool system crossing critical
         trip point due to erroneous temperature reading.
      
         Try again with CONFIG_HWMON=n
         There is known potential for conflict between the
         the hwmon sub-system and the ACPI BIOS.
         If this fixes it, notify lm-sensors@lm-sensors.org
         and linux-acpi@vger.kernel.org
      
         Otherwise, file a Linux/ACPI bug, or notify
         just linux-acpi@vger.kernel.org.
      Signed-off-by: NLen Brown <len.brown@intel.com>
      f5487145
    • L
      ACPI: thermal: create "thermal.psv=" to override passive trip points · a70cdc52
      Len Brown 提交于
      "thermal.psv=-1" disables passive trip points
      for all ACPI thermal zones.
      
      "thermal.psv=C", where 'C' is degrees Celsius,
      overrides all existing passive trip points
      for all ACPI thermal zones.
      
      thermal.psv is checked at module load time,
      and in response to trip-point change events.
      
      Note that if the system does not deliver thermal zone
      temperature change events near the new trip-point,
      then it will not be noticed.  To force your custom
      trip point to be noticed, you may need to enable polling:
      eg. thermal.tzp=3000 invokes polling every 5 minutes.
      
      Note that once passive thermal throttling is invoked,
      it has its own internal Thermal Sampling Period (_TSP),
      that is unrelated to _TZP.
      
      WARNING: disabling or raising a thermal trip point
      may result in increased running temperature and
      shorter hardware lifetime on some systems.
      Signed-off-by: NLen Brown <len.brown@intel.com>
      a70cdc52
    • L
      ACPI: thermal: expose "thermal.tzp=" to set global polling frequency · 730ff34d
      Len Brown 提交于
      Thermal Zone Polling frequency (_TZP) is an optional ACPI object
      recommending the rate that the OS should poll the associated thermal zone.
      
      If _TZP is 0, no polling should be used.
      If _TZP is non-zero, then the platform recommends that
      the OS poll the thermal zone at the specified rate.
      The minimum period is 30 seconds.
      The maximum period is 5 minutes.
      
      (note _TZP and thermal.tzp units are in deci-seconds,
       so _TZP = 300 corresponds to 30 seconds)
      
      If _TZP is not present, ACPI 3.0b recommends that the
      thermal zone be polled at an "OS provided default frequency".
      
      However, common industry practice is:
      1. The BIOS never specifies any _TZP
      2. High volume OS's from this century never poll any thermal zones
      
      Ie. The OS depends on the platform's ability to
      provoke thermal events when necessary, and
      the "OS provided default frequency" is "never":-)
      
      There is a proposal that ACPI 4.0 be updated to reflect
      common industry practice -- ie. no _TZP, no polling.
      
      The Linux kernel already follows this practice --
      thermal zones are not polled unless _TZP is present and non-zero.
      
      But thermal zone polling is useful as a workaround for systems
      which have ACPI thermal control, but have an issue preventing
      thermal events.  Indeed, some Linux distributions still
      set a non-zero thermal polling frequency for this reason.
      
      But rather than ask the user to write a polling frequency
      into all the /proc/acpi/thermal_zone/*/polling_frequency
      files, here we simply document and expose the already
      existing module parameter to do the same at system level,
      to simplify debugging those broken platforms.
      
      Note that thermal.tzp is a module-load time parameter only.
      Signed-off-by: NLen Brown <len.brown@intel.com>
      730ff34d
    • L
      ACPI: thermal: create "thermal.off=1" to disable ACPI thermal support · 72b33ef8
      Len Brown 提交于
      "thermal.off=1" disables all ACPI thermal support at boot time.
      
      CONFIG_ACPI_THERMAL=n can do this at build time.
      "# rmmod thermal" can do this at run time,
      as long as thermal is built as a module.
      
      WARNING: On some systems, disabling ACPI thermal support
      will cause the system to run hotter and reduce the
      lifetime of the hardware.
      Signed-off-by: NLen Brown <len.brown@intel.com>
      72b33ef8
  12. 24 7月, 2007 1 次提交
  13. 18 7月, 2007 1 次提交
    • J
      Add common orderly_poweroff() · 10a0a8d4
      Jeremy Fitzhardinge 提交于
      Various pieces of code around the kernel want to be able to trigger an
      orderly poweroff.  This pulls them together into a single
      implementation.
      
      By default the poweroff command is /sbin/poweroff, but it can be set
      via sysctl: kernel/poweroff_cmd.  This is split at whitespace, so it
      can include command-line arguments.
      
      This patch replaces four other instances of invoking either "poweroff"
      or "shutdown -h now": two sbus drivers, and acpi thermal
      management.
      
      sparc64 has its own "powerd"; still need to determine whether it should
      be replaced by orderly_poweroff().
      Signed-off-by: NJeremy Fitzhardinge <jeremy@xensource.com>
      Acked-by: NLen Brown <lenb@kernel.org>
      Signed-off-by: NChris Wright <chrisw@sous-sol.org>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: Randy Dunlap <randy.dunlap@oracle.com>
      Cc: Andi Kleen <ak@suse.de>
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      Cc: Arnd Bergmann <arnd@arndb.de>
      Cc: David S. Miller <davem@davemloft.net>
      10a0a8d4
  14. 18 6月, 2007 1 次提交
  15. 30 5月, 2007 1 次提交
  16. 01 5月, 2007 2 次提交
    • L
      ACPI: delete un-reliable concept of cooling mode · eaca2d3f
      Len Brown 提交于
      The scheme where the thermal driver displayed the
      cooling mode /proc/acpi/thermal_zone/*/cooling_mode
      was flawed in two ways.
      
      First, the success of _SCP doesn't actually mean
      that the BIOS moved any trip points.
      On many BIOS, _SCP is present, but does nothing.
      So displaying what _SCP executed actually
      was wrong more times than it was right.
      
      Second, examining the relative position of the
      trip points when the thermal_zone is added
      is insufficient -- as the BIOS reserves the right
      to change the trip points at run-time.
      
      The only reliable way for the user to determine if
      the thermal zone is in active, passive, or critical
      mode is to examine the relative position of the trip points.
      The user can do this without the kernel doing it
      for them by looking in /proc/acpi/thermal_zone/*/trip_points
      
      New contents for /proc/acpi/thermal_zone/*/cooling_mode:
      
      If _SCP available:
      "0 - Active; 1 - Passive\n"
      
      If _SCP unavailable:
      "<setting not supported>\n"
      Signed-off-by: NLen Brown <len.brown@intel.com>
      eaca2d3f
    • L
      ACPI: thermal trip points are read-only · 11ccc0f2
      Len Brown 提交于
      /proc/acpi/thermal_zone/*/trip_points displays
      what the kernel reads from the BIOS via ACPI.
      
      If you echo a string of ':' deliminted numbers to this file
      then it will change what it displays.
      
      But it shouldn't, since the kernel has no way to communicate
      these changes to ACPI thermal zones.  ACPI thermal zone
      trip points are read-only.
      
      The kernel does have the opportunity to ask the BIOS to change
      the trip points with _SCP - Set Cooling Policy.
      
      Request Active Cooling Mode:
      # echo 0 > /proc/acpi/thermal_zone/*/cooling_policy
      
      Request Passive Cooling Mode:
      # echo 1 > /proc/acpi/thermal_zone/*/cooling_policy
      
      However, in practice it is quite rare for the BIOS
      to support the optional _SCP, and it is even more rare
      for the BIOS to export an _SCP that actually changes
      the trip points.
      Signed-off-by: NLen Brown <len.brown@intel.com>
      11ccc0f2
  17. 24 4月, 2007 1 次提交
  18. 16 2月, 2007 2 次提交
  19. 15 2月, 2007 1 次提交
    • T
      [PATCH] remove many unneeded #includes of sched.h · cd354f1a
      Tim Schmielau 提交于
      After Al Viro (finally) succeeded in removing the sched.h #include in module.h
      recently, it makes sense again to remove other superfluous sched.h includes.
      There are quite a lot of files which include it but don't actually need
      anything defined in there.  Presumably these includes were once needed for
      macros that used to live in sched.h, but moved to other header files in the
      course of cleaning it up.
      
      To ease the pain, this time I did not fiddle with any header files and only
      removed #includes from .c-files, which tend to cause less trouble.
      
      Compile tested against 2.6.20-rc2 and 2.6.20-rc2-mm2 (with offsets) on alpha,
      arm, i386, ia64, mips, powerpc, and x86_64 with allnoconfig, defconfig,
      allmodconfig, and allyesconfig as well as a few randconfigs on x86_64 and all
      configs in arch/arm/configs on arm.  I also checked that no new warnings were
      introduced by the patch (actually, some warnings are removed that were emitted
      by unnecessarily included header files).
      Signed-off-by: NTim Schmielau <tim@physik3.uni-rostock.de>
      Acked-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      cd354f1a
  20. 13 2月, 2007 3 次提交
    • L
      ACPI: delete extra #defines in /drivers/acpi/ drivers · 7cda93e0
      Len Brown 提交于
      Cosmetic only.
      
      Except in a single case, #define ACPI_*_DRIVER_NAME
      were invoked 0 or 1 times.
      Signed-off-by: NLen Brown <len.brown@intel.com>
      7cda93e0
    • L
      ACPI: fix acpi_driver.name usage · c2b6705b
      Len Brown 提交于
      It was erroneously used as a description rather than a name.
      
      ie. turn this:
      
      lenb@se7525gp2:/sys> ls bus/acpi/drivers
      ACPI AC Adapter Driver  ACPI Embedded Controller Driver  ACPI Power Resource Driver
      ACPI Battery Driver     ACPI Fan Driver                  ACPI Processor Driver
      ACPI Button Driver      ACPI PCI Interrupt Link Driver   ACPI Thermal Zone Driver
      ACPI container driver   ACPI PCI Root Bridge Driver      hpet
      
      into this:
      
      lenb@se7525gp2:~> ls /sys/bus/acpi/drivers
      ac  battery  button  container  ec  fan  hpet  pci_link  pci_root  power  processor  thermal
      Signed-off-by: NLen Brown <len.brown@intel.com>
      c2b6705b
    • L
      ACPI: clean up ACPI_MODULE_NAME() use · f52fd66d
      Len Brown 提交于
      cosmetic only
      
      Make "module name" actually match the file name.
      Invoke with ';' as leaving it off confuses Lindent and gcc doesn't care.
      Fix indentation where Lindent did get confused.
      Signed-off-by: NLen Brown <len.brown@intel.com>
      f52fd66d
  21. 21 12月, 2006 1 次提交
  22. 16 12月, 2006 1 次提交
  23. 14 10月, 2006 1 次提交
  24. 11 7月, 2006 1 次提交
    • K
      [PATCH] ACPI: fix fan/thermal resume · bed936f7
      Konstantin Karasyov 提交于
      Daniel Ritz <daniel.ritz-ml@swissonline.ch> says:
      
      The acpi driver suspend/resume patches that went in recently caused a regression
      on my box (toshiba tecra 8000 laptop): after resume from swsusp the fan turns on
      keeping blowing cold air out of my notebook. before the patches, the fan was off
      and would only make noise when required. it's the same thing described in
      bugzilla.kernel.org #5000. the acpi suspend/resume patches or at least parts of
      them originate in this bug. now the last patch in the report (attach id 8438)
      actually fixes the problem - for me and the reporter. this is a trimmed down
      version of that patch.
      Signed-off-by: NDaniel Ritz <daniel.ritz@gmx.ch>
      Cc: Len Brown <len.brown@intel.com>
      Cc: Sanjoy Mahajan <sanjoy@mrao.cam.ac.uk>
      Cc: Pavel Machek <pavel@suse.cz>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      bed936f7
  25. 10 7月, 2006 1 次提交