Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
10
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Open sidebar
xcap
xcap-capability-linux
Commits
3f603ed3
Commit
3f603ed3
authored
Jul 12, 2005
by
Linus Torvalds
Browse files
Options
Browse Files
Download
Plain Diff
Merge master.kernel.org:/pub/scm/linux/kernel/git/lenb/linux-2.6
parents
55ee3b83
5028770a
Changes
198
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
198 changed files
with
7755 additions
and
5428 deletions
+7755
-5428
Documentation/acpi-hotkey.txt
Documentation/acpi-hotkey.txt
+35
-0
arch/frv/mb93090-mb00/pci-irq.c
arch/frv/mb93090-mb00/pci-irq.c
+1
-1
arch/i386/kernel/acpi/Makefile
arch/i386/kernel/acpi/Makefile
+4
-0
arch/i386/kernel/acpi/cstate.c
arch/i386/kernel/acpi/cstate.c
+103
-0
arch/i386/kernel/acpi/wakeup.S
arch/i386/kernel/acpi/wakeup.S
+3
-2
arch/i386/kernel/cpu/cpufreq/speedstep-centrino.c
arch/i386/kernel/cpu/cpufreq/speedstep-centrino.c
+1
-1
arch/i386/pci/irq.c
arch/i386/pci/irq.c
+10
-6
arch/i386/pci/visws.c
arch/i386/pci/visws.c
+1
-1
arch/ia64/kernel/acpi.c
arch/ia64/kernel/acpi.c
+54
-0
arch/ia64/kernel/mca.c
arch/ia64/kernel/mca.c
+1
-1
arch/ia64/kernel/process.c
arch/ia64/kernel/process.c
+1
-0
arch/ia64/kernel/setup.c
arch/ia64/kernel/setup.c
+3
-0
arch/ia64/kernel/topology.c
arch/ia64/kernel/topology.c
+7
-0
drivers/acpi/Kconfig
drivers/acpi/Kconfig
+25
-13
drivers/acpi/Makefile
drivers/acpi/Makefile
+3
-2
drivers/acpi/asus_acpi.c
drivers/acpi/asus_acpi.c
+4
-0
drivers/acpi/bus.c
drivers/acpi/bus.c
+7
-1
drivers/acpi/button.c
drivers/acpi/button.c
+1
-244
drivers/acpi/dispatcher/dsfield.c
drivers/acpi/dispatcher/dsfield.c
+37
-21
drivers/acpi/dispatcher/dsinit.c
drivers/acpi/dispatcher/dsinit.c
+21
-7
drivers/acpi/dispatcher/dsmethod.c
drivers/acpi/dispatcher/dsmethod.c
+5
-6
drivers/acpi/dispatcher/dsmthdat.c
drivers/acpi/dispatcher/dsmthdat.c
+115
-80
drivers/acpi/dispatcher/dsobject.c
drivers/acpi/dispatcher/dsobject.c
+50
-29
drivers/acpi/dispatcher/dsopcode.c
drivers/acpi/dispatcher/dsopcode.c
+70
-35
drivers/acpi/dispatcher/dsutils.c
drivers/acpi/dispatcher/dsutils.c
+24
-17
drivers/acpi/dispatcher/dswexec.c
drivers/acpi/dispatcher/dswexec.c
+31
-26
drivers/acpi/dispatcher/dswload.c
drivers/acpi/dispatcher/dswload.c
+72
-46
drivers/acpi/dispatcher/dswscope.c
drivers/acpi/dispatcher/dswscope.c
+15
-16
drivers/acpi/dispatcher/dswstate.c
drivers/acpi/dispatcher/dswstate.c
+244
-214
drivers/acpi/ec.c
drivers/acpi/ec.c
+288
-132
drivers/acpi/events/evevent.c
drivers/acpi/events/evevent.c
+23
-10
drivers/acpi/events/evgpe.c
drivers/acpi/events/evgpe.c
+26
-13
drivers/acpi/events/evgpeblk.c
drivers/acpi/events/evgpeblk.c
+51
-12
drivers/acpi/events/evmisc.c
drivers/acpi/events/evmisc.c
+63
-34
drivers/acpi/events/evregion.c
drivers/acpi/events/evregion.c
+27
-8
drivers/acpi/events/evrgnini.c
drivers/acpi/events/evrgnini.c
+7
-7
drivers/acpi/events/evsci.c
drivers/acpi/events/evsci.c
+10
-2
drivers/acpi/events/evxface.c
drivers/acpi/events/evxface.c
+12
-7
drivers/acpi/events/evxfevnt.c
drivers/acpi/events/evxfevnt.c
+15
-10
drivers/acpi/executer/exconfig.c
drivers/acpi/executer/exconfig.c
+20
-11
drivers/acpi/executer/exconvrt.c
drivers/acpi/executer/exconvrt.c
+26
-18
drivers/acpi/executer/excreate.c
drivers/acpi/executer/excreate.c
+24
-26
drivers/acpi/executer/exdump.c
drivers/acpi/executer/exdump.c
+73
-32
drivers/acpi/executer/exfield.c
drivers/acpi/executer/exfield.c
+16
-9
drivers/acpi/executer/exfldio.c
drivers/acpi/executer/exfldio.c
+87
-46
drivers/acpi/executer/exmisc.c
drivers/acpi/executer/exmisc.c
+4
-3
drivers/acpi/executer/exmutex.c
drivers/acpi/executer/exmutex.c
+29
-16
drivers/acpi/executer/exnames.c
drivers/acpi/executer/exnames.c
+45
-25
drivers/acpi/executer/exoparg1.c
drivers/acpi/executer/exoparg1.c
+56
-38
drivers/acpi/executer/exoparg2.c
drivers/acpi/executer/exoparg2.c
+36
-33
drivers/acpi/executer/exoparg3.c
drivers/acpi/executer/exoparg3.c
+14
-11
drivers/acpi/executer/exoparg6.c
drivers/acpi/executer/exoparg6.c
+18
-8
drivers/acpi/executer/exprep.c
drivers/acpi/executer/exprep.c
+69
-35
drivers/acpi/executer/exregion.c
drivers/acpi/executer/exregion.c
+21
-13
drivers/acpi/executer/exresnte.c
drivers/acpi/executer/exresnte.c
+13
-11
drivers/acpi/executer/exresolv.c
drivers/acpi/executer/exresolv.c
+41
-22
drivers/acpi/executer/exresop.c
drivers/acpi/executer/exresop.c
+50
-30
drivers/acpi/executer/exstore.c
drivers/acpi/executer/exstore.c
+187
-73
drivers/acpi/executer/exstoren.c
drivers/acpi/executer/exstoren.c
+8
-12
drivers/acpi/executer/exstorob.c
drivers/acpi/executer/exstorob.c
+6
-3
drivers/acpi/executer/exsystem.c
drivers/acpi/executer/exsystem.c
+24
-24
drivers/acpi/executer/exutils.c
drivers/acpi/executer/exutils.c
+29
-8
drivers/acpi/glue.c
drivers/acpi/glue.c
+360
-0
drivers/acpi/hardware/hwacpi.c
drivers/acpi/hardware/hwacpi.c
+12
-7
drivers/acpi/hardware/hwgpe.c
drivers/acpi/hardware/hwgpe.c
+20
-11
drivers/acpi/hardware/hwregs.c
drivers/acpi/hardware/hwregs.c
+68
-46
drivers/acpi/hardware/hwsleep.c
drivers/acpi/hardware/hwsleep.c
+54
-47
drivers/acpi/hardware/hwtimer.c
drivers/acpi/hardware/hwtimer.c
+2
-2
drivers/acpi/hotkey.c
drivers/acpi/hotkey.c
+1019
-0
drivers/acpi/ibm_acpi.c
drivers/acpi/ibm_acpi.c
+6
-2
drivers/acpi/namespace/nsaccess.c
drivers/acpi/namespace/nsaccess.c
+3
-2
drivers/acpi/namespace/nsalloc.c
drivers/acpi/namespace/nsalloc.c
+64
-57
drivers/acpi/namespace/nsdump.c
drivers/acpi/namespace/nsdump.c
+67
-42
drivers/acpi/namespace/nsdumpdv.c
drivers/acpi/namespace/nsdumpdv.c
+14
-4
drivers/acpi/namespace/nseval.c
drivers/acpi/namespace/nseval.c
+50
-20
drivers/acpi/namespace/nsinit.c
drivers/acpi/namespace/nsinit.c
+23
-5
drivers/acpi/namespace/nsload.c
drivers/acpi/namespace/nsload.c
+20
-8
drivers/acpi/namespace/nsnames.c
drivers/acpi/namespace/nsnames.c
+10
-2
drivers/acpi/namespace/nsobject.c
drivers/acpi/namespace/nsobject.c
+9
-5
drivers/acpi/namespace/nssearch.c
drivers/acpi/namespace/nssearch.c
+19
-10
drivers/acpi/namespace/nsutils.c
drivers/acpi/namespace/nsutils.c
+94
-73
drivers/acpi/namespace/nswalk.c
drivers/acpi/namespace/nswalk.c
+1
-1
drivers/acpi/namespace/nsxfeval.c
drivers/acpi/namespace/nsxfeval.c
+10
-6
drivers/acpi/namespace/nsxfname.c
drivers/acpi/namespace/nsxfname.c
+4
-4
drivers/acpi/namespace/nsxfobj.c
drivers/acpi/namespace/nsxfobj.c
+2
-2
drivers/acpi/osl.c
drivers/acpi/osl.c
+12
-0
drivers/acpi/parser/psargs.c
drivers/acpi/parser/psargs.c
+32
-23
drivers/acpi/parser/psopcode.c
drivers/acpi/parser/psopcode.c
+8
-290
drivers/acpi/parser/psparse.c
drivers/acpi/parser/psparse.c
+91
-53
drivers/acpi/parser/psscope.c
drivers/acpi/parser/psscope.c
+24
-21
drivers/acpi/parser/pstree.c
drivers/acpi/parser/pstree.c
+83
-76
drivers/acpi/parser/psutils.c
drivers/acpi/parser/psutils.c
+6
-9
drivers/acpi/parser/pswalk.c
drivers/acpi/parser/pswalk.c
+5
-6
drivers/acpi/parser/psxface.c
drivers/acpi/parser/psxface.c
+12
-9
drivers/acpi/pci_link.c
drivers/acpi/pci_link.c
+19
-24
drivers/acpi/processor_core.c
drivers/acpi/processor_core.c
+37
-0
drivers/acpi/processor_idle.c
drivers/acpi/processor_idle.c
+97
-41
drivers/acpi/processor_perflib.c
drivers/acpi/processor_perflib.c
+1
-32
drivers/acpi/resources/rsaddr.c
drivers/acpi/resources/rsaddr.c
+206
-274
drivers/acpi/resources/rscalc.c
drivers/acpi/resources/rscalc.c
+67
-77
drivers/acpi/resources/rscreate.c
drivers/acpi/resources/rscreate.c
+21
-24
drivers/acpi/resources/rsdump.c
drivers/acpi/resources/rsdump.c
+210
-192
drivers/acpi/resources/rsio.c
drivers/acpi/resources/rsio.c
+82
-115
drivers/acpi/resources/rsirq.c
drivers/acpi/resources/rsirq.c
+72
-95
drivers/acpi/resources/rslist.c
drivers/acpi/resources/rslist.c
+28
-40
drivers/acpi/resources/rsmemory.c
drivers/acpi/resources/rsmemory.c
+98
-138
drivers/acpi/resources/rsmisc.c
drivers/acpi/resources/rsmisc.c
+66
-94
drivers/acpi/resources/rsutils.c
drivers/acpi/resources/rsutils.c
+25
-28
drivers/acpi/resources/rsxface.c
drivers/acpi/resources/rsxface.c
+22
-21
drivers/acpi/scan.c
drivers/acpi/scan.c
+7
-5
drivers/acpi/sleep/main.c
drivers/acpi/sleep/main.c
+32
-42
drivers/acpi/sleep/poweroff.c
drivers/acpi/sleep/poweroff.c
+73
-8
drivers/acpi/sleep/proc.c
drivers/acpi/sleep/proc.c
+9
-0
drivers/acpi/tables/tbconvrt.c
drivers/acpi/tables/tbconvrt.c
+73
-32
drivers/acpi/tables/tbget.c
drivers/acpi/tables/tbget.c
+39
-24
drivers/acpi/tables/tbgetall.c
drivers/acpi/tables/tbgetall.c
+29
-16
drivers/acpi/tables/tbinstal.c
drivers/acpi/tables/tbinstal.c
+21
-10
drivers/acpi/tables/tbrsdt.c
drivers/acpi/tables/tbrsdt.c
+12
-7
drivers/acpi/tables/tbutils.c
drivers/acpi/tables/tbutils.c
+56
-41
drivers/acpi/tables/tbxface.c
drivers/acpi/tables/tbxface.c
+16
-23
drivers/acpi/tables/tbxfroot.c
drivers/acpi/tables/tbxfroot.c
+78
-45
drivers/acpi/toshiba_acpi.c
drivers/acpi/toshiba_acpi.c
+8
-0
drivers/acpi/utilities/utalloc.c
drivers/acpi/utilities/utalloc.c
+59
-25
drivers/acpi/utilities/utcopy.c
drivers/acpi/utilities/utcopy.c
+91
-35
drivers/acpi/utilities/utdebug.c
drivers/acpi/utilities/utdebug.c
+51
-55
drivers/acpi/utilities/utdelete.c
drivers/acpi/utilities/utdelete.c
+43
-20
drivers/acpi/utilities/uteval.c
drivers/acpi/utilities/uteval.c
+24
-12
drivers/acpi/utilities/utglobal.c
drivers/acpi/utilities/utglobal.c
+71
-62
drivers/acpi/utilities/utinit.c
drivers/acpi/utilities/utinit.c
+24
-12
drivers/acpi/utilities/utmath.c
drivers/acpi/utilities/utmath.c
+2
-0
drivers/acpi/utilities/utmisc.c
drivers/acpi/utilities/utmisc.c
+101
-86
drivers/acpi/utilities/utobject.c
drivers/acpi/utilities/utobject.c
+47
-21
drivers/acpi/utilities/utxface.c
drivers/acpi/utilities/utxface.c
+35
-26
drivers/acpi/video.c
drivers/acpi/video.c
+7
-8
drivers/base/sys.c
drivers/base/sys.c
+0
-1
drivers/net/b44.c
drivers/net/b44.c
+3
-0
drivers/net/ne2k-pci.c
drivers/net/ne2k-pci.c
+3
-0
drivers/pci/pci-acpi.c
drivers/pci/pci-acpi.c
+107
-3
drivers/pci/pci.c
drivers/pci/pci.c
+19
-3
drivers/pci/pci.h
drivers/pci/pci.h
+4
-0
drivers/pcmcia/yenta_socket.c
drivers/pcmcia/yenta_socket.c
+3
-0
drivers/pnp/pnpacpi/rsparser.c
drivers/pnp/pnpacpi/rsparser.c
+12
-3
drivers/pnp/pnpbios/rsparser.c
drivers/pnp/pnpbios/rsparser.c
+1
-1
drivers/pnp/resource.c
drivers/pnp/resource.c
+1
-1
drivers/usb/core/hcd-pci.c
drivers/usb/core/hcd-pci.c
+1
-0
include/acpi/acconfig.h
include/acpi/acconfig.h
+3
-4
include/acpi/acdebug.h
include/acpi/acdebug.h
+8
-138
include/acpi/acdisasm.h
include/acpi/acdisasm.h
+29
-85
include/acpi/acdispat.h
include/acpi/acdispat.h
+49
-122
include/acpi/acevents.h
include/acpi/acevents.h
+29
-56
include/acpi/acexcep.h
include/acpi/acexcep.h
+3
-2
include/acpi/acglobal.h
include/acpi/acglobal.h
+6
-6
include/acpi/achware.h
include/acpi/achware.h
+26
-26
include/acpi/acinterp.h
include/acpi/acinterp.h
+70
-173
include/acpi/aclocal.h
include/acpi/aclocal.h
+2
-8
include/acpi/acmacros.h
include/acpi/acmacros.h
+0
-10
include/acpi/acnames.h
include/acpi/acnames.h
+84
-0
include/acpi/acnamesp.h
include/acpi/acnamesp.h
+36
-127
include/acpi/acobject.h
include/acpi/acobject.h
+1
-1
include/acpi/acopcode.h
include/acpi/acopcode.h
+325
-0
include/acpi/acparser.h
include/acpi/acparser.h
+52
-82
include/acpi/acpi.h
include/acpi/acpi.h
+1
-0
include/acpi/acpi_bus.h
include/acpi/acpi_bus.h
+21
-0
include/acpi/acpi_drivers.h
include/acpi/acpi_drivers.h
+5
-0
include/acpi/acpiosxf.h
include/acpi/acpiosxf.h
+1
-17
include/acpi/acpixf.h
include/acpi/acpixf.h
+2
-11
include/acpi/acresrc.h
include/acpi/acresrc.h
+9
-58
include/acpi/acstruct.h
include/acpi/acstruct.h
+0
-1
include/acpi/actables.h
include/acpi/actables.h
+12
-58
include/acpi/actbl.h
include/acpi/actbl.h
+0
-2
include/acpi/actypes.h
include/acpi/actypes.h
+0
-2
include/acpi/acutils.h
include/acpi/acutils.h
+71
-203
include/acpi/amlcode.h
include/acpi/amlcode.h
+7
-5
include/acpi/pdc_intel.h
include/acpi/pdc_intel.h
+29
-0
include/acpi/platform/acenv.h
include/acpi/platform/acenv.h
+4
-16
include/acpi/processor.h
include/acpi/processor.h
+32
-2
include/asm-alpha/pci.h
include/asm-alpha/pci.h
+1
-1
include/asm-arm/pci.h
include/asm-arm/pci.h
+1
-1
include/asm-h8300/pci.h
include/asm-h8300/pci.h
+1
-1
include/asm-i386/acpi.h
include/asm-i386/acpi.h
+4
-6
include/asm-i386/apicdef.h
include/asm-i386/apicdef.h
+1
-5
include/asm-i386/pci.h
include/asm-i386/pci.h
+1
-1
include/asm-ia64/acpi.h
include/asm-ia64/acpi.h
+9
-0
include/asm-ia64/pci.h
include/asm-ia64/pci.h
+1
-1
include/asm-m68k/pci.h
include/asm-m68k/pci.h
+1
-1
include/asm-mips/pci.h
include/asm-mips/pci.h
+1
-1
include/asm-ppc/pci.h
include/asm-ppc/pci.h
+1
-1
include/asm-ppc64/pci.h
include/asm-ppc64/pci.h
+1
-1
include/asm-sh/pci.h
include/asm-sh/pci.h
+1
-1
include/asm-sh64/pci.h
include/asm-sh64/pci.h
+1
-1
include/asm-sparc/pci.h
include/asm-sparc/pci.h
+1
-1
include/asm-sparc64/pci.h
include/asm-sparc64/pci.h
+1
-1
include/asm-x86_64/acpi.h
include/asm-x86_64/acpi.h
+2
-6
include/asm-x86_64/pci.h
include/asm-x86_64/pci.h
+1
-1
include/linux/acpi.h
include/linux/acpi.h
+5
-2
include/linux/device.h
include/linux/device.h
+4
-2
include/linux/pm.h
include/linux/pm.h
+1
-1
kernel/power/main.c
kernel/power/main.c
+15
-1
No files found.
Documentation/acpi-hotkey.txt
0 → 100644
View file @
3f603ed3
driver/acpi/hotkey.c implement:
1. /proc/acpi/hotkey/event_config
(event based hotkey or event config interface):
a. add a event based hotkey(event) :
echo "0:bus::action:method:num:num" > event_config
b. delete a event based hotkey(event):
echo "1:::::num:num" > event_config
c. modify a event based hotkey(event):
echo "2:bus::action:method:num:num" > event_config
2. /proc/acpi/hotkey/poll_config
(polling based hotkey or event config interface):
a.add a polling based hotkey(event) :
echo "0:bus:method:action:method:num" > poll_config
this adding command will create a proc file
/proc/acpi/hotkey/method, which is used to get
result of polling.
b.delete a polling based hotkey(event):
echo "1:::::num" > event_config
c.modify a polling based hotkey(event):
echo "2:bus:method:action:method:num" > poll_config
3./proc/acpi/hotkey/action
(interface to call aml method associated with a
specific hotkey(event))
echo "event_num:event_type:event_argument" >
/proc/acpi/hotkey/action.
The result of the execution of this aml method is
attached to /proc/acpi/hotkey/poll_method, which is dnyamically
created. Please use command "cat /proc/acpi/hotkey/polling_method"
to retrieve it.
arch/frv/mb93090-mb00/pci-irq.c
View file @
3f603ed3
...
...
@@ -60,7 +60,7 @@ void __init pcibios_fixup_irqs(void)
}
}
void
__init
pcibios_penalize_isa_irq
(
int
irq
)
void
__init
pcibios_penalize_isa_irq
(
int
irq
,
int
active
)
{
}
...
...
arch/i386/kernel/acpi/Makefile
View file @
3f603ed3
...
...
@@ -2,3 +2,7 @@ obj-$(CONFIG_ACPI_BOOT) := boot.o
obj-$(CONFIG_X86_IO_APIC)
+=
earlyquirk.o
obj-$(CONFIG_ACPI_SLEEP)
+=
sleep.o wakeup.o
ifneq
($(CONFIG_ACPI_PROCESSOR),)
obj-y
+=
cstate.o
endif
arch/i386/kernel/acpi/cstate.c
0 → 100644
View file @
3f603ed3
/*
* arch/i386/kernel/acpi/cstate.c
*
* Copyright (C) 2005 Intel Corporation
* Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
* - Added _PDC for SMP C-states on Intel CPUs
*/
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/init.h>
#include <linux/acpi.h>
#include <acpi/processor.h>
#include <asm/acpi.h>
static
void
acpi_processor_power_init_intel_pdc
(
struct
acpi_processor_power
*
pow
)
{
struct
acpi_object_list
*
obj_list
;
union
acpi_object
*
obj
;
u32
*
buf
;
/* allocate and initialize pdc. It will be used later. */
obj_list
=
kmalloc
(
sizeof
(
struct
acpi_object_list
),
GFP_KERNEL
);
if
(
!
obj_list
)
{
printk
(
KERN_ERR
"Memory allocation error
\n
"
);
return
;
}
obj
=
kmalloc
(
sizeof
(
union
acpi_object
),
GFP_KERNEL
);
if
(
!
obj
)
{
printk
(
KERN_ERR
"Memory allocation error
\n
"
);
kfree
(
obj_list
);
return
;
}
buf
=
kmalloc
(
12
,
GFP_KERNEL
);
if
(
!
buf
)
{
printk
(
KERN_ERR
"Memory allocation error
\n
"
);
kfree
(
obj
);
kfree
(
obj_list
);
return
;
}
buf
[
0
]
=
ACPI_PDC_REVISION_ID
;
buf
[
1
]
=
1
;
buf
[
2
]
=
ACPI_PDC_C_CAPABILITY_SMP
;
obj
->
type
=
ACPI_TYPE_BUFFER
;
obj
->
buffer
.
length
=
12
;
obj
->
buffer
.
pointer
=
(
u8
*
)
buf
;
obj_list
->
count
=
1
;
obj_list
->
pointer
=
obj
;
pow
->
pdc
=
obj_list
;
return
;
}
/* Initialize _PDC data based on the CPU vendor */
void
acpi_processor_power_init_pdc
(
struct
acpi_processor_power
*
pow
,
unsigned
int
cpu
)
{
struct
cpuinfo_x86
*
c
=
cpu_data
+
cpu
;
pow
->
pdc
=
NULL
;
if
(
c
->
x86_vendor
==
X86_VENDOR_INTEL
)
acpi_processor_power_init_intel_pdc
(
pow
);
return
;
}
EXPORT_SYMBOL
(
acpi_processor_power_init_pdc
);
/*
* Initialize bm_flags based on the CPU cache properties
* On SMP it depends on cache configuration
* - When cache is not shared among all CPUs, we flush cache
* before entering C3.
* - When cache is shared among all CPUs, we use bm_check
* mechanism as in UP case
*
* This routine is called only after all the CPUs are online
*/
void
acpi_processor_power_init_bm_check
(
struct
acpi_processor_flags
*
flags
,
unsigned
int
cpu
)
{
struct
cpuinfo_x86
*
c
=
cpu_data
+
cpu
;
flags
->
bm_check
=
0
;
if
(
num_online_cpus
()
==
1
)
flags
->
bm_check
=
1
;
else
if
(
c
->
x86_vendor
==
X86_VENDOR_INTEL
)
{
/*
* Today all CPUs that support C3 share cache.
* TBD: This needs to look at cache shared map, once
* multi-core detection patch makes to the base.
*/
flags
->
bm_check
=
1
;
}
}
EXPORT_SYMBOL
(
acpi_processor_power_init_bm_check
);
arch/i386/kernel/acpi/wakeup.S
View file @
3f603ed3
...
...
@@ -74,8 +74,9 @@ wakeup_code:
movw
%
ax
,%
fs
movw
$
0x0e00
+
'i'
,
%
fs
:
(
0x12
)
#
need
a
gdt
lgdt
real_save_gdt
-
wakeup_code
#
need
a
gdt
--
use
lgdtl
to
force
32
-
bit
operands
,
in
case
#
the
GDT
is
located
past
16
megabytes
.
lgdtl
real_save_gdt
-
wakeup_code
movl
real_save_cr0
-
wakeup_code
,
%
eax
movl
%
eax
,
%
cr0
...
...
arch/i386/kernel/cpu/cpufreq/speedstep-centrino.c
View file @
3f603ed3
...
...
@@ -375,7 +375,7 @@ static int centrino_cpu_init_acpi(struct cpufreq_policy *policy)
arg0
.
buffer
.
pointer
=
(
u8
*
)
arg0_buf
;
arg0_buf
[
0
]
=
ACPI_PDC_REVISION_ID
;
arg0_buf
[
1
]
=
1
;
arg0_buf
[
2
]
=
ACPI_PDC_EST_CAPABILITY_SMP
|
ACPI_PDC_EST_CAPABILITY
_MSR
;
arg0_buf
[
2
]
=
ACPI_PDC_EST_CAPABILITY_SMP_MSR
;
p
.
pdc
=
&
arg_list
;
...
...
arch/i386/pci/irq.c
View file @
3f603ed3
...
...
@@ -1051,24 +1051,28 @@ static int __init pcibios_irq_init(void)
subsys_initcall
(
pcibios_irq_init
);
static
void
pirq_penalize_isa_irq
(
int
irq
)
static
void
pirq_penalize_isa_irq
(
int
irq
,
int
active
)
{
/*
* If any ISAPnP device reports an IRQ in its list of possible
* IRQ's, we try to avoid assigning it to PCI devices.
*/
if
(
irq
<
16
)
pirq_penalty
[
irq
]
+=
100
;
if
(
irq
<
16
)
{
if
(
active
)
pirq_penalty
[
irq
]
+=
1000
;
else
pirq_penalty
[
irq
]
+=
100
;
}
}
void
pcibios_penalize_isa_irq
(
int
irq
)
void
pcibios_penalize_isa_irq
(
int
irq
,
int
active
)
{
#ifdef CONFIG_ACPI_PCI
if
(
!
acpi_noirq
)
acpi_penalize_isa_irq
(
irq
);
acpi_penalize_isa_irq
(
irq
,
active
);
else
#endif
pirq_penalize_isa_irq
(
irq
);
pirq_penalize_isa_irq
(
irq
,
active
);
}
static
int
pirq_enable_irq
(
struct
pci_dev
*
dev
)
...
...
arch/i386/pci/visws.c
View file @
3f603ed3
...
...
@@ -21,7 +21,7 @@ static int pci_visws_enable_irq(struct pci_dev *dev) { return 0; }
int
(
*
pcibios_enable_irq
)(
struct
pci_dev
*
dev
)
=
&
pci_visws_enable_irq
;
void
__init
pcibios_penalize_isa_irq
(
int
irq
)
{}
void
__init
pcibios_penalize_isa_irq
(
int
irq
,
int
active
)
{}
unsigned
int
pci_bus0
,
pci_bus1
;
...
...
arch/ia64/kernel/acpi.c
View file @
3f603ed3
...
...
@@ -11,6 +11,7 @@
* Copyright (C) 2001 Jenna Hall <jenna.s.hall@intel.com>
* Copyright (C) 2001 Takayoshi Kochi <t-kochi@bq.jp.nec.com>
* Copyright (C) 2002 Erich Focht <efocht@ess.nec.de>
* Copyright (C) 2004 Ashok Raj <ashok.raj@intel.com>
*
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
*
...
...
@@ -67,6 +68,11 @@ EXPORT_SYMBOL(pm_power_off);
unsigned
char
acpi_kbd_controller_present
=
1
;
unsigned
char
acpi_legacy_devices
;
static
unsigned
int
__initdata
acpi_madt_rev
;
unsigned
int
acpi_cpei_override
;
unsigned
int
acpi_cpei_phys_cpuid
;
#define MAX_SAPICS 256
u16
ia64_acpiid_to_sapicid
[
MAX_SAPICS
]
=
{
[
0
...
MAX_SAPICS
-
1
]
=
-
1
};
...
...
@@ -265,10 +271,56 @@ acpi_parse_plat_int_src (
(
plintsrc
->
flags
.
trigger
==
1
)
?
IOSAPIC_EDGE
:
IOSAPIC_LEVEL
);
platform_intr_list
[
plintsrc
->
type
]
=
vector
;
if
(
acpi_madt_rev
>
1
)
{
acpi_cpei_override
=
plintsrc
->
plint_flags
.
cpei_override_flag
;
}
/*
* Save the physical id, so we can check when its being removed
*/
acpi_cpei_phys_cpuid
=
((
plintsrc
->
id
<<
8
)
|
(
plintsrc
->
eid
))
&
0xffff
;
return
0
;
}
unsigned
int
can_cpei_retarget
(
void
)
{
extern
int
cpe_vector
;
/*
* Only if CPEI is supported and the override flag
* is present, otherwise return that its re-targettable
* if we are in polling mode.
*/
if
(
cpe_vector
>
0
&&
!
acpi_cpei_override
)
return
0
;
else
return
1
;
}
unsigned
int
is_cpu_cpei_target
(
unsigned
int
cpu
)
{
unsigned
int
logical_id
;
logical_id
=
cpu_logical_id
(
acpi_cpei_phys_cpuid
);
if
(
logical_id
==
cpu
)
return
1
;
else
return
0
;
}
void
set_cpei_target_cpu
(
unsigned
int
cpu
)
{
acpi_cpei_phys_cpuid
=
cpu_physical_id
(
cpu
);
}
unsigned
int
get_cpei_target_cpu
(
void
)
{
return
acpi_cpei_phys_cpuid
;
}
static
int
__init
acpi_parse_int_src_ovr
(
acpi_table_entry_header
*
header
,
const
unsigned
long
end
)
...
...
@@ -326,6 +378,8 @@ acpi_parse_madt (unsigned long phys_addr, unsigned long size)
acpi_madt
=
(
struct
acpi_table_madt
*
)
__va
(
phys_addr
);
acpi_madt_rev
=
acpi_madt
->
header
.
revision
;
/* remember the value for reference after free_initmem() */
#ifdef CONFIG_ITANIUM
has_8259
=
1
;
/* Firmware on old Itanium systems is broken */
...
...
arch/ia64/kernel/mca.c
View file @
3f603ed3
...
...
@@ -271,7 +271,7 @@ ia64_mca_log_sal_error_record(int sal_info_type)
#ifdef CONFIG_ACPI
static
int
cpe_vector
=
-
1
;
int
cpe_vector
=
-
1
;
static
irqreturn_t
ia64_mca_cpe_int_handler
(
int
cpe_irq
,
void
*
arg
,
struct
pt_regs
*
ptregs
)
...
...
arch/ia64/kernel/process.c
View file @
3f603ed3
...
...
@@ -196,6 +196,7 @@ update_pal_halt_status(int status)
void
default_idle
(
void
)
{
local_irq_enable
();
while
(
!
need_resched
())
if
(
can_do_pal_halt
)
safe_halt
();
...
...
arch/ia64/kernel/setup.c
View file @
3f603ed3
...
...
@@ -40,6 +40,8 @@
#include <linux/serial_core.h>
#include <linux/efi.h>
#include <linux/initrd.h>
#include <linux/platform.h>
#include <linux/pm.h>
#include <asm/ia32.h>
#include <asm/machvec.h>
...
...
@@ -783,6 +785,7 @@ cpu_init (void)
/* size of physical stacked register partition plus 8 bytes: */
__get_cpu_var
(
ia64_phys_stacked_size_p8
)
=
num_phys_stacked
*
8
+
8
;
platform_cpu_init
();
pm_idle
=
default_idle
;
}
void
...
...
arch/ia64/kernel/topology.c
View file @
3f603ed3
...
...
@@ -36,6 +36,13 @@ int arch_register_cpu(int num)
parent
=
&
sysfs_nodes
[
cpu_to_node
(
num
)];
#endif
/* CONFIG_NUMA */
/*
* If CPEI cannot be re-targetted, and this is
* CPEI target, then dont create the control file
*/
if
(
!
can_cpei_retarget
()
&&
is_cpu_cpei_target
(
num
))
sysfs_cpus
[
num
].
cpu
.
no_control
=
1
;
return
register_cpu
(
&
sysfs_cpus
[
num
].
cpu
,
num
,
parent
);
}
...
...
drivers/acpi/Kconfig
View file @
3f603ed3
...
...
@@ -3,6 +3,7 @@
#
menu "ACPI (Advanced Configuration and Power Interface) Support"
depends on PM
depends on !X86_VISWS
depends on !IA64_HP_SIM
depends on IA64 || X86
...
...
@@ -48,7 +49,6 @@ config ACPI_BOOT
config ACPI_INTERPRETER
bool
depends on !IA64_SGI_SN
default y
if ACPI_INTERPRETER
...
...
@@ -79,6 +79,14 @@ config ACPI_SLEEP_PROC_FS
depends on ACPI_SLEEP && PROC_FS
default y
config ACPI_SLEEP_PROC_SLEEP
bool "/proc/acpi/sleep (deprecated)"
depends on ACPI_SLEEP_PROC_FS
default n
---help---
Create /proc/acpi/sleep
Deprecated by /sys/power/state
config ACPI_AC
tristate "AC Adapter"
depends on X86
...
...
@@ -99,7 +107,6 @@ config ACPI_BATTERY
config ACPI_BUTTON
tristate "Button"
depends on !IA64_SGI_SN
default m
help
This driver registers for events based on buttons, such as the
...
...
@@ -111,7 +118,6 @@ config ACPI_BUTTON
config ACPI_VIDEO
tristate "Video"
depends on EXPERIMENTAL
depends on !IA64_SGI_SN
default m
help
This driver implement the ACPI Extensions For Display Adapters
...
...
@@ -122,9 +128,17 @@ config ACPI_VIDEO
Note that this is an ref. implementation only. It may or may not work
for your integrated video device.
config ACPI_HOTKEY
tristate "Generic Hotkey"
depends on ACPI_INTERPRETER
depends on EXPERIMENTAL
depends on !IA64_SGI_SN
default m
help
ACPI generic hotkey
config ACPI_FAN
tristate "Fan"
depends on !IA64_SGI_SN
default m
help
This driver adds support for ACPI fan devices, allowing user-mode
...
...
@@ -132,7 +146,6 @@ config ACPI_FAN
config ACPI_PROCESSOR
tristate "Processor"
depends on !IA64_SGI_SN
default m
help
This driver installs ACPI as the idle handler for Linux, and uses
...
...
@@ -142,7 +155,6 @@ config ACPI_PROCESSOR
config ACPI_HOTPLUG_CPU
bool "Processor Hotplug (EXPERIMENTAL)"
depends on ACPI_PROCESSOR && HOTPLUG_CPU && EXPERIMENTAL
depends on !IA64_SGI_SN
select ACPI_CONTAINER
default n
---help---
...
...
@@ -262,7 +274,6 @@ config ACPI_BLACKLIST_YEAR
config ACPI_DEBUG
bool "Debug Statements"
depends on !IA64_SGI_SN
default n
help
The ACPI driver can optionally report errors with a great deal
...
...
@@ -271,7 +282,6 @@ config ACPI_DEBUG
config ACPI_BUS
bool
depends on !IA64_SGI_SN
default y
config ACPI_EC
...
...
@@ -285,17 +295,14 @@ config ACPI_EC
config ACPI_POWER
bool
depends on !IA64_SGI_SN
default y
config ACPI_PCI
bool
depends on !IA64_SGI_SN
default PCI
config ACPI_SYSTEM
bool
depends on !IA64_SGI_SN
default y
help
This driver will enable your system to shut down using ACPI, and
...
...
@@ -327,8 +334,13 @@ config ACPI_CONTAINER
depends on EXPERIMENTAL
default (ACPI_HOTPLUG_MEMORY || ACPI_HOTPLUG_CPU || ACPI_HOTPLUG_IO)
---help---
This is the ACPI generic container driver which supports
ACPI0004, PNP0A05 and PNP0A06 devices
This allows _physical_ insertion and removal of CPUs and memory.
This can be useful, for example, on NUMA machines that support
ACPI based physical hotplug of nodes, or non-NUMA machines that
support physical cpu/memory hot-plug.
If one selects "m", this driver can be loaded with
"modprobe acpi_container".
config ACPI_HOTPLUG_MEMORY
tristate "Memory Hotplug"
...
...
drivers/acpi/Makefile
View file @
3f603ed3
...
...
@@ -36,13 +36,14 @@ processor-objs += processor_perflib.o
endif
obj-$(CONFIG_ACPI_BUS)
+=
sleep
/
obj-$(CONFIG_ACPI_BUS)
+=
bus.o
obj-$(CONFIG_ACPI_BUS)
+=
bus.o
glue.o
obj-$(CONFIG_ACPI_AC)
+=
ac.o
obj-$(CONFIG_ACPI_BATTERY)
+=
battery.o
obj-$(CONFIG_ACPI_BUTTON)
+=
button.o
obj-$(CONFIG_ACPI_EC)
+=
ec.o
obj-$(CONFIG_ACPI_FAN)
+=
fan.o
obj-$(CONFIG_ACPI_VIDEO)
+=
video.o
obj-$(CONFIG_ACPI_VIDEO)
+=
video.o
obj-$(CONFIG_ACPI_HOTKEY)
+=
hotkey.o
obj-$(CONFIG_ACPI_PCI)
+=
pci_root.o pci_link.o pci_irq.o pci_bind.o
obj-$(CONFIG_ACPI_POWER)
+=
power.o
obj-$(CONFIG_ACPI_PROCESSOR)
+=
processor.o
...
...
drivers/acpi/asus_acpi.c
View file @
3f603ed3
...
...
@@ -1204,6 +1204,10 @@ static int __init asus_acpi_init(void)
if
(
acpi_disabled
)
return
-
ENODEV
;
if
(
!
acpi_specific_hotkey_enabled
){
printk
(
KERN_ERR
"Using generic hotkey driver
\n
"
);
return
-
ENODEV
;
}
asus_proc_dir
=
proc_mkdir
(
PROC_ASUS
,
acpi_root_dir
);
if
(
!
asus_proc_dir
)
{
printk
(
KERN_ERR
"Asus ACPI: Unable to create /proc entry
\n
"
);
...
...
drivers/acpi/bus.c
View file @
3f603ed3
...
...
@@ -212,6 +212,12 @@ acpi_bus_set_power (
ACPI_DEBUG_PRINT
((
ACPI_DB_WARN
,
"Device is not power manageable
\n
"
));
return_VALUE
(
-
ENODEV
);
}
/*
* Get device's current power state if it's unknown
* This means device power state isn't initialized or previous setting failed
*/
if
(
device
->
power
.
state
==
ACPI_STATE_UNKNOWN
)
acpi_bus_get_power
(
device
->
handle
,
&
device
->
power
.
state
);
if
(
state
==
device
->
power
.
state
)
{
ACPI_DEBUG_PRINT
((
ACPI_DB_INFO
,
"Device is already at D%d
\n
"
,
state
));
return_VALUE
(
0
);
...
...
@@ -231,7 +237,7 @@ acpi_bus_set_power (
* On transitions to a high-powered state we first apply power (via
* power resources) then evalute _PSx. Conversly for transitions to
* a lower-powered state.
*/
*/
if
(
state
<
device
->
power
.
state
)
{
if
(
device
->
power
.
flags
.
power_resources
)
{
result
=
acpi_power_transition
(
device
,
state
);
...
...
drivers/acpi/button.c
View file @
3f603ed3
...
...
@@ -26,9 +26,6 @@
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/init.h>
#include <linux/types.h>
#include <linux/proc_fs.h>
#include <linux/seq_file.h>
#include <acpi/acpi_bus.h>
#include <acpi/acpi_drivers.h>
...
...
@@ -36,9 +33,6 @@
#define ACPI_BUTTON_COMPONENT 0x00080000
#define ACPI_BUTTON_DRIVER_NAME "ACPI Button Driver"
#define ACPI_BUTTON_CLASS "button"
#define ACPI_BUTTON_FILE_INFO "info"
#define ACPI_BUTTON_FILE_STATE "state"
#define ACPI_BUTTON_TYPE_UNKNOWN 0x00
#define ACPI_BUTTON_NOTIFY_STATUS 0x80