Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openeuler
Kernel
提交
74fc9cb2
K
Kernel
项目概览
openeuler
/
Kernel
接近 2 年 前同步成功
通知
8
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看板
提交
74fc9cb2
编写于
11月 22, 2013
作者:
R
Rafael J. Wysocki
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'acpica' into acpi-hotplug
The subsequent commits depend on the 'acpica' material.
上级
76540969
a3ccfcc1
变更
9
隐藏空白更改
内联
并排
Showing
9 changed file
with
79 addition
and
45 deletion
+79
-45
drivers/acpi/acpica/acresrc.h
drivers/acpi/acpica/acresrc.h
+3
-3
drivers/acpi/acpica/nsalloc.c
drivers/acpi/acpica/nsalloc.c
+14
-4
drivers/acpi/acpica/nsutils.c
drivers/acpi/acpica/nsutils.c
+10
-8
drivers/acpi/acpica/rscalc.c
drivers/acpi/acpica/rscalc.c
+7
-2
drivers/acpi/acpica/rscreate.c
drivers/acpi/acpica/rscreate.c
+17
-19
drivers/acpi/acpica/rsutils.c
drivers/acpi/acpica/rsutils.c
+1
-1
drivers/acpi/acpica/utdebug.c
drivers/acpi/acpica/utdebug.c
+24
-7
include/acpi/acconfig.h
include/acpi/acconfig.h
+2
-0
include/acpi/acpixf.h
include/acpi/acpixf.h
+1
-1
未找到文件。
drivers/acpi/acpica/acresrc.h
浏览文件 @
74fc9cb2
...
...
@@ -184,7 +184,7 @@ acpi_rs_create_resource_list(union acpi_operand_object *aml_buffer,
struct
acpi_buffer
*
output_buffer
);
acpi_status
acpi_rs_create_aml_resources
(
struct
acpi_
resource
*
linked_list_buffer
,
acpi_rs_create_aml_resources
(
struct
acpi_
buffer
*
resource_list
,
struct
acpi_buffer
*
output_buffer
);
acpi_status
...
...
@@ -227,8 +227,8 @@ acpi_rs_get_list_length(u8 * aml_buffer,
u32
aml_buffer_length
,
acpi_size
*
size_needed
);
acpi_status
acpi_rs_get_aml_length
(
struct
acpi_resource
*
linked_list_buffer
,
acpi_size
*
size_needed
);
acpi_rs_get_aml_length
(
struct
acpi_resource
*
resource_list
,
acpi_size
resource_list_size
,
acpi_size
*
size_needed
);
acpi_status
acpi_rs_get_pci_routing_table_length
(
union
acpi_operand_object
*
package_object
,
...
...
drivers/acpi/acpica/nsalloc.c
浏览文件 @
74fc9cb2
...
...
@@ -106,6 +106,7 @@ struct acpi_namespace_node *acpi_ns_create_node(u32 name)
void
acpi_ns_delete_node
(
struct
acpi_namespace_node
*
node
)
{
union
acpi_operand_object
*
obj_desc
;
union
acpi_operand_object
*
next_desc
;
ACPI_FUNCTION_NAME
(
ns_delete_node
);
...
...
@@ -114,12 +115,13 @@ void acpi_ns_delete_node(struct acpi_namespace_node *node)
acpi_ns_detach_object
(
node
);
/*
* Delete an attached data object if present (an object that was created
* and attached via acpi_attach_data). Note: After any normal object is
* detached above, the only possible remaining object is a data object.
* Delete an attached data object list if present (objects that were
* attached via acpi_attach_data). Note: After any normal object is
* detached above, the only possible remaining object(s) are data
* objects, in a linked list.
*/
obj_desc
=
node
->
object
;
if
(
obj_desc
&&
(
obj_desc
->
common
.
type
==
ACPI_TYPE_LOCAL_DATA
))
{
while
(
obj_desc
&&
(
obj_desc
->
common
.
type
==
ACPI_TYPE_LOCAL_DATA
))
{
/* Invoke the attached data deletion handler if present */
...
...
@@ -127,7 +129,15 @@ void acpi_ns_delete_node(struct acpi_namespace_node *node)
obj_desc
->
data
.
handler
(
node
,
obj_desc
->
data
.
pointer
);
}
next_desc
=
obj_desc
->
common
.
next_object
;
acpi_ut_remove_reference
(
obj_desc
);
obj_desc
=
next_desc
;
}
/* Special case for the statically allocated root node */
if
(
node
==
acpi_gbl_root_node
)
{
return
;
}
/* Now we can delete the node */
...
...
drivers/acpi/acpica/nsutils.c
浏览文件 @
74fc9cb2
...
...
@@ -593,24 +593,26 @@ struct acpi_namespace_node *acpi_ns_validate_handle(acpi_handle handle)
void
acpi_ns_terminate
(
void
)
{
union
acpi_operand_object
*
obj_desc
;
acpi_status
status
;
ACPI_FUNCTION_TRACE
(
ns_terminate
);
/*
* 1) Free the entire namespace -- all nodes and objects
*
* Delete all object descriptors attached to namepsace nodes
* Free the entire namespace -- all nodes and all objects
* attached to the nodes
*/
acpi_ns_delete_namespace_subtree
(
acpi_gbl_root_node
);
/* De
tach any objects attached to the root
*/
/* De
lete any objects attached to the root node
*/
obj_desc
=
acpi_ns_get_attached_object
(
acpi_gbl_root_node
);
if
(
obj_desc
)
{
acpi_ns_detach_object
(
acpi_gbl_root_node
)
;
status
=
acpi_ut_acquire_mutex
(
ACPI_MTX_NAMESPACE
);
if
(
ACPI_FAILURE
(
status
)
)
{
return_VOID
;
}
acpi_ns_delete_node
(
acpi_gbl_root_node
);
(
void
)
acpi_ut_release_mutex
(
ACPI_MTX_NAMESPACE
);
ACPI_DEBUG_PRINT
((
ACPI_DB_INFO
,
"Namespace freed
\n
"
));
return_VOID
;
}
...
...
drivers/acpi/acpica/rscalc.c
浏览文件 @
74fc9cb2
...
...
@@ -174,6 +174,7 @@ acpi_rs_stream_option_length(u32 resource_length,
* FUNCTION: acpi_rs_get_aml_length
*
* PARAMETERS: resource - Pointer to the resource linked list
* resource_list_size - Size of the resource linked list
* size_needed - Where the required size is returned
*
* RETURN: Status
...
...
@@ -185,16 +186,20 @@ acpi_rs_stream_option_length(u32 resource_length,
******************************************************************************/
acpi_status
acpi_rs_get_aml_length
(
struct
acpi_resource
*
resource
,
acpi_size
*
size_needed
)
acpi_rs_get_aml_length
(
struct
acpi_resource
*
resource
,
acpi_size
resource_list_size
,
acpi_size
*
size_needed
)
{
acpi_size
aml_size_needed
=
0
;
struct
acpi_resource
*
resource_end
;
acpi_rs_length
total_size
;
ACPI_FUNCTION_TRACE
(
rs_get_aml_length
);
/* Traverse entire list of internal resource descriptors */
while
(
resource
)
{
resource_end
=
ACPI_ADD_PTR
(
struct
acpi_resource
,
resource
,
resource_list_size
);
while
(
resource
<
resource_end
)
{
/* Validate the descriptor type */
...
...
drivers/acpi/acpica/rscreate.c
浏览文件 @
74fc9cb2
...
...
@@ -418,22 +418,21 @@ acpi_rs_create_pci_routing_table(union acpi_operand_object *package_object,
*
* FUNCTION: acpi_rs_create_aml_resources
*
* PARAMETERS:
linked_list_buffer - Pointer to the resource linked list
* output_buffer -
Pointer to the user's buffer
* PARAMETERS:
resource_list - Pointer to the resource list buffer
* output_buffer -
Where the AML buffer is returned
*
* RETURN: Status AE_OK if okay, else a valid acpi_status code.
* If the output_buffer is too small, the error will be
* AE_BUFFER_OVERFLOW and output_buffer->Length will point
* to the size buffer needed.
*
* DESCRIPTION: Takes the linked list of device resources and
* creates a bytestream to be used as input for the
* _SRS control method.
* DESCRIPTION: Converts a list of device resources to an AML bytestream
* to be used as input for the _SRS control method.
*
******************************************************************************/
acpi_status
acpi_rs_create_aml_resources
(
struct
acpi_
resource
*
linked_list_buffer
,
acpi_rs_create_aml_resources
(
struct
acpi_
buffer
*
resource_list
,
struct
acpi_buffer
*
output_buffer
)
{
acpi_status
status
;
...
...
@@ -441,16 +440,16 @@ acpi_rs_create_aml_resources(struct acpi_resource *linked_list_buffer,
ACPI_FUNCTION_TRACE
(
rs_create_aml_resources
);
ACPI_DEBUG_PRINT
((
ACPI_DB_INFO
,
"LinkedListBuffer = %p
\n
"
,
linked_list_buffer
));
/* Params already validated, no need to re-validate here */
/*
* Params already validated, so we don't re-validate here
*
* Pass the linked_list_buffer into a module that calculates
* the buffer size needed for the byte stream.
*/
status
=
acpi_rs_get_aml_length
(
linked_list_buffer
,
&
aml_size_needed
);
ACPI_DEBUG_PRINT
((
ACPI_DB_INFO
,
"ResourceList Buffer = %p
\n
"
,
resource_list
->
pointer
));
/* Get the buffer size needed for the AML byte stream */
status
=
acpi_rs_get_aml_length
(
resource_list
->
pointer
,
resource_list
->
length
,
&
aml_size_needed
);
ACPI_DEBUG_PRINT
((
ACPI_DB_INFO
,
"AmlSizeNeeded=%X, %s
\n
"
,
(
u32
)
aml_size_needed
,
acpi_format_exception
(
status
)));
...
...
@@ -467,10 +466,9 @@ acpi_rs_create_aml_resources(struct acpi_resource *linked_list_buffer,
/* Do the conversion */
status
=
acpi_rs_convert_resources_to_aml
(
linked_list_buffer
,
aml_size_needed
,
output_buffer
->
pointer
);
status
=
acpi_rs_convert_resources_to_aml
(
resource_list
->
pointer
,
aml_size_needed
,
output_buffer
->
pointer
);
if
(
ACPI_FAILURE
(
status
))
{
return_ACPI_STATUS
(
status
);
}
...
...
drivers/acpi/acpica/rsutils.c
浏览文件 @
74fc9cb2
...
...
@@ -753,7 +753,7 @@ acpi_rs_set_srs_method_data(struct acpi_namespace_node *node,
* Convert the linked list into a byte stream
*/
buffer
.
length
=
ACPI_ALLOCATE_LOCAL_BUFFER
;
status
=
acpi_rs_create_aml_resources
(
in_buffer
->
pointer
,
&
buffer
);
status
=
acpi_rs_create_aml_resources
(
in_buffer
,
&
buffer
);
if
(
ACPI_FAILURE
(
status
))
{
goto
cleanup
;
}
...
...
drivers/acpi/acpica/utdebug.c
浏览文件 @
74fc9cb2
...
...
@@ -185,6 +185,7 @@ acpi_debug_print(u32 requested_debug_level,
}
acpi_gbl_prev_thread_id
=
thread_id
;
acpi_gbl_nesting_level
=
0
;
}
/*
...
...
@@ -193,13 +194,21 @@ acpi_debug_print(u32 requested_debug_level,
*/
acpi_os_printf
(
"%9s-%04ld "
,
module_name
,
line_number
);
#ifdef ACPI_EXEC_APP
/*
* For acpi_exec only, emit the thread ID and nesting level.
* Note: nesting level is really only useful during a single-thread
* execution. Otherwise, multiple threads will keep resetting the
* level.
*/
if
(
ACPI_LV_THREADS
&
acpi_dbg_level
)
{
acpi_os_printf
(
"[%u] "
,
(
u32
)
thread_id
);
}
acpi_os_printf
(
"[%02ld] %-22.22s: "
,
acpi_gbl_nesting_level
,
acpi_ut_trim_function_name
(
function_name
));
acpi_os_printf
(
"[%02ld] "
,
acpi_gbl_nesting_level
);
#endif
acpi_os_printf
(
"%-22.22s: "
,
acpi_ut_trim_function_name
(
function_name
));
va_start
(
args
,
format
);
acpi_os_vprintf
(
format
,
args
);
...
...
@@ -420,7 +429,9 @@ acpi_ut_exit(u32 line_number,
component_id
,
"%s
\n
"
,
acpi_gbl_fn_exit_str
);
}
acpi_gbl_nesting_level
--
;
if
(
acpi_gbl_nesting_level
)
{
acpi_gbl_nesting_level
--
;
}
}
ACPI_EXPORT_SYMBOL
(
acpi_ut_exit
)
...
...
@@ -467,7 +478,9 @@ acpi_ut_status_exit(u32 line_number,
}
}
acpi_gbl_nesting_level
--
;
if
(
acpi_gbl_nesting_level
)
{
acpi_gbl_nesting_level
--
;
}
}
ACPI_EXPORT_SYMBOL
(
acpi_ut_status_exit
)
...
...
@@ -504,7 +517,9 @@ acpi_ut_value_exit(u32 line_number,
ACPI_FORMAT_UINT64
(
value
));
}
acpi_gbl_nesting_level
--
;
if
(
acpi_gbl_nesting_level
)
{
acpi_gbl_nesting_level
--
;
}
}
ACPI_EXPORT_SYMBOL
(
acpi_ut_value_exit
)
...
...
@@ -540,7 +555,9 @@ acpi_ut_ptr_exit(u32 line_number,
ptr
);
}
acpi_gbl_nesting_level
--
;
if
(
acpi_gbl_nesting_level
)
{
acpi_gbl_nesting_level
--
;
}
}
#endif
include/acpi/acconfig.h
浏览文件 @
74fc9cb2
...
...
@@ -83,7 +83,9 @@
* Should the subsystem abort the loading of an ACPI table if the
* table checksum is incorrect?
*/
#ifndef ACPI_CHECKSUM_ABORT
#define ACPI_CHECKSUM_ABORT FALSE
#endif
/*
* Generate a version of ACPICA that only supports "reduced hardware"
...
...
include/acpi/acpixf.h
浏览文件 @
74fc9cb2
...
...
@@ -46,7 +46,7 @@
/* Current ACPICA subsystem version in YYYYMMDD format */
#define ACPI_CA_VERSION 0x2013
0927
#define ACPI_CA_VERSION 0x2013
1115
#include <acpi/acconfig.h>
#include <acpi/actypes.h>
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录