Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openeuler
Kernel
提交
1e1f3f24
K
Kernel
项目概览
openeuler
/
Kernel
大约 1 年 前同步成功
通知
5
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
K
Kernel
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
1e1f3f24
编写于
7月 25, 2007
作者:
L
Len Brown
浏览文件
操作
浏览文件
下载
差异文件
Pull kconfig into release branch
上级
c30c620e
e8b2fd01
变更
21
隐藏空白更改
内联
并排
Showing
21 changed file
with
89 addition
and
100 deletion
+89
-100
arch/i386/kernel/acpi/Makefile
arch/i386/kernel/acpi/Makefile
+1
-1
arch/i386/kernel/setup.c
arch/i386/kernel/setup.c
+1
-1
arch/i386/mm/init.c
arch/i386/mm/init.c
+1
-1
arch/ia64/kernel/acpi.c
arch/ia64/kernel/acpi.c
+19
-0
arch/x86_64/kernel/acpi/Makefile
arch/x86_64/kernel/acpi/Makefile
+1
-1
arch/x86_64/kernel/acpi/sleep.c
arch/x86_64/kernel/acpi/sleep.c
+0
-4
arch/x86_64/kernel/head.S
arch/x86_64/kernel/head.S
+1
-1
arch/x86_64/kernel/setup.c
arch/x86_64/kernel/setup.c
+1
-1
drivers/acpi/Kconfig
drivers/acpi/Kconfig
+21
-43
drivers/acpi/sleep/Makefile
drivers/acpi/sleep/Makefile
+2
-2
drivers/acpi/sleep/main.c
drivers/acpi/sleep/main.c
+2
-0
drivers/acpi/sleep/poweroff.c
drivers/acpi/sleep/poweroff.c
+0
-2
drivers/acpi/sleep/proc.c
drivers/acpi/sleep/proc.c
+14
-6
drivers/acpi/sleep/wakeup.c
drivers/acpi/sleep/wakeup.c
+0
-2
include/acpi/acpi_drivers.h
include/acpi/acpi_drivers.h
+0
-4
include/asm-i386/acpi.h
include/asm-i386/acpi.h
+9
-14
include/asm-i386/suspend.h
include/asm-i386/suspend.h
+1
-1
include/asm-ia64/acpi.h
include/asm-ia64/acpi.h
+5
-0
include/asm-x86_64/acpi.h
include/asm-x86_64/acpi.h
+9
-13
include/asm-x86_64/suspend.h
include/asm-x86_64/suspend.h
+0
-2
kernel/sysctl.c
kernel/sysctl.c
+1
-1
未找到文件。
arch/i386/kernel/acpi/Makefile
浏览文件 @
1e1f3f24
...
...
@@ -2,7 +2,7 @@ obj-$(CONFIG_ACPI) += boot.o
ifneq
($(CONFIG_PCI),)
obj-$(CONFIG_X86_IO_APIC)
+=
earlyquirk.o
endif
obj-$(CONFIG_ACPI
_SLEEP)
+=
sleep.o wakeup.o
obj-$(CONFIG_ACPI
)
+=
sleep.o wakeup.o
ifneq
($(CONFIG_ACPI_PROCESSOR),)
obj-y
+=
cstate.o processor.o
...
...
arch/i386/kernel/setup.c
浏览文件 @
1e1f3f24
...
...
@@ -422,7 +422,7 @@ void __init setup_bootmem_allocator(void)
*/
reserve_bootmem
(
PAGE_SIZE
,
PAGE_SIZE
);
#endif
#ifdef CONFIG_ACPI
_SLEEP
#ifdef CONFIG_ACPI
/*
* Reserve low memory region for sleep support.
*/
...
...
arch/i386/mm/init.c
浏览文件 @
1e1f3f24
...
...
@@ -432,7 +432,7 @@ static void __init pagetable_init (void)
paravirt_pagetable_setup_done
(
pgd_base
);
}
#if defined(CONFIG_SOFTWARE_SUSPEND) || defined(CONFIG_ACPI
_SLEEP
)
#if defined(CONFIG_SOFTWARE_SUSPEND) || defined(CONFIG_ACPI)
/*
* Swap suspend & friends need this for resume because things like the intel-agp
* driver might have split up a kernel 4MB mapping.
...
...
arch/ia64/kernel/acpi.c
浏览文件 @
1e1f3f24
...
...
@@ -67,6 +67,8 @@ EXPORT_SYMBOL(pm_power_off);
unsigned
int
acpi_cpei_override
;
unsigned
int
acpi_cpei_phys_cpuid
;
unsigned
long
acpi_wakeup_address
=
0
;
const
char
__init
*
acpi_get_sysname
(
void
)
{
...
...
@@ -986,4 +988,21 @@ int acpi_unregister_ioapic(acpi_handle handle, u32 gsi_base)
EXPORT_SYMBOL
(
acpi_unregister_ioapic
);
/*
* acpi_save_state_mem() - save kernel state
*
* TBD when when IA64 starts to support suspend...
*/
int
acpi_save_state_mem
(
void
)
{
return
0
;
}
/*
* acpi_restore_state()
*/
void
acpi_restore_state_mem
(
void
)
{}
/*
* do_suspend_lowlevel()
*/
void
do_suspend_lowlevel
(
void
)
{}
#endif
/* CONFIG_ACPI */
arch/x86_64/kernel/acpi/Makefile
浏览文件 @
1e1f3f24
obj-y
:=
boot.o
boot-y
:=
../../../i386/kernel/acpi/boot.o
obj-
$(CONFIG_ACPI_SLEEP)
+=
sleep.o wakeup.o
obj-
y
+=
sleep.o wakeup.o
ifneq
($(CONFIG_ACPI_PROCESSOR),)
obj-y
+=
processor.o
...
...
arch/x86_64/kernel/acpi/sleep.c
浏览文件 @
1e1f3f24
...
...
@@ -51,8 +51,6 @@
Low-Level Sleep Support
-------------------------------------------------------------------------- */
#ifdef CONFIG_ACPI_SLEEP
/* address in low memory of the wakeup routine. */
unsigned
long
acpi_wakeup_address
=
0
;
unsigned
long
acpi_realmode_flags
;
...
...
@@ -117,8 +115,6 @@ static int __init acpi_sleep_setup(char *str)
__setup
(
"acpi_sleep="
,
acpi_sleep_setup
);
#endif
/*CONFIG_ACPI_SLEEP */
void
acpi_pci_link_exit
(
void
)
{
}
arch/x86_64/kernel/head.S
浏览文件 @
1e1f3f24
...
...
@@ -120,7 +120,7 @@ ident_complete:
addq
%
rbp
,
trampoline_level4_pgt
+
0
(%
rip
)
addq
%
rbp
,
trampoline_level4_pgt
+
(
511
*
8
)(%
rip
)
#endif
#ifdef CONFIG_ACPI
_SLEEP
#ifdef CONFIG_ACPI
addq
%
rbp
,
wakeup_level4_pgt
+
0
(%
rip
)
addq
%
rbp
,
wakeup_level4_pgt
+
(
511
*
8
)(%
rip
)
#endif
...
...
arch/x86_64/kernel/setup.c
浏览文件 @
1e1f3f24
...
...
@@ -333,7 +333,7 @@ void __init setup_arch(char **cmdline_p)
reserve_bootmem_generic
(
SMP_TRAMPOLINE_BASE
,
2
*
PAGE_SIZE
);
#endif
#ifdef CONFIG_ACPI
_SLEEP
#ifdef CONFIG_ACPI
/*
* Reserve low memory region for sleep support.
*/
...
...
drivers/acpi/Kconfig
浏览文件 @
1e1f3f24
...
...
@@ -11,6 +11,9 @@ menuconfig ACPI
depends on PCI
depends on PM
select PNP
# for sleep
select HOTPLUG_CPU if X86 && SMP
select SUSPEND_SMP if X86 && SMP
default y
---help---
Advanced Configuration and Power Interface (ACPI) support for
...
...
@@ -42,51 +45,26 @@ menuconfig ACPI
if ACPI
config ACPI_SLEEP
bool "Sleep States"
depends on X86 && (!SMP || SUSPEND_SMP)
default y
---help---
This option adds support for ACPI suspend states.
With this option, you will be able to put the system "to sleep".
Sleep states are low power states for the system and devices. All
of the system operating state is saved to either memory or disk
(depending on the state), to allow the system to resume operation
quickly at your request.
Although this option sounds really nifty, barely any of the device
drivers have been converted to the new driver model and hence few
have proper power management support.
This option is not recommended for anyone except those doing driver
power management development.
config ACPI_SLEEP_PROC_FS
bool
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_PROCFS
bool "
Procfs interface (deprecated)
"
de
fault y
bool "
Deprecated /proc/acpi files
"
de
pends on PROC_FS
---help---
The Procfs interface for ACPI is made optional for backward compatibility.
As the same functions are duplicated in the sysfs interface
and this proc interface will be removed some time later,
it's marked as deprecated.
( /proc/acpi/debug_layer && debug_level are deprecated by
/sys/module/acpi/parameters/debug_layer && debug_level.
/proc/acpi/info is deprecated by
/sys/module/acpi/parameters/acpica_version )
For backwards compatibility, this option allows
depricated /proc/acpi/ files to exist, even when
they have been replaced by functions in /sys.
The deprecated files (and their replacements) include:
/proc/acpi/sleep (/sys/power/state)
/proc/acpi/info (/sys/modules/acpi/parameters/acpica_version)
/proc/acpi/dsdt (/sys/firmware/acpi/tables/DSDT)
/proc/acpi/fadt (/sys/firmware/acpi/tables/FACP)
/proc/acpi/debug_layer (/sys/module/acpi/parameters/debug_layer)
/proc/acpi/debug_level (/sys/module/acpi/parameters/debug_level)
This option has no effect on /proc/acpi/ files
and functions which do not yet exist in /sys.
Say N to delete /proc/acpi/ files that have moved to /sys/
config ACPI_AC
tristate "AC Adapter"
...
...
drivers/acpi/sleep/Makefile
浏览文件 @
1e1f3f24
obj-y
:=
poweroff.o wakeup.o
obj-
$(CONFIG_ACPI_SLEEP)
+=
main.o
obj-$(CONFIG_
ACPI_SLEEP_PROC_FS)
+=
proc.o
obj-
y
+=
main.o
obj-$(CONFIG_
X86)
+=
proc.o
EXTRA_CFLAGS
+=
$(ACPI_CFLAGS)
drivers/acpi/sleep/main.c
浏览文件 @
1e1f3f24
...
...
@@ -136,10 +136,12 @@ static int acpi_pm_finish(suspend_state_t pm_state)
/* reset firmware waking vector */
acpi_set_firmware_waking_vector
((
acpi_physical_address
)
0
);
#ifdef CONFIG_X86
if
(
init_8259A_after_S1
)
{
printk
(
"Broken toshiba laptop -> kicking interrupts
\n
"
);
init_8259A
(
0
);
}
#endif
return
0
;
}
...
...
drivers/acpi/sleep/poweroff.c
浏览文件 @
1e1f3f24
...
...
@@ -18,7 +18,6 @@
int
acpi_sleep_prepare
(
u32
acpi_state
)
{
#ifdef CONFIG_ACPI_SLEEP
/* do we have a wakeup address for S2 and S3? */
if
(
acpi_state
==
ACPI_STATE_S3
)
{
if
(
!
acpi_wakeup_address
)
{
...
...
@@ -31,7 +30,6 @@ int acpi_sleep_prepare(u32 acpi_state)
}
ACPI_FLUSH_CPU_CACHE
();
acpi_enable_wakeup_device_prep
(
acpi_state
);
#endif
acpi_gpe_sleep_prepare
(
acpi_state
);
acpi_enter_sleep_state_prep
(
acpi_state
);
return
0
;
...
...
drivers/acpi/sleep/proc.c
浏览文件 @
1e1f3f24
...
...
@@ -14,8 +14,16 @@
#include "sleep.h"
#define _COMPONENT ACPI_SYSTEM_COMPONENT
/*
* this file provides support for:
* /proc/acpi/sleep
* /proc/acpi/alarm
* /proc/acpi/wakeup
*/
ACPI_MODULE_NAME
(
"sleep"
)
#ifdef CONFIG_ACPI_
SLEEP_PROC_SLEEP
#ifdef CONFIG_ACPI_
PROCFS
static
int
acpi_system_sleep_seq_show
(
struct
seq_file
*
seq
,
void
*
offset
)
{
int
i
;
...
...
@@ -68,7 +76,7 @@ acpi_system_write_sleep(struct file *file,
Done:
return
error
?
error
:
count
;
}
#endif
/* CONFIG_ACPI_
SLEEP_PROC_SLEEP
*/
#endif
/* CONFIG_ACPI_
PROCFS
*/
#if defined(CONFIG_RTC_DRV_CMOS) || defined(CONFIG_RTC_DRV_CMOS_MODULE)
/* use /sys/class/rtc/rtcX/wakealarm instead; it's not ACPI-specific */
...
...
@@ -463,7 +471,7 @@ static const struct file_operations acpi_system_wakeup_device_fops = {
.
release
=
single_release
,
};
#ifdef CONFIG_ACPI_
SLEEP_PROC_SLEEP
#ifdef CONFIG_ACPI_
PROCFS
static
const
struct
file_operations
acpi_system_sleep_fops
=
{
.
open
=
acpi_system_sleep_open_fs
,
.
read
=
seq_read
,
...
...
@@ -471,7 +479,7 @@ static const struct file_operations acpi_system_sleep_fops = {
.
llseek
=
seq_lseek
,
.
release
=
single_release
,
};
#endif
/* CONFIG_ACPI_
SLEEP_PROC_SLEEP
*/
#endif
/* CONFIG_ACPI_
PROCFS
*/
#ifdef HAVE_ACPI_LEGACY_ALARM
static
const
struct
file_operations
acpi_system_alarm_fops
=
{
...
...
@@ -498,14 +506,14 @@ static int __init acpi_sleep_proc_init(void)
if
(
acpi_disabled
)
return
0
;
#ifdef CONFIG_ACPI_
SLEEP_PROC_SLEEP
#ifdef CONFIG_ACPI_
PROCFS
/* 'sleep' [R/W] */
entry
=
create_proc_entry
(
"sleep"
,
S_IFREG
|
S_IRUGO
|
S_IWUSR
,
acpi_root_dir
);
if
(
entry
)
entry
->
proc_fops
=
&
acpi_system_sleep_fops
;
#endif
#endif
/* CONFIG_ACPI_PROCFS */
#ifdef HAVE_ACPI_LEGACY_ALARM
/* 'alarm' [R/W] */
...
...
drivers/acpi/sleep/wakeup.c
浏览文件 @
1e1f3f24
...
...
@@ -17,7 +17,6 @@ ACPI_MODULE_NAME("wakeup_devices")
extern
struct
list_head
acpi_wakeup_device_list
;
extern
spinlock_t
acpi_device_lock
;
#ifdef CONFIG_ACPI_SLEEP
/**
* acpi_enable_wakeup_device_prep - prepare wakeup devices
* @sleep_state: ACPI state
...
...
@@ -180,7 +179,6 @@ static int __init acpi_wakeup_device_init(void)
}
late_initcall
(
acpi_wakeup_device_init
);
#endif
/*
* Disable all wakeup GPEs before entering requested sleep state.
...
...
include/acpi/acpi_drivers.h
浏览文件 @
1e1f3f24
...
...
@@ -142,10 +142,6 @@ static inline void unregister_hotplug_dock_device(acpi_handle handle)
/*--------------------------------------------------------------------------
Suspend/Resume
-------------------------------------------------------------------------- */
#ifdef CONFIG_ACPI_SLEEP
extern
int
acpi_sleep_init
(
void
);
#else
#define acpi_sleep_init() do {} while (0)
#endif
#endif
/*__ACPI_DRIVERS_H__*/
include/asm-i386/acpi.h
浏览文件 @
1e1f3f24
...
...
@@ -121,19 +121,6 @@ static inline void acpi_disable_pci(void)
}
extern
int
acpi_irq_balance_set
(
char
*
str
);
#else
/* !CONFIG_ACPI */
#define acpi_lapic 0
#define acpi_ioapic 0
static
inline
void
acpi_noirq_set
(
void
)
{
}
static
inline
void
acpi_disable_pci
(
void
)
{
}
static
inline
void
disable_acpi
(
void
)
{
}
#endif
/* !CONFIG_ACPI */
#ifdef CONFIG_ACPI_SLEEP
/* routines for saving/restoring kernel state */
extern
int
acpi_save_state_mem
(
void
);
extern
void
acpi_restore_state_mem
(
void
);
...
...
@@ -143,7 +130,15 @@ extern unsigned long acpi_wakeup_address;
/* early initialization routine */
extern
void
acpi_reserve_bootmem
(
void
);
#endif
/*CONFIG_ACPI_SLEEP*/
#else
/* !CONFIG_ACPI */
#define acpi_lapic 0
#define acpi_ioapic 0
static
inline
void
acpi_noirq_set
(
void
)
{
}
static
inline
void
acpi_disable_pci
(
void
)
{
}
static
inline
void
disable_acpi
(
void
)
{
}
#endif
/* !CONFIG_ACPI */
#define ARCH_HAS_POWER_INIT 1
...
...
include/asm-i386/suspend.h
浏览文件 @
1e1f3f24
...
...
@@ -21,7 +21,7 @@ struct saved_context {
unsigned
long
return_address
;
}
__attribute__
((
packed
));
#ifdef CONFIG_ACPI
_SLEEP
#ifdef CONFIG_ACPI
extern
unsigned
long
saved_eip
;
extern
unsigned
long
saved_esp
;
extern
unsigned
long
saved_ebp
;
...
...
include/asm-ia64/acpi.h
浏览文件 @
1e1f3f24
...
...
@@ -100,6 +100,11 @@ const char *acpi_get_sysname (void);
int
acpi_request_vector
(
u32
int_type
);
int
acpi_gsi_to_irq
(
u32
gsi
,
unsigned
int
*
irq
);
/* routines for saving/restoring kernel state */
extern
int
acpi_save_state_mem
(
void
);
extern
void
acpi_restore_state_mem
(
void
);
extern
unsigned
long
acpi_wakeup_address
;
/*
* Record the cpei override flag and current logical cpu. This is
* useful for CPU removal.
...
...
include/asm-x86_64/acpi.h
浏览文件 @
1e1f3f24
...
...
@@ -108,6 +108,15 @@ static inline void acpi_disable_pci(void)
}
extern
int
acpi_irq_balance_set
(
char
*
str
);
/* routines for saving/restoring kernel state */
extern
int
acpi_save_state_mem
(
void
);
extern
void
acpi_restore_state_mem
(
void
);
extern
unsigned
long
acpi_wakeup_address
;
/* early initialization routine */
extern
void
acpi_reserve_bootmem
(
void
);
#else
/* !CONFIG_ACPI */
#define acpi_lapic 0
...
...
@@ -121,19 +130,6 @@ extern int acpi_numa;
extern
int
acpi_scan_nodes
(
unsigned
long
start
,
unsigned
long
end
);
#define NR_NODE_MEMBLKS (MAX_NUMNODES*2)
#ifdef CONFIG_ACPI_SLEEP
/* routines for saving/restoring kernel state */
extern
int
acpi_save_state_mem
(
void
);
extern
void
acpi_restore_state_mem
(
void
);
extern
unsigned
long
acpi_wakeup_address
;
/* early initialization routine */
extern
void
acpi_reserve_bootmem
(
void
);
#endif
/*CONFIG_ACPI_SLEEP*/
extern
int
acpi_disabled
;
extern
int
acpi_pci_disabled
;
...
...
include/asm-x86_64/suspend.h
浏览文件 @
1e1f3f24
...
...
@@ -44,7 +44,6 @@ extern unsigned long saved_context_eflags;
extern
void
fix_processor_context
(
void
);
#ifdef CONFIG_ACPI_SLEEP
extern
unsigned
long
saved_rip
;
extern
unsigned
long
saved_rsp
;
extern
unsigned
long
saved_rbp
;
...
...
@@ -54,4 +53,3 @@ extern unsigned long saved_rdi;
/* routines for saving/restoring kernel state */
extern
int
acpi_save_state_mem
(
void
);
#endif
kernel/sysctl.c
浏览文件 @
1e1f3f24
...
...
@@ -689,7 +689,7 @@ static ctl_table kern_table[] = {
.
proc_handler
=
&
proc_dointvec
,
},
#endif
#if
def CONFIG_ACPI_SLEEP
#if
defined(CONFIG_ACPI) && defined(CONFIG_X86)
{
.
ctl_name
=
KERN_ACPI_VIDEO_FLAGS
,
.
procname
=
"acpi_video_flags"
,
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录