summaryrefslogtreecommitdiffstats
path: root/drivers/acpi
Commit message (Collapse)AuthorAgeFilesLines
* [PATCH] driver core: replace "hotplug" by "uevent"Kay Sievers2006-01-043-15/+15
| | | | | | | | | Leave the overloaded "hotplug" word to susbsystems which are handling real devices. The driver core does not "plug" anything, it just exports the state to userspace and generates events. Signed-off-by: Kay Sievers <kay.sievers@suse.de> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Pull bug3410 into release branchLen Brown2005-12-221-2/+2
|\
| * [ACPI] fix passive cooling regressionThomas Renninger2005-12-221-2/+2
| | | | | | | | | | | | | | | | | | | | | | Return logic was inverted. Going for changing the return value to not return zero as it is makes more sense regarding the naming of the function (cpu_has_cpufreq()). http://bugzilla.kernel.org/show_bug.cgi?id=3410 Signed-off-by: Thomas Renninger <trenn@suse.de> Signed-off-by: Len Brown <len.brown@intel.com>
* | Pull owner_id into release branchLen Brown2005-12-221-9/+9
|\ \
| * | [ACPI] fix build warning from owner_id patchLen Brown2005-12-221-1/+1
| | | | | | | | | | | | Signed-off-by: Len Brown <len.brown@intel.com>
| * | [ACPI] increase owner_id limit to 64 from 32Alex Williamson2005-12-211-9/+9
| |/ | | | | | | | | | | | | | | This is an interim patch until changes in an updated ACPICA core increase the limit to 255. Signed-off-by: Alex Williamson <alex.williamson@hp.com> Signed-off-by: Len Brown <len.brown@intel.com>
* | Auto-update from upstreamLen Brown2005-12-141-1/+1
|\ \ | |/
| * [PATCH] ACPI: fix sleeping whilst atomic warnings on resumeDave Jones2005-12-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This has been broken for months. On resume, we call acpi_pci_link_set() with interrupts off, so we get a warning when we try to do a kmalloc of non atomic memory. The actual allocation is just 2 long's (plus extra byte for some reason I can't fathom), so a simple conversion to GFP_ATOMIC is probably the safest way to fix this. The error looks like this.. Debug: sleeping function called from invalid context at mm/slab.c:2486 in_atomic():0, irqs_disabled():1 [<c0143f6c>] kmem_cache_alloc+0x40/0x56 [<c0206a2e>] acpi_pci_link_set+0x3f/0x17f [<c0206f96>] irqrouter_resume+0x1e/0x3c [<c0239bca>] __sysdev_resume+0x11/0x6b [<c0239e88>] sysdev_resume+0x34/0x52 [<c023de21>] device_power_up+0x5/0xa Signed-off-by: Dave Jones <davej@redhat.com> Cc: "Brown, Len" <len.brown@intel.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* | Pull 5165 into release branchLen Brown2005-12-051-5/+15
|\ \ | |/ |/|
| * [ACPI] correct earlier SMP deep C-states on HT patchDavid Shaohua Li2005-12-051-5/+15
| | | | | | | | | | | | | | | | | | | | | | http://bugzilla.kernel.org/show_bug.cgi?id=5165 Change polarity of test for PLVL2_UP flag. Skip promotion/demotion code when not needed. Signed-off-by: Shaohua Li <shaohua.li@intel.com> Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
* | Add missing "local_irq_enable()" to C2/C3 exit logicLinus Torvalds2005-12-021-0/+1
| | | | | | | | | | | | Silly bug crept in with the C2/C3 TIF_POLLING_NRFLAG fixes. Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* | [PATCH] Fix TIF_POLLING_NRFLAG in ACPI idle routinesNick Piggin2005-12-021-7/+14
| | | | | | | | | | | | | | | | | | | | Commit 64c7c8f88559624abdbe12b5da6502e8879f8d28 broke the ACPI C2 and C3 sleep states, because it left TIF_POLLING_NRFLAG active even though those states do not actually poll the reschedule flag at all. As a result, the CPU wouldn't get sent an IPI when it was to be woken up, and would only notice that it had runnable processes on the next timer tick. Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* | Pull 3410 into release branchLen Brown2005-12-012-93/+108
|\ \
| * | [ACPI] Allow return to active cooling mode once passive mode is enteredThomas Renninger2005-11-302-93/+108
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | http://bugzilla.kernel.org/show_bug.cgi?id=3410 https://bugzilla.novell.com/show_bug.cgi?id=131543 Signed-off-by: Thomas Renninger <trenn@suse.de> Signed-off-by: Konstantin Karasyov <konstantin.a.karasyov@intel.com> Signed-off-by: Alexey Starikovskiy <alexey.y.starikovskiy@intel.com> Signed-off-by: Yu Luming <luming.yu@gmail.com> Signed-off-by: Andrew Morton <akpm@osdl.org>
* | | Pull 5452 into release branchLen Brown2005-12-011-0/+15
|\ \ \
| * | | [ACPI] fix 2.6.13 boot hang regression on HT box w/ broken BIOSVenkatesh Pallipadi2005-11-301-0/+15
| |/ / | | | | | | | | | | | | | | | | | | http://bugzilla.kernel.org/show_bug.cgi?id=5452 Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
* | | Pull 5571 into release branchLen Brown2005-12-011-1/+1
|\ \ \
| * | | [ACPI] Fix Null pointer deref in video/lcd/brightnessThomas Renninger2005-11-301-1/+1
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | http://bugzilla.kernel.org/show_bug.cgi?id=5571 Signed-off-by: Thomas Renninger <trenn@suse.de> Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com> Signed-off-by: Yu Luming <luming.yu@gmail.com> Cc: <stable@kernel.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Len Brown <len.brown@intel.com>
* | | [ACPI] delete "default y" on Kconfig for ibm_acpi extras driverBorislav Petkov2005-11-301-1/+0
| | | | | | | | | | | | | | | | | | Signed-off-by: Borislav Petkov <petkov@uni-muenster.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Len Brown <len.brown@intel.com>
* | | [ACPI] IA64 build: blacklist.c is used only on X86Al Viro2005-11-301-1/+1
| | | | | | | | | | | | | | | | | | Signed-off-by: Al Viro <viro@ftp.linux.org.uk> Signed-off-by: Len Brown <len.brown@intel.com> (cherry picked from ef4611613657dfb8af8d336f2f61f08cfcdc9d8a commit)
* | | Pull 5165 into release branchLen Brown2005-11-301-5/+24
|\ \ \ | | |/ | |/|
| * | [ACPI] Add support for FADT P_LVL2_UP flagVenkatesh Pallipadi2005-11-301-0/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | which tells us if C2 is valid for UP-only, or SMP. As there is no separate bit for C3, use P_LVL2_UP bit to cover both C2 and C3. http://bugzilla.kernel.org/show_bug.cgi?id=5165 Signed-off-by: Venkatesh Pallipadi<venkatesh.pallipadi@intel.com> Signed-off-by: Len Brown <len.brown@intel.com> (cherry picked from 28b86b368af3944eb383078fc5797caf2dc8ce44 commit)
| * | [ACPI] Prefer _CST over FADT for C-state capabilitiesVenkatesh Pallipadi2005-11-301-5/+5
| |/ | | | | | | | | | | | | | | | | | | | | | | | | Note: This ACPI standard compliance may cause regression on some system, if they have _CST present, but _CST value is bogus. "nocst" module parameter should workaround that regression. http://bugzilla.kernel.org/show_bug.cgi?id=5165 Signed-off-by: Venkatesh Pallipadi<venkatesh.pallipadi@intel.com> Signed-off-by: Len Brown <len.brown@intel.com> (cherry picked from 883baf7f7e81cca26f4683ae0d25ba48f094cc08 commit)
* | [ACPI] fix HP nx8220 boot hang regressionThomas Renninger2005-11-301-1/+1
|/ | | | | | | | | | | | | | | | | | This patch reverts the acpi_bus_find_driver() return value check that came in via the PCI tree via 3fb02738b0fd36f47710a2bf207129efd2f5daa2 [PATCH] acpi bridge hotadd: Allow ACPI .add and .start operations to be done independently This particular change broke booting of some HP/Compaq laptops unless acpi=noirq is used. http://bugzilla.kernel.org/show_bug.cgi?id=5221 https://bugzilla.novell.com/show_bug.cgi?id=116763 Signed-off-by: Thomas Renninger <trenn@suse.de> Cc: Rajesh Shah <rajesh.shah@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
* Fix ACPI processor power block initializationLinus Torvalds2005-11-181-10/+4
| | | | | | | | | | | | Properly clear the memory, and set "pr->flags.power" only if a C2 or deeper state is valid (to make the code match both the comment and previous behaviour). This fixes a boot-time lockup reported by Maneesh Soni when using "maxcpus=1". Acked-by: Maneesh Soni <maneesh@in.ibm.com> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] move pm_register/etc. to CONFIG_PM_LEGACY, pm_legacy.hJeff Garzik2005-11-131-1/+2
| | | | | | | | Since few people need the support anymore, this moves the legacy pm_xxx functions to CONFIG_PM_LEGACY, and include/linux/pm_legacy.h. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] pciehp: clean-up how we request control of hotplug hardwarerajesh.shah@intel.com2005-11-101-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | This patch further tweaks how we request control of hotplug controller hardware from BIOS. We first search the ACPI namespace corresponding to a specific hotplug controller looking for an _OSC or OSHP method. On failure, we successively move to the ACPI parent object, till we hit the highest level host bridge in the hierarchy. This allows for different types of BIOS's which place the _OSC/OSHP methods at various places in the acpi namespace, while still not encroaching on the namespace of some other root level host bridge. This patch also introduces a new load time option (pciehp_force) that allows us to bypass all _OSC/OSHP checking. Not supporting these methods seems to be be the most common ACPI firmware problem we've run into. This will still _not_ allow the pciehp driver to work correctly if the BIOS really doesn't support pciehp (i.e. if it doesn't generate a hotplug interrupt). Use this option with caution. Some BIOS's may deliberately not build any _OSC/OSHP methods to make sure it retains control the hotplug hardware. Using the pciehp_force parameter for such systems can lead to two separate entities trying to control the same hardware. Signed-off-by: Rajesh Shah <rajesh.shah@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* [PATCH] sched: resched and cpu_idle reworkNick Piggin2005-11-091-14/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make some changes to the NEED_RESCHED and POLLING_NRFLAG to reduce confusion, and make their semantics rigid. Improves efficiency of resched_task and some cpu_idle routines. * In resched_task: - TIF_NEED_RESCHED is only cleared with the task's runqueue lock held, and as we hold it during resched_task, then there is no need for an atomic test and set there. The only other time this should be set is when the task's quantum expires, in the timer interrupt - this is protected against because the rq lock is irq-safe. - If TIF_NEED_RESCHED is set, then we don't need to do anything. It won't get unset until the task get's schedule()d off. - If we are running on the same CPU as the task we resched, then set TIF_NEED_RESCHED and no further action is required. - If we are running on another CPU, and TIF_POLLING_NRFLAG is *not* set after TIF_NEED_RESCHED has been set, then we need to send an IPI. Using these rules, we are able to remove the test and set operation in resched_task, and make clear the previously vague semantics of POLLING_NRFLAG. * In idle routines: - Enter cpu_idle with preempt disabled. When the need_resched() condition becomes true, explicitly call schedule(). This makes things a bit clearer (IMO), but haven't updated all architectures yet. - Many do a test and clear of TIF_NEED_RESCHED for some reason. According to the resched_task rules, this isn't needed (and actually breaks the assumption that TIF_NEED_RESCHED is only cleared with the runqueue lock held). So remove that. Generally one less locked memory op when switching to the idle thread. - Many idle routines clear TIF_POLLING_NRFLAG, and only set it in the inner most polling idle loops. The above resched_task semantics allow it to be set until before the last time need_resched() is checked before going into a halt requiring interrupt wakeup. Many idle routines simply never enter such a halt, and so POLLING_NRFLAG can be always left set, completely eliminating resched IPIs when rescheduling the idle task. POLLING_NRFLAG width can be increased, to reduce the chance of resched IPIs. Signed-off-by: Nick Piggin <npiggin@suse.de> Cc: Ingo Molnar <mingo@elte.hu> Cc: Con Kolivas <kernel@kolivas.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] kfree cleanup: misc remaining driversJesper Juhl2005-11-073-16/+8
| | | | | | | | | | | | | | | | | | This is the remaining misc drivers/ part of the big kfree cleanup patch. Remove pointless checks for NULL prior to calling kfree() in misc files in drivers/. Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com> Acked-by: Aristeu Sergio Rozanski Filho <aris@cathedrallabs.org> Acked-by: Roland Dreier <rolandd@cisco.com> Acked-by: Pierre Ossman <drzeus@drzeus.cx> Acked-by: Jean Delvare <khali@linux-fr.org> Acked-by: Greg Kroah-Hartman <gregkh@suse.de> Acked-by: Len Brown <len.brown@intel.com> Acked-by: "Antonino A. Daplas" <adaplas@gmail.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] drivers/acpi: fix-up schedule_timeout() usageNishanth Aravamudan2005-11-071-4/+2
| | | | | | | | | | | Use schedule_timeout_interruptible() instead of set_current_state()/schedule_timeout() to reduce kernel size. Also use msecs_to_jiffies() instead of direct HZ division to avoid rounding errors. Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com> Cc: "Brown, Len" <len.brown@intel.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] fix missing includesTim Schmielau2005-10-301-0/+1
| | | | | | | | | | | | | | | | | | | | | I recently picked up my older work to remove unnecessary #includes of sched.h, starting from a patch by Dave Jones to not include sched.h from module.h. This reduces the number of indirect includes of sched.h by ~300. Another ~400 pointless direct includes can be removed after this disentangling (patch to follow later). However, quite a few indirect includes need to be fixed up for this. In order to feed the patches through -mm with as little disturbance as possible, I've split out the fixes I accumulated up to now (complete for i386 and x86_64, more archs to follow later) and post them before the real patch. This way this large part of the patch is kept simple with only adding #includes, and all hunks are independent of each other. So if any hunk rejects or gets in the way of other patches, just drop it. My scripts will pick it up again in the next round. Signed-off-by: Tim Schmielau <tim@physik3.uni-rostock.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] introduce .valid callback for pm_opsShaohua Li2005-10-301-0/+8
| | | | | | | | | | | Add pm_ops.valid callback, so only the available pm states show in /sys/power/state. And this also makes an earlier states error report at enter_state before we do actual suspend/resume. Signed-off-by: Shaohua Li<shaohua.li@intel.com> Acked-by: Pavel Machek<pavel@suse.cz> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] memory hotplug: move section_mem_map alloc to sparse.cDave Hansen2005-10-291-3/+2
| | | | | | | | | | | | | | | This basically keeps up from having to extern __kmalloc_section_memmap(). The vaddr_in_vmalloc_area() helper could go in a vmalloc header, but that header gets hard to work with, because it needs some arch-specific macros. Just stick it in here for now, instead of creating another header. Signed-off-by: Dave Hansen <haveblue@us.ibm.com> Signed-off-by: Lion Vollnhals <webmaster@schiggl.de> Signed-off-by: Jiri Slaby <xslaby@fi.muni.cz> Signed-off-by: Yasunori Goto <y-goto@jp.fujitsu.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] `unaligned access' in acpi get_root_bridge_busnr()Peter Chubb2005-10-191-4/+4
| | | | | | | | | | | | In drivers/acpi/glue.c the address of an integer is cast to the address of an unsigned long. This breaks on systems where a long is larger than an int --- for a start the int can be misaligned; for a second the assignment through the pointer will overwrite part of the next variable. Signed-off-by: Peter Chubb <peterc@gelato.unsw.edu.au> Acked-by: "Brown, Len" <len.brown@intel.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] Fix /proc/acpi/events around suspendPavel Machek2005-10-171-3/+2
| | | | | | | | | Fix -EIO on /proc/acpi/events after suspends. This actually breaks suspending by power button in many setups. Signed-off-by: Pavel Machek <pavel@suse.cz> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] remove ACPI S4bios supportPavel Machek2005-09-103-13/+1
| | | | | | | | | | | | Remove S4BIOS support. It is pretty useless, and only ever worked for _me_ once. (I do not think anyone else ever tried it). It was in feature-removal for a long time, and it should have been removed before. Signed-off-by: Pavel Machek <pavel@suse.cz> Signed-off-by: Adrian Bunk <bunk@stusta.de> Cc: "Brown, Len" <len.brown@intel.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] Fix CONFIG_ACPI_BLACKLIST_YEARviro@ZenIV.linux.org.uk2005-09-091-2/+1
| | | | | | | | This makes ACPI_BLACKLIST_YEAR be consistently defined when ACPI is enabled, regardless of whether we're on x86 or not, and thus avoids bogus -Wundef warnings on ia64. Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [ACPI] revert bad processor_core.c patch for bug 5128Len Brown2005-09-031-13/+10
| | | | Signed-off-by: Len Brown <len.brown@intel.com>
* [ACPI] build fix - processor_core.c w/ !CONFIG_SMPLen Brown2005-09-031-1/+1
| | | | | | http://bugzilla.kernel.org/show_bug.cgi?id=5128 Signed-off-by: Len Brown <len.brown@intel.com>
* [ACPI] acpi_video_device_write_state() now worksLuming Yu2005-09-031-1/+2
| | | | | | | http://bugzilla.kernel.org/show_bug.cgi?id=5060 Signed-off-by: Luming Yu <luming.yu@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
* [ACPI] fix processor_core.c for NR_CPUS > 256Venkatesh Pallipadi2005-09-031-9/+12
| | | | | | | http://bugzilla.kernel.org/show_bug.cgi?id=5128 Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
* [ACPI] fix run-time error checking in acpi_pci_irq_disable()Kenji Kaneshige2005-09-031-4/+1
| | | | | | | | | | The 'bus' field in pci_dev structure should be checked before calling pci_read_config_byte() because pci_bus_read_config_byte() called by pci_read_config_byte() refers to 'bus' field. Signed-off-by: Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Len Brown <len.brown@intel.com>
* [ACPI] add static to function definitionsAdrian Bunk2005-09-034-4/+5
| | | | | Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Len Brown <len.brown@intel.com>
* [ACPI] ACPICA 20050902Robert Moore2005-09-037-358/+331
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixed a problem with the internal Owner ID allocation and deallocation mechanisms for control method execution and recursive method invocation. This should eliminate the OWNER_ID_LIMIT exceptions and "Invalid OwnerId" messages seen on some systems. Recursive method invocation depth is currently limited to 255. (Alexey Starikovskiy) http://bugzilla.kernel.org/show_bug.cgi?id=4892 Completely eliminated all vestiges of support for the "module-level executable code" until this support is fully implemented and debugged. This should eliminate the NO_RETURN_VALUE exceptions seen during table load on some systems that invoke this support. http://bugzilla.kernel.org/show_bug.cgi?id=5162 Fixed a problem within the resource manager code where the transaction flags for a 64-bit address descriptor were handled incorrectly in the type-specific flag byte. Consolidated duplicate code within the address descriptor resource manager code, reducing overall subsystem code size. Signed-off-by: Robert Moore <Robert.Moore@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
* [ACPI] revert owner-id-3.patchLen Brown2005-09-034-34/+54
| | | | Signed-off-by: Len Brown <len.brown@intel.com>
* [ACPI] Error: Invalid owner_id: 00Alexey Y. Starikovskiy2005-08-314-54/+34
| | | | | Signed-off-by: Alexey Y. Starikovskiy <alexey.y.starikovskiy@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
* [ACPI] ACPICA 20050815Bob Moore2005-08-293-10/+24
| | | | | | | | | | | | | | Implemented a full bytewise compare to determine if a table load request is attempting to load a duplicate table. The compare is performed if the table signatures and table lengths match. This will allow different tables with the same OEM Table ID and revision to be loaded. Although the BIOS is technically violating the ACPI spec when this happens -- it does happen -- so Linux must handle it. Signed-off-by: Robert Moore <robert.moore@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
* Auto-update from upstreamLen Brown2005-08-291-1/+5
|\
| * [PATCH] acpi_shutdown: Only prepare for power off on power_offEric W. Biederman2005-08-271-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | When acpi_sleep_prepare was moved into a shutdown method we started calling it for all shutdowns. It appears this triggers some systems to power off on reboot. Avoid this by only calling acpi_sleep_prepare if we are going to power off the system. Signed-off-by: Eric W. Biederman <ebiederm@xmission.com> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* | merge ibm into testLen Brown2005-08-251-314/+1044
|\ \
OpenPOWER on IntegriCloud