Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
linux
Commits
74fc9cb2
Commit
74fc9cb2
authored
Nov 22, 2013
by
Rafael J. Wysocki
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'acpica' into acpi-hotplug
The subsequent commits depend on the 'acpica' material.
parents
76540969
a3ccfcc1
Changes
9
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
79 additions
and
45 deletions
+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
No files found.
drivers/acpi/acpica/acresrc.h
View file @
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
View file @
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
View file @
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
View file @
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
View file @
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
View file @
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
View file @
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
View file @
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
View file @
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>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment